AWS入門 AWS Inspector編

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは、コカコーラが大好きなカジです。

当エントリはDevelopers.IOで弊社AWSチームによる『AWS サービス別 再入門アドベントカレンダー 2015』の12日目のエントリです。昨日11日目のエントリは小山の『AWS Directory Service』でした。

このアドベントカレンダーの企画は、普段AWSサービスについて最新のネタ・深い/細かいテーマを主に書き連ねてきたメンバーの手によって、今一度初心に返って、基本的な部分を見つめ直してみよう、解説してみようというコンセプトが含まれていますが、本日12日目のテーマは『Amazon Inspector(Preview)』です。正式サービスされていないため、予習となります。

2015/12/12現在、AWS Inspectorはプレビューです。 本記事の内容は正式リリース時に変更される可能性があります。

目次

Amazon Inspectorとは?

Amazon Inspectorは『AWSにデプロイされたアプリケーションのセキュリティとコンプライアンスを向上させるための、自動化されたセキュリティ評価サービスです。』(AWSより

セキュリティ診断や、脆弱性アセスメント(診断)とも言われているものに相当すると思います。 同じような用途として、以下のソフトウェアや、サービスがあり、ご存知の方はイメージしやすいかもしれません。

2015年10月にセキュリティを加速させるため発表された新サービスの1つで、AWS WAFやConfig Ruleと並ぶセキュリティ機能です。

メリット

AWS Inspetctorを利用するメリットは、以下のようなものがあります。

  • EC2インスタンス上にてAWSのセキュリティルールと照らし合わせたセキュリティ評価

  • セキュリティ評価が自動化できるため、開発中や本番環境にて定期的にセキュリティチェック可能

  • APIで制御可能なので、開発環境のデプロイ処理に組み込んでチェックも可能

特徴

セットアップに時間がかからず、APIとConsoleで操作可能

セットアップは以下の流れです。

  • Amazon Inspector AgentをEC2へインストール
  • チェック対象のEC2インスタンスへTagを設定(アプリケーション指定)
  • Amazon Inspectorのアプリケーション(Tag)と監査内容を設定

チェック内容

項目についてre:Invent 2015の資料で概要は把握していましたが、具体的な内容が不明でした。調べたところUser Guideに記載があったので表にしてみました。内容を確認すると、ツールが無いと普段チェックしないものばかりだと思いました。*2015/12/11現在の情報です。

チェック概要 チェック内容 Amazon Inspector User Guideの参照先
CVE CVEの該当有無チェック チェック対象リスト Common Vulnerabilities and Exposures
ネットワークセキュリティベストプラクティス FTP, Telnet, HTTP, IMAP, POP3, SMTP, SNMP v1/v2, rsh, rloginなどの非暗号化プロトコルの利用有無と署名されたSMBパケットの有無 Network Security Best Practices
認証ベストプラクティス sshによるダイレクトrootログインの有無、SSHv1の有無チェック、SSHのパスワード認証有無(有効期限・文字数制限・複雑度) Authentication Best Practices
OSベストプラクティス DEPの有効化、アドレス空間配置のランダム化(ASLR)の有無、システムディレクトリでのroot以外のユーザ書き込み権限有無、権限のないユーザーによる高特権のモジュールロードの可否 Operating System Security Best Practices
アプリケーションベストプラクティス Stack cookiesのサポート有無チェック、DEPのサポート有無プロセスチェック (Stack cookies、DEP参考情報 Application Security Best Practices
PCI DSS 3.0対応 PCI DSS3.0 Standardの準備をしやすくしてくれます。PCI DSS Requirement 1.1.6、2.2.1-3、2.2.5、2.3、4、6、7、8に対応 PCI DSS Readiness Best Practices

CVEの説明は、Linuxで脆弱性が見つかった場合の対応方法 まとめに記載がありますので、読んでみましょう。

サービス利用のユースケース

上述のような特徴を持つAWS Inspector(プレビュー)ですが、主なユースケースとしては以下が挙げれます。

運用者向け:本番環境の定期的なセキュリティ評価

該当しそうな脆弱性情報が出るたびに、sshでログインして調査したり、Ansibleなどで自動化しながら全台調査を行っていると思います。 Amazon Inspectorの定期チェック対象に入れておくことで、評価の確認だけで済むようになれば、システム管理者やセキュリティ管理者の手間が減って喜ばれると思います。

開発者向け:アプリケーションデプロイ後に、セキュリティ評価を自動化して実施(OK=リリース/NG=リリースしない)

以下のre:invent 2015でデモで紹介されていました。41分ぐらいのところです。

AWS re:Invent 2015 | (SEC324) New! Introducing Amazon Inspector

今後注目すべき点

Amazon Inspectorは、パートナー製品 Alert LogicevidentTrend Microなどと連携の予定があるようです。 ので、商用製品との連携でチェックの幅や、監査の対応管理などへも展開しやすくなるのかもしれません。

Amazon Inspectorを試すには?

AWS Inspectorを試すには、プレビュー申請が必要です。 プレビュー申請はAWSのこちらから

申請が通ったら、以下の事項で確認してから試しましょう。

前提条件

対応リージョン

オレゴン(us-west-2)リージョンのみ

対応OS

  • Amazon Linux AMI 2015.03 (or later)
  • Ubuntu Server 14.04 LTS.

設定手順

私の方で試してみた内容は以下のブログで掲載しています。 チェック内容に抵触する変更を行い、結果を見てみるのも面白いと思います。

Amazon Inspector プレビューを試してみた #reinvent

公式ドキュメントの以下の内容を見ながら行ってみるのも良いでしょう。

Amazon Inspector Quickstart Walkthrough

エージェント操作のポイント

アンインストール
  • Amazon Linux
    • yum remove InspectorAgent
  • Ubuntu Server
    • apt-get remove inspectoragent
エージェントの停止・起動・ステータス確認
sudo /etc/init.d/inspector stop
sudo /etc/init.d/inspector start
sudo /opt/aws/inspector/bin/inspector status

マネージメントコンソール上の用語

名前 意味
Application Inspectorでセキュリティ評価対象をTagで指定
Assessments 選択したルールでセキュリティ問題を監査
Findings セキュリティ問題の概要と推奨する解決方法の表示

あわせて読みたい

公式情報

【AWS発表】 Amazon Inspector - 自動セキュリティアセスメントサービス

(SEC324) NEW! Introducing Amazon Inspector

AWS Inspector User Guide

Developers.IO関連エントリ

Amazon Inspector プレビューを試してみた #reinvent

さいごに

以上、AWS サービス別 再入門アドベントカレンダー 12日目のエントリ『Amazon Inspector(プレビュー)予習編』でした。今回の記事をきっかけに Amazon Inspectorについて少しでも興味を持っていただけると幸いです。楽にセキュアなサービス構築ができるようになることを期待しています。

明日(12/13)は都元のElastic Beanstalk編です。お楽しみに!