こんにちは!
AWS ではアプリケーションの実装だけではなく、DevOps に対してもたくさんのセキュリティ評価ツールが提供されています。本記事では、その中でも私たちがよく利用するアプリケーションの脆弱性評価ツール Amazon Inspector を紹介します!
AWS には、アプリケーション・ホスト OS だけではなく、DevOps に対しても様々なセキュリティ脆弱性を検出・評価する仕組みが提供されています。本記事では Amazon Inspector を用いたアプリケーションのセキュリティ評価を紹介しますが、興味のある方は以下を参考に AWS のセキュリティ運用を検討してみてください。
AWS サービス名 | ユースケース |
---|---|
AWS Security Hub | 統合されたセキュリティとコンプライアンスセンター |
Amazon GuardDuty | マネージド型脅威検出サービス |
Amazon Inspector | アプリケーションのセキュリティを分析 |
AWS Config | AWS リソースの設定を記録して評価 |
AWS CloudTrail | ユーザーアクティビティと API 使用状況の追跡 |
脆弱性診断をせずにシステムを運用した場合、アカウントのスロットリングや情報漏洩などさまざまな運用面でのリスクが懸念されます。システムの規模等に関係なくセキュリティ性対策は万全に行いましょう。
Amazon Inspector は、AWS に展開したアプリケーションのセキュリティ・コンプライアンスを向上させるセキュリティ評価サービスです。自動的にアプリケーションを評価し、AWS での脆弱性やベストプラクティスとの相違を確認します。
アプリケーション評価について、スケジュール設定や、任意の Amazon CloudWatch(または EventBridge )イベントによる評価実施の設定も可能です。評価のタイミングを設定できるため、セキュリティチェック関連の管理もしやすくなります。
セキュリティに関わるサービスとして、AWS 環境や AWS アカウントに対する攻撃を検知する「Amazon GuardDuty」が存在します。
Amazon Inspector は、脆弱性に対処できているかを事前に診断・評価するサービスですが、それに対して Amazon GuardDuty は、実際に起こった悪意ある攻撃を検出するサービスです。
本記事では Amazon Inspector にフォーカスしていますが、実際にリソースが攻撃された際に役立つ「Amazon GuardDuty」との違いについても理解しておきましょう。
Amazon Inspector は、Amazon の他のサービスと組み合わせて使用することも可能です。Amazon Inspector と組み合わせて使えるサービスおよび実現できることをまとめました。
ここからは、実際に Amazon Inspector の導入・操作をしていきます。まずは Amazon Inspector ページの「Amazon Inspector の使用開始」ボタンを押下します。
下記画面に遷移しますので、「今すぐ始める」を押下します。
Amazon Inspector のセットアップを行います。必要事項にチェックを入れたら、青いボタンを押下します。
ダッシュボードに遷移したら、セットアップ完了です。Amazon Inspector によるセキュリティ評価結果や評価対象、評価の際のルール等はこのダッシュボードおよび左サイドのメニューから確認できます。
次に、評価ターゲットを設定していきます。評価ターゲットとは、セキュリティ評価対象となる Amazon EC2 インスタンスの集合を指します。
インスタンスすべてを評価することはもちろん、評価ターゲットの設定時にタグを指定することで、タグで紐づいた一部のインスタンスを評価することも可能です。
Amazon Inspector をセットアップするとデフォルトで評価ターゲットが入っていますが、ここでは新規で作成してみます。
「評価ターゲット」画面に遷移し、「作成」を押下すると下記の画面に移ります。必要項目を入力して保存すると、評価ターゲットの設定は完了です。なお、タグは評価対象のリソースに付与したタグと同じものを入力してください。
なお、エージェントをインストールする場合は「 Install Agents (エージェントのインストール)」にチェックを入れます。( EC2 インスタンスに SSM エージェントがインストールされていることと、Run Command を許可する IAM ロールが導入されていることが前提)
「成功」が表示されました。評価ターゲット一覧には、先ほど入力した評価ターゲットの名前が追加されています。
ここからは、評価テンプレートを設定します。評価テンプレートとは、評価対象となるターゲット・評価項目を設定したものです。具体的には、下記のものが含まれます。
評価テンプレートを設定するには、まず左側のサイドメニューから「評価テンプレート」画面に遷移しましょう。
任意の名前を入力し、ターゲット名は評価対象として設定する評価ターゲットを選択します。その他必要項目を入力し、作成ボタンを押下すれば設定は完了です。
設定した評価テンプレートが、評価テンプレート一覧に表示されました。これで評価テンプレートの設定は完了です。
評価ターゲット・評価テンプレートが完成したら、評価テンプレート画面を操作して評価を実行します。実行する評価テンプレートのチェックボックスにチェックを入れ、「実行」ボタンを押下してください。
プログラムに基づいてセキュリティチェックが実行されます。結果は左サイドメニューの「結果」ページを参照します。
Amazon Inspector を実行し、対象の脆弱性が疑われる場合、自身で対処することになります。
Amazon Inspector はあくまでも評価を実行するためのツールですので、設定変更やパッチ適用など、対応方法を自身で検討する必要があります。
なお、Amazon Inspector 実行後はセキュリティ上の目標やアプローチに基づいて重大度、緊急度、ユーザーの関心度が様々に異なる結果のリストが生成されます。対応の優先順位を考えるときなどに参考にしましょう。
脆弱性を是正できず外部から攻撃を受けた際には Amazon GuardDuty を使用して攻撃を検出することになりますが、その際の報告先を紹介します。
AWSでは「脆弱性レポート」のページを設け、報告されたセキュリティ問題への対応を随時行っています。実際に AWS で脆弱性が疑われた場合は、速やかに報告しましょう。
脆弱性が疑われるサービスによって連絡先は異なります。
脆弱性レポートについて、対象サービス・事象ごとの報告方法をまとめました。
対象サービス・事象 | 報告方法 |
---|---|
AWS クラウドサービス オープンソースプロジェクト | aws-security@amazon.com まで連絡 (メールを保護する場合、 PGP キーの使用が可能) |
AWS リソース不正使用 | abuse@amazonaws.com AWS の不正使用チーム宛に連絡 |
AWSコンプライアンス関連 | 「AWS コンプライアンスお問い合わせ」 のフォームを利用 |
また、レポートを送信する場合は、下記の事項に気を付けましょう。
レポートを送信すると、AWS はサービスの脆弱性を検証します。問題の検証・再現のために追加情報を求められる場合もありますので、その際は速やかに情報を提出しましょう。調査完了後は、結果と解決策が AWS から送られるので確認してください。
なお、サードパーティ製品に影響する脆弱性の場合は、AWS から影響を受けるテクノロジーの所有者に通知されます。報告者とサードパーティの間の調整は AWS 側が行ってくれます。
AWS では、以下の行動については対応範囲外に指定されています。
以上、脆弱性診断の自動化サービス「Amazon Inspector」を中心に、アプリケーションの脆弱性診断・対応について紹介しました。無料トライアルからの導入が可能ですので、アプリケーションのセキュリティ向上のためにぜひ導入してみてください。
このブログでは、AWS 関連の記事をどんどん公開しております。ご興味のある方はぜひ他の記事もご覧ください。
またAWSに関する開発相談は、お気軽にお問い合わせください。
スモールスタート開発支援、サーバーレス・NoSQLのことなら
ラーゲイトまでご相談ください
低コスト、サーバーレスの
モダナイズ開発をご検討なら
下請け対応可能
Sler企業様からの依頼も歓迎