安全なコンピューティング環境でのLinuxオペレーティングシステム

安全なコンピューティング環境でのLinuxオペレーティングシステム

1.識別

a)ログインするユーザーを識別して認証する必要があります。識別は一意であり、識別情報には複雑さの要件があり、定期的に置き換えられます。

「1)システムユーザーがパスワードを設定したかどうかをシステム管理者にインタビューし、システムアカウントがログインプロセス中にログインを確認するためにパスワードを使用したかどうかを確認します
。2)許可されたアカウントとしてオペレーティングシステムにログインした後、コマンドを使用します。 more / etc / shadowファイルを表示するには、システムに空のパスワードアカウントがあるかどうかを確認します
。3)コマンドmoreを使用して/ etc
/login。defsファイルを表示し、パスワードの長さと定期的な置換要件が設定されているかどうかを確認します。#more /etc/login.defs
コマンドmoreを使用して、/ etc / pam.d / system-authファイルを表示します。パスワードの長さと複雑さの要件を
確認します。4)バイパスまたはID認証手段によってバイパスできるセキュリティリスクがあるかどうかを確認します。「」

"1)ログインにはパスワードが必要です
2)空のパスワードアカウントはありません
3)次のように同様のフィードバック情報が取得されます:
PASS MAX_DAYS 90#ログインパスワードは90日間有効です
PASS MIN_DAYS 0#ログインパスワードの最小変更時間は次のとおりです。違法ユーザーが短期間にさらに変更するのを防ぐために増加
TimesPASS MIN_LEN 7#ログインパスワードの最小長は7桁です
PASS WARN_AGE 7#ログインパスワードは7日前に期限切れになり、変更を促します
4)セキュリティリスクのバイパスはありません「」

b)ログイン失敗処理機能を使用して、セッションの終了、不正ログインの数の制限、ログイン接続のタイムアウト時に自動的にログアウトするなどの関連対策を構成して有効にする必要があります

「1)システムが構成され、ログイン失敗処理機能が有効になっている
。2)Linuxにrootとしてログインし、ファイルの内容を表示する:
cat /ete/pam.d/system -authまたは、状況に応じて共通ファイルLinuxバージョン
3)/ etcを表示/ profileのTIMEOUT環境変数、タイムアウトロックパラメータを設定するかどうか
"

"次のように同様のフィードバック情報が取得されます:
1)および2)/etc/pam.d/system-authファイルに存在するログイン失敗処理機能の関連パラメーターを確認します" "アカウントが必要です/ lib / security / pam_tally.so deny = 3
no_ magic root reset "";
3)ファイル/ etc / profileに設定されたタイムアウトロックパラメータを記録し、プロファイルにTMOUT = 300s "を設定します。

c)遠隔管理を行う場合は、ネットワーク送信時に認証情報が傍受されないように必要な対策を講じる必要があります。

「リモート管理のためにシステム管理者にインタビューします
。1)rootとしてLinuxにログインして、sshdサービスが実行されているかどうかを確認します。service-status-all| grep sshdを
使用して、関連するポートが開いているかどうか確認します。開いて
いない場合は、netstat -an | grep 22リモート管理にSSHを使用し、リモート管理
サービスにTelnetが使用されているかどうかを確認します--status-all | grep running、Telnetサービスがあるかどうかを確認します
2)wiresharkなどのパケットキャプチャツールを使用して、プロトコルが暗号化されているかどうかを確認できます
3)ローカル管理、N / A」

「1)リモート管理にSSHを使用して、送信中に認証情報が盗聴されないようにします。Telnetはデフォルトに準拠していません
。2)パケットキャプチャツールを介して、傍受された情報は暗号文であり、読み取ることができません。プロトコルは次のとおりです。暗号化された
3)N / Aローカル管理」

d)パスワード、暗号化技術、バイオテクノロジーなどの認証技術の2つ以上の組み合わせを使用してユーザーを認証する必要があり、認証技術の1つは少なくとも暗号化技術を使用して達成する必要があります

システム管理者がオペレーティングシステムにログインするときに使用するID認証方法、パスワードティーチング証明書Ukey、トークン、指紋などの認証テクノロジの2つ以上の組み合わせが使用されているかどうか、および使用されているかどうかを確認します。 1つの認証方法は、認証プロセスで暗号化技術を使用します

パスワードに加えて、別の認証メカニズムが採用されています。このメカニズムは、暗号化マシンの呼び出しやSM1-SM4などのアルゴリズムの採用などの暗号化技術を使用します。

2.アクセス制御

a)アカウントと権限はログインしたユーザーに割り当てる必要があります;

「対応する権限でLinuxにログインし、「1s-1ファイル名」コマンドを使用して、次のような重要なファイルとディレクトリの権限設定が適切かどうかを確認します。#1s -1 / etc / passwd#744。

「次のファイルとディレクトリのアクセス許可が正しく設定されているかどうかの確認に重点を置いてください。-
rw-------(600)所有者のみが読み取りと書き込みのアクセス許可を持っています。
-rw-r--r-(644)所有者のみが読み取りおよび書き込み権限を持っています;そしてグループユーザーおよび他のユーザーは読み取り権限のみを持っています。
-rwx------(700)所有者のみが読み取り、書き込み、および実行権限を持っています。
-rwxr-xr-x( 755)所有者には読み取り、書き込み、および実行のアクセス許可があります。グループユーザーおよびその他のユーザーには読み取りおよび実行のアクセス許可のみがあります。
-rwx–x--x(711)所有者には読み取り、書き込み、および実行のアクセス許可があります。グループユーザーおよびその他のユーザーユーザーには実行権限のみがあります。
-rw-rw-rw-(666)すべてのユーザーにはファイルの読み取りおよび書き込み権限があります。
-rwxrwxrwx(777)すべてのユーザーには読み取り、書き込み、および実行権限があります。

Linuxの詳細なアクセス許可:https://blog.csdn.net/qq_39131177/article/details/85060694
構成ファイルのアクセス許可の値は644を超えることはできず、実行可能ファイルの場合は755を超えることはできません。 "

b)デフォルトのアカウントの名前を変更または削除し、デフォルトのアカウントのデフォルトのパスワードを変更する必要があります

"1)対応する権限でLinuxにログインし、moreを使用して/ etc / shadowファイルを表示し、ファイル内のユーザーをチェックして、adm、lp。sync、shutdown、halt。、mail、uucp、operatorがあるかどうかを確認します。 、、ゲーム。、Gopher ftpおよびその他のデフォルトで役に立たないユーザー
。2)ルートアカウントがリモートでログインできるかどうかを確認します。

"1)デフォルトの役に立たないアカウントはありません
。2)/ etc / ssh / sshd_configファイルの" PermitRootLogin "パラメーターを表示し、パラメーターを" no "、つまりPermitRootLogin no、つまりrootremoteに設定するにはmoreを使用します。ログインは許可されていません。

c)共有アカウントの存在を回避するために、冗長で期限切れのアカウントを時間内に削除または無効にします。

"1)冗長または期限切れのアカウントがあるかどうかを確認します。たとえば、ゲーム、ニュース、ftp、1pなどのシステムのデフォルトアカウントが無効になっていないか、特権アカウントが停止およびシャットダウンされていないかを確認します
。2)ネットワーク管理者にインタビューします、セキュリティ管理者など。システム管理者のさまざまなユーザーがさまざまなアカウントを使用してシステムにログインしますか?」

"1)ゲーム、ニュース、ftp、1p、停止、シャットダウンなど、不要なシステムのデフォルトアカウントを無効にするか削除します
。2)すべてのタイプの管理者は、割り当てられた特定の権限を使用してログインし、冗長なアカウントや期限切れのアカウントはありません。
"
d)管理ユーザーの権限の分離を実現するために、管理ユーザーに必要な最小限の権限を付与する必要があります。

"1)対応する権限でLinuxにログインし、moreを使用して/ etc / passwdファイルでデフォルト以外のユーザーを表示し、管理ユーザーの権限の分離を実現するかどうか、各アカウントの権限を要求します
2 )対応する権限Linuxでログインし、moreを使用して/etc/sudo.confファイルを表示し、ルートレベルのユーザーに付与されているアカウントを確認します。」


1)各ユーザーには最小限の権限があり、他のユーザーの権限と重複しません。デバイスは、新しいマルチユーザーロールを作成する機能をサポートできます
。2)管理者権限はrootユーザーにのみ割り当てられます。」

e)許可されたサブジェクトは、アクセス制御戦略を構成する必要があり、アクセス制御戦略は、オブジェクトへのサブジェクトのアクセスルールを規定します。

「1)システム管理者に、オペレーティングシステムのアクセス制御権限を設定する権限のある人を指定するかどうかを
確認します。2)アカウント権限の設定を確認し、セキュリティポリシーに従って各アカウントのアクセスルールを設定するかどうかを確認します。」

「1)専任のセキュリティ担当者がアクセス制御権限の承認に責任を負います
。2)各アカウントの権限構成は、アクセス制御のためのセキュリティ担当者のセキュリティポリシー構成に基づいています。」

f)アクセス制御の粒度は、サブジェクトとしてユーザーレベルまたはプロセスレベルに到達し、オブジェクトとしてファイルおよびデータベーステーブルレベルに到達する必要があります。

「ls-1file name」コマンドを使用して、重要なファイルとディレクトリのアクセス許可が適切かどうかを確認します。たとえば、次のようになります。#ls -1 / etc / passwd#744、次のファイルのアクセス許可とディレクトリが変更されました

管理ユーザーは、セットアップするユーザーアクセス権限を割り当て、アクセス制御戦略に従ってさまざまなファイルおよびデータベーステーブルレベルにアクセスします。重要なファイルとディレクトリのアクセス許可は妥当な範囲内にあり、ユーザーはファイルに対するさまざまなアクセス許可に従って操作できます

g)重要なサブジェクトとオブジェクトにセキュリティマークを設定し、セキュリティマークを使用して情報リソースへのサブジェクトのアクセスを制御します。

「1)システムに機密情報があるかどうかを明確にする
2)対象ユーザーまたはプロセスのレベルを分割して機密マークを設定し、オブジェクトファイルに機密マークを設定する
3)対象のオブジェクトへの強制アクセス制御かどうかをテストするサブジェクトとオブジェクトのセキュリティマークに基づいて制御されます戦略
4)対応するアクセス許可でLinuxにログインし、さらに使用して/ etc / selinux / configファイルのSELINUXパラメーター設定を表示します。

「SELinuxのサービスオフLinuxサーバのターンは、デフォルトまたはシステムの強化や再開発し、強化するオペレーティングシステムのカーネルを、実際にシステムのビジュアルインタフェースを表示するために、サードパーティのホストを採用。。
SELinuxは、すなわち、3の動作モードがあります:
強制:必須モード。SELinuxルールへの違反はブロックされ、ログに記録され、SELinuxが使用されていることを示します。permissive
:許容モード。SELinuxルールに違反する動作は、通常はデバッグ目的でのみログに記録され、 SELinuxの使用が無効になっています:SELinuxをオフにし、SELinuxを使用してください」

3.セキュリティ監査

a)セキュリティ監査機能を有効にする必要があります。監査はすべてのユーザーを対象とし、重要なユーザーの行動と重要なセキュリティイベントが監査されます。

"1)rootとしてLinuxにログインし、サービスプロセスを確認します
。2)セキュリティ監査サービスが実行されている場合は、セキュリティ監査デーモンが正常かどうかを確認します
。#ps -ef | grep auditd
3)システムセキュリティ監査機能が有効になっていない場合、サードパーティのセキュリティ監査ツールを導入するかどうかを確認します
4)ルートビューセキュリティイベント構成としてLinuxにログインします:#gerep "@ PRIV-OPS" "/etc/audit/filter.conf
...
More / etc / audit / audit.rules
...」

"1)監査プロセスの内容は次のとおり
です。
[root @ localhost april] #service auditd status auditd(pid 1656)is running ... [root @ localhost april] #service rsyslog statusr syslogd(pid 1681)is running ...
[root @ localhost april]#
2)Linuxサーバー
デフォルトでデーモンを有効にします。3)Audit.rulesはファイルと低レベルの呼び出しの関連レコードを記録し、記録されたセキュリティイベントはより包括的です。」

b)監査記録には、イベントの日時、ユーザー、イベントタイプ、イベントが成功したかどうか、およびその他の監査関連情報を含める必要があります。

適切な権限でLinuxにログインし、コマンド「ausearch-tstoday」を使用します。-tsは指定された時間の後にログを記録します。またはコマンド「tail-20 / var / log / audit / audit.log」を使用して監査ログを表示します。

監査記録には、日付、時刻、タイプ、対象の識別、オブジェクトの識別、およびイベントの結果を含める必要があります

c)予期しない削除、変更、または上書きを回避するために、監査レコードを定期的に保護およびバックアップする必要があります。

「監査レコードの保存、バックアップ、保護対策、オペレーティングシステムのログをログサーバーに定期的に送信するかどうか、sylogまたはsmpを使用してログをログサーバーに送信するかどうかをインタビューします。
ログサーバーが展開されている場合は、ログサーバーにログインします。オペレーティングシステムのログが収集の範囲内にあるかどうかを表示するには
"

オペレーティングシステムのログは定期的にバックアップされ、ローカルストレージのログは定期的にログサーバーに転送されます。

d)不正な中断を防ぐために、監査プロセスを保護する必要があります。

「1)監査プロセスを監視および保護するための面接措置
。2)非セキュリティ監査人の使用をテストして監査プロセスを中断し、監査プロセスのアクセス権が適切に設定されている
かどうかを確認します。3)3番目の監査人がいるかどうかを確認します。-テスト対象のオペレーティングシステムを監査するパーティシステム。監視および保護するには」

「監査プロセスを非監査人が変更することはできません。
監査ログをリアルタイムで記録できるサードパーティの監査ツールが導入されており、管理者はログを削除できません。」

4.侵入防止

a)最小限のインストールの原則に従い、必要なコンポーネントとアプリケーションのみをインストールする必要があります。

「1)システムのインストール時に最小インストール原則に従っているかどうかをインタビューし、インストールマニュアルを確認します
。2)「yumlistinstalled」コマンドを使用して、オペレーティングシステムにインストールされているパッケージを表示し、現在不要なものがないかどうかを確認します。コンポーネントとアプリケーション」

「1)システムのインストールは最小限のインストールの原則に従います
2)ビジネスに必要のないコンポーネントやアプリケーションはありません」

b)不要なシステムサービス、デフォルトの共有、およびリスクの高いポートを閉じる必要があります。

"1)対応する権限でL.inuxにログインし、コマンド" "service-status-all | grep running" "を使用して、危険なネットワークサービスが閉じられているかどうかを確認します
。2)対応する権限でL.inuxにログインします。権限、コマンド「netstat -ntlp」を使用して、開いているすべてのポートがビジネスに必要かどうか、および必須ではないポートが閉じられているかどうかを確認します。L.inuxとの共有の問題はありません。

「1)システム内の冗長サービス、危険なサービス、およびプロセスを
オフにします。2)冗長ポートをオフにします。」

c)ネットワークを介して管理される管理端末は、端末アクセスモードまたはネットワークアドレス範囲を設定することによって制限する必要があります。

「/etc/hosts.denyに「ALL:ALL」があるかどうかを確認し、すべてのリクエストを禁止します。/etc/hosts.allowで、次の構成があるかどうか(たとえば):
sshd:192.168.1.10/255。 255 .255 .0
2)ファイアウォールを使用してアクセス端末に制限を設定するかどうか」

"1)moreを使用して、/ etc / hosts.allowに次の構成があるかどうかを確認します。たとえば、IPとそのアクセス方法を制限します。ssbd; 192. 168. 1.10 / 255.255 255.0
2)端末アクセス方法、ネットワークアドレス範囲条件などの制限。RADUS、要塞ホスト、セキュリティシティ、ファイアウォールなどの運用および保守方法を通じて、端末のエントリ方法の制限が実装されます。」

d)マンマシンインターフェースまたは通信インターフェースを介して入力されたコンテンツがシステム設定要件を満たしていることを確認するために、データ妥当性チェック機能を提供する必要があります。
この項目は適切ではなく、この項目は通常、アプリケーションシステムに実装されます。

e)考えられる既知の脆弱性を見つけ、十分なテストと評価を行った後、タイムリーに脆弱性を修復できる必要があります。

「1)自己検査の穴スキャンレポートまたはサードパーティの検査脆弱性レポートをチェックして、リスクの高い脆弱性があるかどうかを確認します
。2)システムに脆弱性テスト環境があり、パッチ更新のメカニズムとプロセスは何ですか
。3 )パッチ更新メカニズムのインタビュー、パッチのインストールステータスの確認:#rpm -qa grep patch "

「1脆弱性スキャンを定期的に実施し、セキュリティリスクを発見し、タイムリーに修復する運用保守チームがあります
。2)3)パッチが最新の時刻に更新され、パッチが制御および管理されます。」

f)重要なノードの侵入を検出し、重大な侵入イベントが発生したときにアラームを提供できる必要があります。

「1)「#more / var / log / secure | grep refused」コマンドを含む、侵入の重要な手がかりをチェックするための次のコマンド(Telnet.FTPの試行など)などの侵入検知手段をインタビューおよび表示します
。2)有効になっているか確認してくださいホストファイアウォールやTCPSYN保護メカニズムなどを設定してください
。3)ホスト侵入検知ソフトウェアがインストールされているかどうかをシステム管理者に問い合わせてください。インストールされているホストの侵入を確認し、システムの構成を確認し、アラーム機能があるかどうかを確認します。実行可能コマンド:find / -namie -print EnterasysNetworksのDragonSquire、SymantecのITAなどのホスト侵入検知ソフトウェアがインストールされているかどうかを確認します。PsionicSoftwareのHostsentry。PsiomcSoftwareのLogcheck。ISSのRealSecure-agent
4)ネットワークの表示トポロジ図、IDSなどのネットワーク侵入検知システムがネットワークに展開されているかどうかを確認します

"1)侵入のすべての重要なパスが拒否されます
2)ホストファイアウォール関連の設定を有効にします
3)ホストベースのIDS機器をインストールします
4)ホストIDS機器がホストに展開されていない場合は、ネットワーク上のIDSまたはIPSのどちらであるかを確認できますリンク。侵入が発生した場合は、警報対策などを記録してください。」

5.悪意のあるコードの防止

a)侵入やウイルスの動作をタイムリーに特定し、それらを効果的にブロックするために、悪意のあるコード攻撃またはアクティブな免疫信頼性検証メカニズムに対する技術的対策を採用する必要があります。

「1)オペレーティングシステムにインストールされているアンチウイルスソフトウェアを確認し、ウイルスデータベースが頻繁に更新されるかどうかを管理者にインタビューし、ウイルスデータベースの最新バージョンを確認し、更新日が1週間を超え
ているかどうかを確認します。2)動作しているかどうかを確認します。システムは信頼できる検証メカニズムを実装し、システムプログラム、アプリケーション、および重要な構成ファイル/パラメータを信頼できる実行についてテストできます。」

「1)ウイルス対策ソフトウェアのネットワークバージョンが展開され、ウイルスデータベースが最新であり、マルウェア対策コードの統合管理がサポートされています
。2)アクティブな免疫信頼性検証メカニズムが展開されています。時間内に病気の責任の侵入をブロックします。」

6.信頼できる検証

a)信頼のルートに基づいて、コンピューティングデバイスのシステムブートプログラム、システムプログラム、重要な構成パラメーター、およびアプリケーションプログラムを信頼して検証でき、アプリケーションのキー実行リンクで動的な信頼できる検証を実行できます。レポートセキュリティが破損した後、警察に送信し、検証結果の監査記録を作成してセキュリティ管理センターに送信します。

"
1)サーバーの起動をチェックし、信頼できる検証検出プロセスを実現しているかどうかを確認し、検証に信頼できるシステムブートプログラム、システムプログラム、または重要な構成パラメーターを確認します
。2)重要なシステムプログラムの1つとアプリケーションプログラムの1つを変更します。検知・警報
3)検証結果を監査記録にまとめて安全管理センターに送信するか」

「L)サーバーには信頼ルートチップまたはハードウェアがあります
。2)起動プロセスは信頼ルートに基づいており、システムブートプログラム、システムプログラム、重要な構成パラメーター、主要なアプリケーションなどで信頼できる検証メトリックを実行します。 。
その信憑性を破壊した後に影響を受けていることが検出された場合3)、アラームが発行され、検証結果は、監査レコードに形成されており、セキュリティ管理センターに送信される
4)セキュリティ管理センター検証結果レコードを受信することができます。機器の」

7.データの整合性

a)検証技術または暗号化技術を使用して、認証データ、重要なビジネスデータ、重要な監査データ、重要な構成データ、重要なビデオデータ、重要な個人情報などを含むがこれらに限定されない、送信中の重要なデータの整合性を確保する必要があります。 ;

b)検証テクノロジーまたは暗号化テクノロジーを使用して、認証データ、重要なビジネスデータ、重要な監査データ、重要な構成データ、重要なビデオデータ、重要な個人情報など、ストレージプロセス内の重要なデータの整合性を確保する必要があります。等。;

8.データの機密性

a)暗号化技術を使用して、認証データ、重要なビジネスデータ、重要な個人情報などを含むがこれらに限定されない、送信中の重要なデータの機密性を確保する必要があります。

b)暗号化技術を使用して、認証データ、重要なビジネスデータ、重要な個人情報などを含むがこれらに限定されない、ストレージプロセス内の重要なデータの機密性を確保する必要があります。

9.データのバックアップとリカバリ

a)重要なデータのローカルデータのバックアップおよびリカバリ機能を提供する必要があります。

b)リモートリアルタイムバックアップ機能を提供し、通信ネットワークを使用して重要なデータをバックアップサイトにリアルタイムでバックアップする必要があります。

c)システムの高可用性を確保するために、重要なデータ処理システムの熱的冗長性を提供する必要があります。

「1)どの重要なデータ処理システムが重要なデータ処理システムであるか、重要なデータ処理システムにバックアップメカニズムがあるかどうか、ローカルホットバックアップサイトバックアップまたはリモートアクティビティの相互支援バックアップを使用するかどうかについて、システム管理者にインタビューします
。2)機器のリストを確認します。重要なデータ処理システムがホットスタンバイサーバーを使用しているかどうか」

「1)ユーザーデータや認証データなどの重要なデータを定期的にバックアップし、テープでローカルエリアにバックアップします
。2)重要な機器については、ホットバックアップ、クラスタリング、ロードなどの高可用性方式を採用します。バランスをとる。」

10.残りの情報保護

a)解放または再割り当てする前に、認証情報が配置されているストレージスペースが完全にクリアされていることを確認する必要があります。

b)機密データを含むストレージスペースは、解放または再割り当てされる前に完全にクリアされていることを確認する必要があります。

11.個人情報の保護

a)ビジネスに必要なユーザーの個人情報のみを収集して保存する必要があります。
これは適切ではなく、この要件は通常、アプリケーションシステムでチェックされます。
b)ユーザーの個人情報への不正アクセスや違法な使用は禁止されるべきであり
、これは適切ではなく、この要件は通常、アプリケーションシステムでチェックされます。

おすすめ

転載: blog.csdn.net/weixin_45380284/article/details/113889199