こんにちは、ひろかずです。
忙しい人のためのAmazon Inspector User Guide まとめを作る中で、ハンズオン形式で脆弱性を作りこんで検知させる章があったので、Ubuntu環境で作りこんだ脆弱性(CVE)を検知するか確認します。
工程
- Ubuntuインスタンスを起動する
- 脆弱性の確認
- Amazon Inspectorで検査
- 結果の確認
- 結果の管理
1.Ubuntuインスタンスを起動する
今回は、Amazon Inspectorに対応するUbuntu14.04LTSで、shellshockが公表される2014/9/24以前のインスタンスを用意しました。
- ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-20140607.1 – ami-e7b8c0d7
インスタンスに検査用のタグを作成しておきます。
2.脆弱性の確認
shellshockの脆弱性に該当するか、確認コマンドで確認します。
ubuntu@ip-172-31-33-45:~$ env x='() { :;}; echo this bash is vulnerable' bash -c : this bash is vulnerable
該当してますね。
期待値は、以下CVEの一部、または全部が検知されることとします。
- CVE-2014-6271
- CVE-2014-7169
- CVE-2014-6277
- CVE-2014-6278
3.Amazon Inspectorで検査
Applicationsは前回作成したものを使用します。
以下のようにAssesmentsを作成しました。
今回はCVEを検知して欲しいので、Rule packagesは Common Vulnerabilities and Exposures を選択します。
Create & run
をクリックして、待つこと1時間…
4.結果の確認
90ものCVEが検出されました。
(※注意:AWSマネジメントコンソールの言語設定を 英語
にすること)
期待値のCVEも含まれていますね。
脆弱性の内容はこのように表示されました。
Discriptionにbashの脆弱性であることが示され、対応方法はCVEのページを参照するように案内されています。
実運用上では、インスタンスID毎や bash
等のキーワードでフィルタしてまとめたりすることになりそうです。bash
でフィルタすると以下のように表示されました。
5.結果の管理
各Findingsは、Attributesタグを入れて管理できます。
実運用上では、担当とステータスを管理することになると思います。
ひろかずにアサインして、処理中のステータスにします。
status inProcess
でフィルタすると検索できます。
各Finding詳細画面にはAttributesタグが表示されないですね。
個人的にはAttributesタグも表示されて欲しかったので、少し残念です。
期待通りの結果を得ることができました。
お疲れ様でした。