フリーでやろうぜ!
セキュリティチェック!
~ OpenVAS CLI編 ~
Satoshi Ogawa(小河哲之)
Twitter: @number3to4
アルコール摂取に余念がないセキュリティエンジニア
NO DRINK,
NO HACK!
自己紹介
ご注意!!
本スライドに記載した行為を自身の管理下にないネットワーク/コンピューターに行った
場合は、攻撃行為と判断される場合があります。
最悪の場合、法的措置を取られる可能性もあります。
このようなツールを利用して検査を行う場合は、くれぐれも許可を取った上で、自身の
管理下にあるネットワークやサーバーに対してのみ行ってください。
※また、診断実施時には、「脆弱性診断時における注意事項」をご参照していただき、
各種準備を行った上で実施をするようにしてください。
診断の注意事項 ー診断対象のプラットフォームに関することー
診断対象プラットフォームが、ホスティング環境やクラウドサービスを利用しているような
場合には、不正アクセスとして判断されないために、事前に必ず管理元に許可を取得
するようにしてください。クラウドサービスによっては以下のように専用の申し込み窓口
があるものもあります。
• 侵入テスト AWS セキュリティセンター
https://aws.amazon.com/jp/security/penetration-testing/
• Microsoft Azure での侵入テスト (ペネトレーションテスト) の申請について
http://blogs.msdn.com/b/dsazurejp/archive/2014/10/15/microsoft-azure-penetration-test-
request.aspx
診断対象をIDS、IPSなどで監視をしている場合には、脆弱性診断作業によってアラート
が上がってしまう可能性があります。そのため関係者に対して、事前に脆弱性診断を実
施する旨の通知と一時的にアクセス元IPからの通信を非監視にしていただくなどの対
応をお願いすべきでしょう。海外のデータセンタなどへの診断行為は、その国の法令をご
確認の上、実施されることを推奨いたします。
前回のおさらい(インフラ編)
サーバやネットワーク機器などへのブラックボックステスト
であるNmapによるポートスキャン、OpenVASによる脆弱性
スキャンをご紹介しました。
前回の資料
http://www.slideshare.net/zaki4649/free-securitycheck
前回、時間の都合上、資料に盛り込めなかった点を追加
でご紹介いたします。
OpenVAS
OpenVASはブラウザを用いて、スキャン対象の登録や
スキャンの実施が可能です。
スキャン方法
OpenVASでは、ブラウザによる操作だけではなく、CLIも
用意されています。
CLIについて
ompコマンドを用いてスキャンを実行することができます。
OpenVAS
CLIでスキャンを行う流れは以下です。
認証情報
の設定
設定しない、またはテンプレートを用いることで省略可能
です。
ブラウザで設定する必要があります。
CLIでの実施が可能です。
実施までの流れ
Portの
設定
Target
の設定
Taskの
登録
脆弱性
スキャン
結果の
確認
Scan Config
の設定
スキャンを実施する際にどのような内容のスキャンを
行うかテンプレートが用意されており、それをScan Config
で内容確認やカスタマイズを行えます。
Scan Configについて
Scan Configについて
Scan Configについて
テンプレートは8つあります。カスタマイズはテンプレート
をコピーして行います。
「Full and very deep」をコピー
Scan Configについて
スキャン内容を変更する場合、「Edit Scan Config」を
押下し、スキャン内容の変更後、「Save Config」を押下。
CLIについて
登録されているTarget、Scan Configを用いてTaskの
登録をCLIで行います。
Task
Scan Config
Target
Port List 認証情報
Target、Scan Config
を引数として指定する
必要があります。
※イメージ図です。
CLIについて
TargetとScan Configの内部で管理されているキーの値
を指定する必要があります。それぞれを一覧表示し、該当
の値を確認します。
Targetの内部キーの値 Targetの名称
CLIについて
Targetの一覧を取得する(-Tオプション)。
omp -p ポート番号 -u ユーザ名 –w パスワード -T
Scan Configの一覧を取得する(-gオプション)。
omp -p ポート番号 -u ユーザ名 –w パスワード -g
Taskの一覧を取得する(-Gオプション)。
omp -p ポート番号 -u ユーザ名 –w パスワード -G
※「ポート番号」はompが稼働するポート番号で、9390になります。
CLIについて
Taskを登録します。Taskのキー値が出力されます。
omp -p ポート番号 -u ユーザ名 –w パスワード –C –n タスク名
-c Scan Configのキー値 --target=Targetのキー値
Taskのキー値を指定し、Taskを実行します。Reportの
キー値が出力されます。
omp -p ポート番号 -u ユーザ名 –w パスワード –S Taskのキー値
CLIについて
Taskの実行状況は、Task一覧で確認することが可能です。
ブラウザでも同様に
確認可能です。
CLIについて
スキャン結果を出力する(-Rオプション)。
omp -p ポート番号 -u ユーザ名 –w パスワード –R Reportのキー値
-fオプションで指定された
フォーマットでの出力も可能
です。すべて標準出力され
ます。
リモートからの制御
IPアドレスを指定することで、他のOpenVASのスキャンや
結果の確認が行えます。
omp –h IPアドレス -p ポート番号 -u ユーザ名 –w パスワード
–R Reportのキー値
リモートからの制御
社内環境などで複数のセグメントに対してスキャンを実施
する場合に、OpenVASをセグメントごとに配置することで
トラフィックへの影響を最小限に抑えることが可能です。
スキャン
結果確認
スケジュール機能について
定期的にスキャンを実施したい場合、スクリプトでCLIを
呼ぶよりもSchedulesを使用した方が効果的なケースも
あります。
スケジュール機能について
Schedulesでは、「Duration」を指定することでスキャンを
指定時間後に強制的に終了させることが可能です。
スキャン
AM7時 AM9時
例:AM1時からDurationを6Hで指定
業務がAM9時から開始する場合に業務へ影響が出ない
ようにスキャンを予約することが可能です。
AM1時
業務
スケジュール機能について
スケジュール登録されているTaskで時間外の場合、
ブラウザやCLIで実行しようとしても、自動的にスキャン
は止められてしまいます。
まとめ
CLIやスクリプトなどを用いることで、スキャンの自動的な
実施や結果通知も行えるようになります。
Dailyでスキャンを実施し、Highが検出された場合はメール
することも可能になります。
CLIを活用することで、スキャンにかかる手間を減らすこと
が可能だと思われます。

フリーでできるセキュリティチェック OpenVAS CLI編