[Security-JAWS用]実践的なAWSセキュリティのインシデントレスポンス環境を作ってみた!

 [Security-JAWS用]実践的なAWSセキュリティのインシデントレスポンス環境を作ってみた!

Security-JAWS 【第19回】 勉強会 2020年11月24日(火)に登壇した際の資料です
https://s-jaws.doorkeeper.jp/events/113783

A857277d74d4719f7f7751dca5ed553e?s=128

cm-usuda-keisuke

November 24, 2020
Tweet

Transcript

  1. 実践的なAWSセキュリティのインシデントレス ポンス環境を作ってみた! Security-JAWS 2020/11/24

  2. 今回お届けする内容 • セキュリティ・キャンプという次代を担う情報セキュリティ人材を 発掘・育成する事業で、AWS環境におけるインシデントレスポ ンスをテーマとした講義を行ってみました! • 今回は講義の内容・講義のために作成した演習環境・作成に 当たって苦労した裏話などについてお話しようかと思います。

  3. 洲崎俊 洲崎 俊(Shun Suzaki) 三井物産セキュアディレクション株式会社に所属 ペネトレーションテストなどを中心としたセキュリティサービス提供に 従事する、とあるセキュリティエンジニア 公開スライド:http://www.slideshare.net/zaki4649/ Blog:http://tigerszk.hatenablog.com/ 著書(翻訳):詳解HTTP/2

    Twitter:とある診断員@tigerszk • ISOG-J WG1 • Burp Suite Japan User Group • OWASP JAPAN Promotion Team • #ssmjp • MINI Hardening Project I‘M A CERTAIN PENTESTER!
  4. 臼田佳祐 クラスメソッド株式会社 ・AWS事業本部  ソリューションアーキテクト  セキュリティチームリーダー ・Security-JAWS運営 ・好きなサービス:  AWS WAFマネージドルール https://dev.classmethod.jp/author/usuda-keisuke/

  5. 角田朱生 角田 朱生(つのだ あかき) セキュリティ・キャンプ2012 Webセキュリティクラス卒業。脆弱性診断や 不正利用対策などの業務を経て、現在はモバイル決済サービスのセ キュリティアセスメントに従事。 Twitter: @akakitsunoda

    Blog: https://akaki.io/
  6. 目次 1. セキュリティ・キャンプとは 2. 講義概要 3. 講義をやってみた感想

  7. 1.セキュリティ・キャンプとは

  8. セキュリティ・キャンプとは? 学生に対して情報セキュリティに関する高度な技術教育を実施し、次 代を担う情報セキュリティ人材を発掘・育成する事業 • 独立行政法人情報処理推進機構(IPA)と一般社団法人セキュリティ・キャンプ 協議会が主催 • 2004年に開始され、現在は全国大会を首都圏で毎年1回、2013年に開始され た地方大会を毎年各地で10回程度開催 •

    22歳以下の学生から応募選考 • 毎年80人程度、2019年度まで計824名を輩出
  9. 今年の全国大会で講義をしました セキュリティ・キャンプ全国大会2020 オンライン 10/18~12/6の毎週末にオンライン開催 https://www.ipa.go.jp/jinzai/camp/2020/zenkoku2020_index.html 講義名: 「なぜWebサイトは乗っ取られたのか?AWS環境における実践 的なインシデントレスポンス」

  10. 2.講義概要

  11. どんな講義? 講義受講者に、攻撃者によって侵害されたAWS環境を実際に手 を動かして解析してもらい、AWS環境におけるインシデントレスポ ンスを経験してもらうというもの 演習用の侵害されたAWS環境 受講者 講師 演習用環境を設計・構築 事前に攻撃を実施 侵害されたAWS環境を解析

    AWS Cloud
  12. メンバーの主な役割 AWS環境の設計&構築:臼田 サービスアプリケーションの構築:角田 攻撃シナリオ作成&攻撃:洲崎

  13. 講義のシナリオ ある日とあるWebサービスを提供している会社のCTOからAWS環境が侵害 されてしまったとの連絡があなたの元に届きます。 「AWSからAbuseレポートが届き、調査した結果、自社のAWS環境上でコイ ンマイナーが動作していることを発見した。急いでコインマイナーは停止し、 とりあえず提供サービスを一時停止した。サービス再開のために、このAWS 環境の調査をきみにお願いしたい!」 スーパーインシデントハンドラーの君に課せられた任務は、このAWS環境で 一体何が起きたのかを解明することだ!

  14. ある会社が提供するアプリケーション セキュアなつぶやき型SNS「Secutter」 主な機能 • ログイン • プロフィール変更 • つぶやき投稿 •

    いいね Nginx+PHP+Mysqlで構成
  15. サービスを提供するAWS環境

  16. インシデント発生後の初動対応 • マインニングされていた不正なEC2は即時停止 • Secutterサービスも侵害されている可能性があるため、サービス公開を 停止 • 環境保全のためSecutterアプリケーションが動作していたEC2のAMI バックアップを取得 •

    調査用のEC2を作成し、復元した調査対象のEBSをマウント • 調査対象期間のWebサーバーのログ/AWSログをS3バケットに複製 • Athenaでログを解析できるよう準備
  17. 初動対応後の環境

  18. 解析を通じて以下をまとめてもらう • インシデントによる影響(Secutterサービスは影響を受けてい るのか?) • 不正なEC2が動作していた原因 • サービス再開のための対策案の提案

  19. 講義はこんな感じで行いました • 講義の流れ(講義時間:4時間) 1. 座学(AWSセキュリティの基礎・課題概要・ログ解析のポイントなど) 2. 解析TIME 3. インシデントの内容解説 ※解析を行うに当たって必要と思われるAWSに関する基礎知識やAWSセキュリティなどは講義事前

    に事前課題としてあらかじめ受講者に学習してもらっていました。 • Slack上で受講者をサポート • AWS環境自体は、自分のペースで好きな時に学習できる ように、開催期間中は開放
  20. 3.講義をやってみた感想

  21. 頑張ったところ: リアルな環境にこだわった • クラウドならではのインシデン トレスポンスを提供できた ◦ AWSのログとサーバ/OSのログ のハイブリット調査 ◦ ログ分析もfluentdで出して

    athenaでやった ◦ GuardDutyやDetectiveを駆使
  22. 頑張ったところ: リアルな環境にこだわった • 実際にありそうな環境で実際 にやるオペレーションを想定 ◦ クラウドらしい攻撃を再現

  23. 頑張ったところ: リアルな環境にこだわった • 実際にありそうな環境 で実際にやるオペレー ションを想定 ◦ EC2のスナップショットを 使って環境保全 +

    調査
  24. こだわったところ • リアルなAWS環境でのインシデントレスポンスを体験 してより現場で役に立つ経験を積んでもらうことを意 識した • でもAWSの知識はどんどん陳腐化していくのでもう一 つ大事なことを盛り込んだ

  25. その時役立つ技術もそうだけど 調査の考え方や勘所が大事

  26. こだわったところ • 以下のようなインシデントレスポンス全般で役に立つ 内容もフォロー ◦ 調査の方針設計 ◦ ログの辿り方 ◦ 報告書の作り方(おまけ)

    • AWSに限らず役に立つ経験になることを意識
  27. 知見の共有 • GuardDuty/Detectiveを体験するコンテンツは作るの は大変 ◦ 保持期間が90日(約3ヶ月) ◦ 検知させるのが大変 ◦ IAMのイベントは最近全リージョンに出るから火消しが大

  28. 知見の共有 • 思ったとおりにログを作るのが大変 ◦ リテイクしまくる ◦ なるべくオペレーションを自動化して対応 • ABACでアクセス制御するといい感じにEC2使える (Session

    Managerでも良かったけど) AWS の ABAC とは - AWS Identity and Access Management https://docs.aws.amazon.com/ja_jp/IAM/lates t/UserGuide/introduction_attribute-based-acce ss-control.html
  29. 知見の共有 • 痕跡を残しつつ悪さされないようにするのが難しい ◦ アクセスキーにpermission boundary設定して守った(わかりづ らくていい) • 学生向けにやるとクレカないとかEducateとか大変 ◦

    自己学習してもらうならqwiklabsとか使ってもらう • ログ公開や体感してもらう仕組みを作るのは大変 ◦ いい解決策を知っている人がいたら教えてほしい