【レポート】AWS によるセキュリティ・オートメーションの実践 #AWSSummit

2018.05.31

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

こんにちは、佐伯です。

2018年5月30日(水)〜2018年6月1日(金)の3日間にわたり、 品川にて開催されているAWS Summit Tokyo 2018に参加しています。今回は「AWS によるセキュリティ・オートメーションの実践」を聴講しましたのでレポートします。

AWS によるセキュリティ・オートメーションの実践

概要

セキュリティの世界では、クラウド技術の台頭によって、今までとは異なる新しい考え方が生まれています。全てのサービスが一貫性のある API を提供することによる高い可視性、クラウドの可用性に裏打ちされた自動拡張するセキュリティ (Security at Scale)、インフラ環境をコード化して再現可能にしたプログラマブルな IT、これらのクラウド技術の特長を合わせた実践例がセキュリティ・オートメーションです。クラウド技術によってもたらされる新しいセキュリティの在り方 を体感してください。AWS セキュリティを用いたオートメーションの最新例を解説します。

レポート

本セッションのポイント

  • クラウド時代に必要なオートメーション
  • セキュリティ・オートメションのパターン
  • オートメーションによるセキュリティ対策のユースケース

クラウド時代に必要なオートメーション

従来はセキュリティポリシーやルールへの準拠が主眼となり、スプレッドシート、ポリシー文書やチェックリスト作成などの作業が多かったが、オートメーションによって大きな労力(Heavy Lifting)な作業が削減できる。

自動化しなければならない更に重要な理由

クラウド時代ではセキュリティ自動化が不可欠になる

  • 拡張性
    • セキュリティの自動追従
  • コスト
    • セキュリティも自動化させ、労力・時間を削減
  • 信頼性
    • 品質の担保、人為的ミスの排除

セキュリティ・オートメションのパターン

  • 自動化の最小パターン
    • 入力(トリガー)→評価(チェック)→実行(アクション)

セキュリティにおいて自動化したいこと

  • 入力(トリガー)
    • メトリクスベース(しきい値、異常検知)
    • イベントベース(任意、定期)
    • ルールベース(例:組織のルールにマッチした際にトリガーを発行するなど)
  • 評価(チェック)
    • 取得
    • 解析
    • 比較
    • 演算
  • 実行(アクション)
    • 通知(レポート)
    • 確認(スキャン、棚卸し)
    • 修正(パッチ適用)
    • 対応(隔離、タグ付け)
    • 分析(ログ解析)

実現するAWSサービス

  • 多種多様なサービスがAWSには存在しており、色々な組み合わせが存在する。
  • セキュリティオートメーションを実現するにあたって、ハードウェアやOSが不要なAWS Lambdaが非常に重要になる。

オートメーションによるセキュリティ対策のユースケース

セキュリティリスク要因

  • リスクベースアプローチで考える起点
    • 驚異
    • 標的型攻撃
    • マルウェア
    • サイバー攻撃
  • 脆弱性
    • セキュリティホール
    • 設定椅子
    • 心理的要素
  • 情報資産
    • 機密情報
    • 個人情報
    • 知的財産

9つの自動化のユースケース

驚異にまつわるセキュリティオートメーション

  • DDoS攻撃
  • 不正通信

アプリ層へのDDoS攻撃を緩和

ログ解析からAWS WAFルールを自動適用

  • Application Load Balancer、CloudFront→S3へアクセスログを格納
  • S3にファイルがPUTされたイベントからLambdaを起動
  • AWS Lambdaで閾値を超えたエラー数に紐づくIPアドレスを特定、IPアドレスをもとにAWS WAFにブロックルールを適用

疑わしいIPアドレスからの不正通信

IPブラックリストの自動更新とAWS WAFルールへの反映

  • CloudWatch EventでAWS Lambdaを定期実行
  • AWS LambdaでSpamhausなどのDROPリストなどを取得、AWS WAFにブロックルールを適用

悪意のあるボットからの防御

ハニーポットに誘導されたアクセスを解析

  • ハニーポットを作成し、リクエストをAPI Gatewayで受ける
  • AWS Lambdaでアクセスを解析し、ソースIPを取得
  • IPアドレスをもとにAWS WAFにブロックルールを適用

悪意のある不正なスキャンを検知

重要度に基づき管理者に通知

  • 複数のAWSアカウントを保有している場合、マスターアカウントでGuardDutyを有効にする
  • GuardDutyでポートスキャンを検知
  • AWS Lambdaで検知結果を解析、重要度低の結果のため通知のみするなど

EC2インスタンスの端末感染検知

感染端末の初期対応と封じ込め

  • GuardDutyでC&Cサーバーとの通信を検知
  • AWS Lambdaで検知結果からインスタンスIDを取得、AWS Systems Manager Run Commandを実行
  • AWS Systems Manager Run commandで3rd PartyのアンチマルウェアAPIなどを呼び出し、マルウェアのスキャンや駆除を実行する

感染被害拡大の抑止

  • GuardDutyでC&CサーバーのIPアドレスを取得
  • AWS LambdaでブロックするIPアドレスを作成し、AWS WAFにブロックルールを適用

不正ユーザーによるなりすまし

事後分析(レトロスペクティブ分析)の開始

  • GuardDutyで不正なAPI呼び出しを検知
  • CloudWatch EventでStep Functionsを実行
  • AWS Step FunctionsでAWS Lambdaのワークフローを定義
    • Amazon SNS: 管理者への通知
    • IAM: 該当ユーザー権限制限
    • CloudTrail: 過去の操作ログ分析

脆弱性にまつわるセキュリティオートメーション

セキュリティポリシー準拠の確認

許可されていないライブラリの検知

  • AWS Systems Manager InventoryをAWS Config Rulesで監視
  • Amazon SNSで管理者へメール通知

脆弱性対策

診断からパッチ適用まで自動化

  • InspectorからAmazon SNSへPublish
  • Amazon SNSからSystems Manager Run commandを実行し、インスタンスにパッチ適用

情報漏えい防止

データ重要度にもとづいたポリシー実行

  • Amazon MacieでS3バケットを監視、機密情報の検出
  • CloudWatch EventでAWS Lambdaを実行
  • AWS Lambdaでバケットポリシーの設定確認やバケットポリシー設定変更(Write権限削除、Read権限制限など)やサーバーサイド暗号化などを実行

対応完了までの時間比較

オンプレミスは対応完了まで非常に時間がかかっていたが、オートメーション化すると圧倒的に対応完了までの時間が短くなる。

  • オンプレミス
    • ログ取得、分析、関連付け、根本原因追跡、構成準備、修正
  • AWS
    • イベント発火、ルール評価、アラート通知、関連付け、ベースライン検証、修正

感想

多種多様なサービスを組み合わせることで色々なセキュリティオートメーションを実現できますね!いろんなとこで活躍してるAWS Lambdaは大好きなサービスです!