OS Security Checker

Windows / Linux(CentOS, Ubuntu)のオペレーティングシステムのセキュリティ設定を点検するサービスです。セキュリティに必ず必要な項目を中心に選別して点検を行います。

点検可能なオペレーティングシステム

  • Linux (64 bit)

    • CentOS 6.3
    • CentOS 6.6
    • CentOS 7.2
    • CentOS 7.3
    • Ubuntu 16.04
    • Ubuntu 18.04
  • Windows (64 bit)

    • Windows Server 2012 R2
    • Windows Server 2016

OSのセキュリティ点検項目

Linuxの点検項目

点検項目 点検項目の説明
rootアカウントへのリモートアクセスの制限 rootアカウントはシステムを管理する非常に重要なアカウントです。直接ログインできるように許可すると、不法な侵入者のターゲットになる可能性があります。rootアカウントを窃取しようとするブルートフォースアタックが頻繁に発生しています。rootアカウントのリモートアクセスを制限し、ユーザーが作成した別途のユーザーアカウントでログインした後、suコマンドを利用してrootアカウントに変更して作業したほうが安全です。
/etc/shadowファイルの中でパスワードのないアカウント パスワードを暗号化せずに平文で保存すると、情報漏洩の際に大きな被害につながります。"/etc/shadow"ファイルに暗号化されたパスワードが保存されるようにし、管理者権限を持ったユーザーのみ読めるように制限しなければなりません。
rootを除くUID 0のアカウントの削除 UID(User Identification)の値が0であるアカウントはrootと権限が同一であり、システムへのアクセスが可能です。従って、root以外はUIDの値が0であるアカウントが存在しないように確認して措置しなければなりません。
パスワードの最小の長さの設定 アカウントのパスワードが短く設定されていると、ブルートフォースアタック(Brute Force Attack)やパスワード類推攻撃(Password Guessing)に脆弱です。ユーザーがアカウントのパスワードを8文字以上に設定するように誘導するため、パスワードの最小の長さのポリシーを8文字以上に設定しなければなりません。
パスワードの最長の使用期間の設定 ユーザーのパスワードは頻繁に変更したほうがいいです。同じパスワードを長く使うと、以前発生した外部の侵入で漏洩したパスワードにより継続的な攻撃に漏出されます。ユーザーがパスワードを周期的に変更できるようにポリシーで誘導するのが望ましいです。
管理者グループに最小限のアカウントを含める システムを管理するrootアカウントが属するグループはシステム運用ファイルに対するアクセス権限が与えられているので、最小限のアカウントのみ登録されていなければなりません。管理者グループに一般のユーザーが登録されていると、管理者権限でシステムにアクセスできます。許可されていないユーザーによるファイルの修正および変更などの悪意のある作業により、システムの運用に被害が発生する可能性があります。そのため、管理者グループに対する管理が必要です。
同一のUIDを使うアカウント使用の禁止 UNIXシステムはすべてのユーザーのアカウントにUIDを与え、該当のUIDでユーザーの名前、パスワード、ホームディレクトリなどのユーザー情報を確認します。重複したUIDが存在する場合、システムで同じユーザーだと認識して問題が発生する可能性があります。また、攻撃者により個人情報および関連データーが漏洩した際も監査、追跡が難しくなります。同一のUIDを使うアカウントがないように管理しなければなりません。
ログインが要らなにアカウントのshell権限の点検 一般的にnobodyのようなアカウントはログインシェル(Shell)が必要ではありません。ログインが要らないアカウントを利用してシステムにアクセスし、ユーザーのコマンドを解釈して悪用する可能性があるので、/bin/falseシェルを与えてログインを制限しなければなりません。
Session Timeout設定 アカウントがアクセス状態で放置された場合、権限のないユーザーに重要なシステムが公開され、悪用される可能性があります。一定時間イベントが発生しなかった場合は接続を強制終了させるSession Timeout設定が必要です。
UMASK設定管理 システム内でユーザーが新しく作成するファイルへのアクセス権限はUMASKの値によって定められます。UMASKの値が適切でない場合、間違った権限のファイルが作成される可能性があります。UMASKの値は'027'または'022'をお勧めします。
ホームディレクトリ権限の設定 ユーザーのホームディレクトリに含まれた設定ファイルが許可されていない者によって改ざんされると、正常なユーザーへのサービスが制限されます。該当のホームディレクトリの所有者以外の一般ユーザーが該当のホームディレクトリを修正できないように制限しなければなりません。
Anonymous FTPを無効にする Anonymous FTP(匿名FTP)を使う場合、悪意を持ったユーザーがシステムに関する情報を窃取する可能性があります。特に、ディレクトリに書き込みの権限が設定されている場合はlocal exploitを使って様々な攻撃ができるようになります。従って、必ず許可されたユーザーのみアクセスできるように設定し、権限のないユーザーのFTPの使用を制限しなければなりません。
重要なファイルのパーミッション644 : /etc/passwd 重要なシステムファイルに対してはroot権限のみで読み書きできるようにし、他の権限には読み取りのみ許可されなければなりません。
重要なファイルのパーミッション400 : /etc/shadow, /etc/gshadow 一部の重要なシステムファイルに対してはroot権限で読み取りのみできるように設定されなければなりません。該当のファイルを任意に変更すると、システムの運用において大きな問題が発生する可能性があるので、書き込みの権限を制限しなければなりません。
重要なファイルのパーミッション644 : /etc/hosts 重要なシステムファイルに対してはroot権限のみで読み書きできるようにし、他の権限には読み取りのみ許可されなければなりません。
重要なファイルのパーミッション644 : /etc/(x)inetd.conf 重要なシステムファイルに対してはroot権限のみで読み書きできるようにし、他の権限には読み取りのみ許可されなければなりません。
重要なファイルのパーミッション644 : /etc/syslog.conf 重要なシステムファイルに対してはroot権限のみで読み書きできるようにし、他の権限には読み取りのみ許可されなければなりません。
重要なファイルのパーミッション644 : /etc/services 重要なシステムファイルに対してはroot権限のみで読み書きできるようにし、他の権限には読み取りのみ許可されなければなりません。
重要なファイルのパーミッション600 : /etc/hosts.lpd 一部の重要なシステムファイルに対してはroot権限のみで読み書きできるように設定されなければなりません。
cronファイルの所有者および権限の設定644 : /etc/cron.allow, /etc/cron.deny 重要なシステムファイルに対してはroot権限のみで読み書きできるようにし、他の権限には読み取りのみ許可されなければなりません。
atファイルのパーミッション644 : /etc/at.deny, /etc/at.allow 重要なシステムファイルに対してはroot権限のみで読み書きできるようにし、他の権限には読み取りのみ許可されなければなりません。

金融保安院の点検項目(fin_linux)

金融保安院基準でLinux OSのセキュリティ設定を点検します。89の項目を点検します。

Windowsの点検項目

点検項目 点検項目の説明
Administratorアカウント名の変更 通常管理者アカウントはAdministratorに設定します。この際、ログオンの試み/失敗の回数に制限がないことを悪用してパスワード類推攻撃を繰り返す可能性があります。管理者アカウントの名前を変更することで攻撃者がパスワードのみならずアカウント名を簡単に類推できないように設定しなければなりません。
Guestアカウント使用の制限 Guestアカウントは誰でもシステムにアクセスできるようにする脆弱なアカウントなので、使用を制限しなければなりません。ほとんどのシステムではGuestアカウントの使用は必要ではありません。不特定多数のアクセスが必要な場合、Guestアカウントではなく一般ユーザーのアカウントを作成して使うことをお勧めします。
アカウントロックアウトのしきい値の設定 アカウントロックアウトのしきい値ポリシーの設定ではユーザーアカウントのロックアウトを実行させるログインの試みの失敗回数を定めます。ロックアウトされたアカウントは該当のアカウントを再設定するまで、またはアカウントのロックアウト期間ポリシーの設定により、指定された時間(分)が満了するまでは使用できません。1から999までのログイン失敗回数の値を設定したり、価を0に設定してアカウントがロックアウトされないように指定できます。
任意のユーザーまたはすべてのユーザーのアカウントに対し、数千または数百万回のパスワードの組み合わせを試みる、ブルートフォースアタックを自動化できる可能性があります。実行可能な失敗ログインの数を制限すれば、そのような攻撃の効率性がほとんどなくなります。
しかし、アカウントロックアウトのしきい値が構成されたドメインでDoS(サービス拒否攻撃)が実行される可能性があります。悪意を持ったユーザーがプログラミング方式で組織にいるすべてのユーザーに対するパスワード攻撃を連続的に試みる可能性があります。試みの回数がアカウントロックアウトのしきい値より大きい場合、攻撃者によりすべてのアカウントがロックアウトされる可能性があります。
"暗号化を元に戻せる状態でパスワードを保存する"を使用しない "暗号化を元に戻せる状態でパスワードを保存する"ポリシーの設定では認証にユーザーのパスワードが必要なプロトコルを使う応用プログラムに対するサポートを提供します。暗号化されたパスワードを元に戻せる方式で保存するということは、暗号化されたパスワードの暗号を解読できることを意味します。この暗号化を解読できる、知識の豊富な攻撃者は損傷されたアカウントを利用してネットワークリソースにログオンできます。そのため、応用プログラムのリクエストがパスワード情報の保護の必要性より重要でない限り、ドメインのすべてのユーザーに対し、"暗号化を元に戻せる状態でパスワードを保存する"を使わないように設定することをお勧めします。
"Everyoneの使用権限を匿名のユーザーに適用"を使用しない このポリシーの設定ではデバイスに対する匿名のアクセスのために与えられる追加権限を定めます。このポリシー設定を使うと、匿名のユーザーがドメインのアカウントおよび共有フォルダの名前を列挙し、その他の特定の活動を実行することができます。この機能は例えば、管理者が相互信頼を維持および管理しない信頼できるドメインのユーザーにアクセスの権限を与える場合に便利です。
基本的に匿名接続用で作られたトークンにはEveryone SIDが含まれていません。そのため、Everyoneグループに割り当てられた権限は匿名のユーザーには適用されません。
アカウントのロックアウト期間の設定 アカウントのロックアウト期間ポリシーの設定では自動でロックアウトが解除されるまで、ロックアウトのアカウントがロックアウト状態を維持する時間(分)を定めます。1~99,999分の値を指定できます。0の値は管理者が明示的にロックアウトを解除するまでアカウントがロックアウト状態を維持するように指定します。アカウントロックアウトのしきい値が0より大きい数字で設定された場合、'アカウントのロックアウト期間'は'次の時間後、アカウントのロックアウトカウンターのリセット'設定より大きいか同じでなければなりません。
パスワードの複雑さ設定 パスワード設定の際、文字/数字/特殊文字をすべて含めて強力なパスワードが設定されるようにパスワードの複雑さ設定をすることをお勧めします。ローマ字/数字のみで作られたパスワードは現在公開されたパスワードクラックユーティリティによって簡単に類推できます。このポリシー設定をパスワードの最小の長さ8と結合させると、単一のパスワードに218,340,105,584,896個以上の多様な組み合わせを使うことができます。それによりブルートフォースアタック(brute force attack)を難しくすることができます。
パスワードの最小の長さ パスワードの最小の長さポリシーの設定ではユーザーアカウントのパスワードを構成できる最小の文字数を定めます。1~14字の値を設定するか、文字数を0に設定してパスワードを使わないように設定できます。最小のパスワードの長さを8以上の値に設定することをお勧めします。
パスワードの最大の有効期間 パスワードの最大の有効期間ポリシーの設定では正数の値を使い、システムでユーザーがPINを変更する前にPINを使える期間(日)を定めます。パスワードが特定の日数(1~999)後満了するように設定したり、日数を0に設定してパスワードが満了しないように指定できます。
最も複雑なパスワードを含め、すべてのパスワードは類推攻撃によって漏洩する可能性があります。一定期間が過ぎてもパスワードが有効な場合、侵害発生の可能が高くなります。ユーザーがパスワードを頻繁に変えるようにすれば、有効なパスワードが攻撃されるリスクを減らせるだけでなく、誰かが不法で窃取したパスワードを使って無断でログオンすることを減らすことができます。
パスワードの最小の有効期間 パスワードの最小の有効期間ポリシーの設定では、システムでユーザーがPINを変更する前にPINを使える期間(日)を定めます。パスワードが特定の日数(1~999)後満了するように設定したり、日数を0に設定してパスワードが満了しないように指定できます。
パスワードの変更に時間の制約がない場合、以前よく使っていたパスワードを再び使えるようになり、周期的にパスワードを変更するポリシーの効果がなくなります。パスワードの最小の有効期間ポリシーの設定を0より大きい値で構成すると、パスワードの履歴を記録する設定を有効に使い、以前のパスワードを使うことを防ぐことができます。
最後のユーザー名を表示しない このセキュリティポリシーの設定ではデバイスにログオンした最後のユーザーの名前をセキュリティ設定のデスクトップに表示するかどうかを定めます。
このポリシーを適用すると、ログオンに成功した最後のユーザーのフルネームがセキュリティ設定されたデスクトップに表示されない上、ユーザーのログオンタイルも表示されません。また、ユーザー切り替え機能が使われる場合、フルネームおよびログオンタイルが表示されません。ログオン画面では正規のドメインアカウント名(または、ローカルユーザー名)とパスワードをリクエストします。
このポリシーを使わないように設定すると、ログオンした最後のユーザーのフルネームが表示され、ユーザーのログオンタイルが表示されます。この動作はユーザー切り替え機能を使う場合と同じです。
最後にログオンしたユーザーの名前がログオンダイアログボックスに表示された場合、攻撃者がそれを窃取し、パスワードを類推したり総当たり攻撃を試みる可能性があります。実際、コンソールにアクセスしたり、ターミナルサービスを使ってサーバに接続できるユーザーに簡単に公開される可能性があるので、ユーザー名が表示されないように設定しなければなりません。
パスワードの履歴を記録 パスワードの履歴を記録するポリシーの設定では以前のパスワードを再度使うまでユーザーのアカウントと接続し、使用すべき新しい固有のパスワードの数を定めます。
パスワードを再度使うことはすべての組織において重要な問題です。多くのユーザーは自分のアカウントに対して長い期間同じパスワードを再度使おうとします。特定のアカウントに対して同じパスワードを長く使うほど、攻撃者によるブルートフォースアタック(brute force attack)でパスワードが窃取される確率が高くなります。ユーザーがパスワードを変更しなければならないが、以前のパスワードを再度使える場合、適切なパスワードポリシーによる効果は大きく低下します。
記録するパスワードの履歴の数を少なく指定すると、ユーザーは少ない数の同じパスワードを繰り返して使うことができます。また、パスワードの最小の有効期間を設定しないと、ユーザーが元のパスワードを再度使うために必要な回数だけ連続してパスワードを変更する可能性があります。
コンソールへのログオンの際、ローカルアカウントの空きのパスワードの使用をコントロール "アカウント: コンソールへのログオンの際、ローカルアカウントの空きのパスワードの使用をコントロール"ポリシーの設定は空きのパスワードを使うローカルアカウントに対し、リモートデスクトップサービス、テルネット、FTP(ファイル転送プロトコル)などのネットワークサービスを使ったリモート対話型ログオンを許可するかどうかを定めます。このポリシーの設定を有効にする場合、ローカルアカウントはリモートクライアントで対話型またはネットワークログオンを実行するにおいて使う空きになっていないパスワードを含めなければなりません。
このポリシーの設定はコンソールで実際行われる対話型ログオンやドメインアカウントを使うログインには影響を与えません。他社の応用プログラムの場合、リモート対話型ログオンを使ってポリシーの設定を無視する可能性があります。
空きのパスワードはパソコンのセキュリティに深刻な脅威になるため、会社のポリシーおよび適切な技術的措置を使って禁じなければなりません。しかし、新しいアカウントを作れるユーザーがドメインベースのパスワードポリシーの設定を無視するアカウントを作った場合、該当のアカウントは空きのパスワードを含めることができます。例えば、ユーザーがスタンドアローンシステムをビルドして、空きのパスワードを使うアカウントを1つ以上作った後、パソコンをドメインに登録できます。空きのパスワードを使うローカルアカウントは継続して動作します。このような場合、アカウント名を知っている人は空きのパスワードを利用してシステムにログオンできます。
不要なサービスの削除 一般的にシステムには不要かつ脆弱なサービスが基本的にインストールされて実行されており、そのようなサービスまたは応用プログラムは攻撃のポイントになる可能性があります。ユーザーの環境に不要なサービスや実行ファイルは使わないあるいは削除する必要があります。
IISサービス駆動の点検 IISサービスはWEB, FTPなどのサービスを提供する有用なサービスですが、プロファイリング、サービスの拒否、不法なアクセス、任意のコードの実行、情報漏洩、ワームウイルス、トロイの木馬などの脅威にさらされる可能性があるため、不要なサービスは中止しなければなりません。
FTPサービスの駆動の点検 基本的なFTPサービスはアカウントとパスワードが暗号化されていない状態で転送され、簡単なSnifferによってもスニッフィングが可能なので、FTPサービスを使わないことをお勧めします。
- Sniffer: ネットワークトラフィックを監視して分析するプログラム
DNS Zone Transferの設置 DNSサーバに保存されているドメイン情報を、承認されたDNSサーバでなく他の外部に流出することはセキュリティの面で望ましくありません。適切なセキュリティ設定を使ってドメイン情報の転送を制限しなければなりません。DNSのドメイン情報が外部に漏洩した場合、悪意を持ったユーザーが該当の情報を利用してホームページおよびサブURLの情報を入手し、ウェブアプリケーションの構造を予測して攻撃に活用する可能性があります。
ターミナルサービスの暗号化レベルの設定 ターミナルサービスは遠隔地にあるサーバを管理するための有効なツールですが、脆弱なパスワードを使ったりアクセス制御の設定が適切でない場合はハッキングの道具として悪用される可能性があります。不要なターミナルサービスが使われていないか点検しなければなりません。
SNMPサービス駆動の点検 SNMPサービスはシステムの状態をリアルタイムで把握したり設定するために使うサービスです。システムの主な情報の漏洩および不法修正を防ぐために、使わない場合は中止するのが望ましいです。
Telnetのセキュリティ設定 Telnetサービスは平文でデータを送信/受信するため、Password方式で認証を行う場合、IDおよびPasswordが外部に公開されるリスクが高いです。従って、Telnet利用の際はネットワーク上にパスワードを転送しないNTLM認証のみを使わなければなりません。
※ WindowsサーバのTelnetサービスはNTLM認証とPassword認証方法を提供
- NTLM認証: パスワードを転送せずにnegotiate/challenge/responseの手順で認証を実行
- Password認証: 管理者およびTelnetClientsグループに含まれたID/PWDで認証手続きを実行
ポリシーに合わせたシステムロギングの設定 監査の設定が構成されていなかったり監査の設定のレベルが低すぎると、セキュリティ関連の問題が発生した際に原因の把握が難しく、法的な対応のための証拠を収集するのが難しいです。しかし、監査の設定のレベルが高すぎると、セキュリティログに不要な項目が多く記録されるので、重要度の高い項目と混同する可能性があります。システムの性能にも深刻な影響を与えるので、法的な要求と組織のポリシーに合わせて必要なログを残すように設定しなければなりません。
リモートアクセスできるレジストリのパス Windowsで使われるすべての初期化および環境設定の情報はレジストリに保存されます。従って、レジストリに関しては徹底したセキュリティ対策が必要です。レジストリエディターはリモートアクセスでもそのキーを変えられますが、非常に危険ですので、ネットワークを経由したレジストリへのアクセスを遮断しなければなりません。レジストリにリモートアクセスするためには管理者の権限またはリモートアクセスのための特別なアカウントが必要です。Windowsではレジストリへのリモートアクセスのリクエストのためにリモートレジストリサービスを提供していますが、このサービスを中止すれば、レジストリに対するどのようなリモートアクセスも防ぐことができます。不可欠な場合を除いては使用を中止することをお勧めします。
イベントログ管理の設定 ログの最大のサイズは"10,240Kb以上"に設定して十分なログが保存されるようなスペースを確保する必要があります。イベントログの管理は"イベントを上書きしない"に設定してログが自動で上書きされて過去のログが削除されることがないように管理しなければなりません。
ログオンなしのシステム終了の許可 ログオンウィンドウに"システム終了"ボタンが有効になっていると、ログインしなくてもシステムの不法な終了が可能になり、正常なサービスの運用が難しくなる可能性があります。システム終了ボタンを無効にすれば、許可されていないユーザーがシステムを終了させるリスクがなくなります。
SAMアカウントと共有の匿名の列挙を許可しない Windowsでは匿名のユーザーがドメインアカウント(ユーザー、コンピューターおよびグループ)とネットワーク共有名の列挙作業を行うことができます。SAM(セキュリティアカウント管理者)アカウントと共有の匿名の列挙が許可された場合、悪意を持ったユーザーがアカウント名のリストを確認し、その情報を利用してパスワードを類推したりソーシャルエンジニアリング攻撃を行う恐れがあります。
Autologon機能の制御 Autologon機能を使うと、侵入者がハッキングツールを利用してレジストリからログインアカウントおよびパスワードを確認できるため、Autologon機能を使わないように設定しなければなりません。
- Autologon: レジストリに暗号化されて保存された代わりの証明を利用して自動でログインする機能
リムーバブルメディアのフォーマットおよび取り出しの許可 リムーバブルメディアのNTFSフォーマットおよび取り出しが許可されるユーザを制限することで、ユーザが管理権限を持っている任意のコンピュータのみにリムーバブルディスクのデータを移動し、ファイルの所有権を得てファイルを見たり修正きるようにしなければなりません。
ユーザーがプリンタードライバーをインストールできなくする サーバにプリンタードライバーをインストールする場合、悪意を持ったユーザーが故意に間違ったプリンタードライバーをインストールしてパソコンを損傷させる可能性があります。プリンタードライバーを装った悪意のあるコードをインストールする恐れがあるので、ユーザーがプリンタードライバーをインストールできないように設定しなければなりません。
警告メッセージの設定 システムにログオンを試みるユーザーに対し、管理者はシステムの不法な使用に関する警告のメッセージを表示することで警戒を表すことができます。そのような警告メッセージは悪意を持ったユーザーに対し、管理者が適切なレベルのセキュリティ対策でシステムを保護しており、攻撃者の活動を注視しているという認証を与え、攻撃による被害を間接的に減らす効果につながります。
LAN Managerの認証レベル Lan Managerの認証レベルの設定によりネットワークログオンに使うChallenge/Responseの認証プロトコルを定めます。この設定はクライアントが使う認証プロトコルのレベル、交渉されたセッションのセキュリティレベルおよびサーバーが使用する認証レベルに影響を与えるため、より安全な認証のためにNTLMv2の使用をお勧めします。
※ NTLMv2はWindows 2000, 2003, XP以上でサポートされ、Windows 98, NTバージョンとの通信の場合はパッチを当てなければならない。
- LAN Managerはネットワーク経由のファイルおよびプリンターの共有などの作業の際、認証を担当する。

に対する検索結果は~件です。 ""

    に対する検索結果がありません。 ""

    処理中...