SECURITY 599 | ||||||||||||||||||||||||||||||||||||
Defeating Advanced Adversaries - Purple Team Tactics & Kill Chain Defenses |
||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||
受講に必要なPC環境
演習で使用するノートPCをご持参下さい。受講に必要なPC環境についてご確認ください。
SEC599 PC設定詳細
重要!以下の説明をお読みになった上で、ご自身のノートPCをお持ちください。 受講に必要なPC環境についてご確認ください。
本コースはSANSオンデマンドプラットフォームを活用するため、Webブラウザが必須となります。
演習を円滑に進めていただくため、受講生の方はシステムを事前に適切な状態にしていただく必要があります。コースが始まる前までに、以下の説明に目を通して設定変更などを済ませてからお持ちください。
ノートPCの必須ハードウェア要件
OS:最新のパッチが適用された以下のOS。
- Windows 7、8.1または10
- MacOS Mavericks、Yosemite、El CapitanまたはSierra
- Linux ディストリビューションは問いませんが環境により動作しない場合がございます
ご自身の環境においてトラブルシュートを行う場合があるため、管理者権限の付与が必要です。
ブラウザ:最新のバッチが適用された以下のブラウザ。
- Microsoft Edge
- Google Chrome
- Mozilla Firefox
ハードウェア:
- 32ビットまたは64ビットのCPUで動作周波数が2.0GHz以上のもの(64ビット対応推奨)
- 8GB以上のメモリ(最低でも4GB以上が必要で、それ以上の実装メモリを推奨します)
- 無線ネットワーク接続 802.11B/G/N/ACのいずれかで接続できること
- 10GB以上の空きディスク領域
セキュリティ事故を未然に防ぐため、予めご自身の端末から機微情報は削除してからご参加ください。SANS(NRIセキュアテクノロジーズ)はコース中に受講生の端末で発生したいかなる事故について責任を負いません。
ノートパソコンの設定に関して追加で質問がある場合は、info@sans-japan.jp(NRIセキュアテクノロジーズ)にお問い合わせください。ただし、米国と問合せを行う関係上時間を要する場合がございます。お急ぎの方はlaptop_prep@sans.orgに直接お問い合わせください(英文)。
コース概要
あなたはサイバーセキュリティ機能を実装した仮想組織、「SyncTechLabs」の構築を手助けするために採用されたとしましょう。さて初日に、上司から話しを持ちかけられました。「最近のサイバーセキュリティの傾向報告を見たが、どうやら我々は方向性を失っているようだ。APTやランサムウェア、DoS… どこから手をつければよいか分からないのだよ。」
サイバー脅威は日々その脅威の度合いを高めています。ランサムウェアは組織規模の大小に関係なく影響を与え、国家的犯罪組織はあなたの最重要機密を狙いにきているのです。このコースでは今日の敵がどのような行動をとるかに対して深く理解するとともに、組織として脅威を検知し、対応するために備えるべき防御方法を習得します。
SEC599はレッドチームとブルーチームの両要素を織り交ぜることで最大の効力を発揮するパープルチームのコンセプトを理解することに注力します。防御戦略だけでは脅威に対する備えは不十分です。最新の攻撃戦略にもフォーカスして、Kill Chainストラクチャを用いながらいかに攻撃を検知し効果的に緩和していくのかを習得します。コースでは最初に攻撃手法を詳細に解説し、その後、セキュリティ対策の解説と実装を行う形でパープルチームの原理を理解していきます。
コースの著者であるErik Van BuggenhoutとStephen Sims(共にGIACセキュリティエキスパート)は、ペネトレーションテストとインシデントレスポンスの両方の観点からサイバー攻撃がどのように成功するかについて、誰よりも深い理解と豊富な経験を持っています。彼らがペネトレーションテストのコースを教えている際に、「攻撃手法はわかったけど、どうしたらこのような攻撃を防御できるの?」とよく質問されたことが、このコースの開発のきっかけになっています。20以上のハンズオンラボと最終日に一日かけて実施する「Defend-The-Flag」演習を行うことで、防御スキルが身につくでしょう。受講者自身が守るべき架空組織の環境に浴びせかけられる多種多様な攻撃から自然と環境を防御できるようになります。SEC599では、架空の組織に浴びせかけられる多種多様な攻撃をどのように防御するかという実践的な例を用いながらコースが進んでいきます。
1日目は最近の攻撃手法について、仮想組織「SyncTechLabs」を想定したケーススタディを通じてAPT攻撃のサイクルを分析します。
2日目から5日目ではサイバー攻撃に対する防御、検知、対応方法の効果的なセキュリティ対策の実装について議論しつつ数々のラボを行います。
- MITRE ATT&CKを組織内の「共通言語」として活用する
- ペイロードを解析するための独自のCuckooサンドボックスソリューションの構築
- スクリプトの実行を改善するための効果的なグループポリシーの開発 (PowerShell、Windows Script Host、VBA、HTA などを含む)
- スクリプト制御のための主要なバイパス戦略のハイライト(アンマネージドPowershell、AMSIバイパスなど)
- ExploitGuardとアプリケーションのホワイトリストを利用した0-dayエクスプロイトの停止
- アプリケーションのホワイトリスト化における主要なバイパス戦略のハイライト(AppLockerに焦点を当てながら)
- 粘り強いマルウェアの検出と防止
- 中央集約型のログ解析ソリューションとしてのElastic stackの活用
- Sysmon、Windowsイベント監視、グループポリシーによるラテラルムーブメントの検出と防止
- ネットワークトラフィック分析を用いたCommand&Control(C&C)の阻止と検知
- 脅威インテリジェンスを活用したセキュリティ態勢の改善
コースと演習をデザインするにあたり、著者は受講者が学習した内容を業務で実際に「構築」できようにするために多くの時間を費やしました。ですので、コースで紹介されているIDSシステム、webプロキシ、サンドボックス、ダッシュボードなどの様々なテクノロジーは全て即利用可能な仮想マシンとしてコースで提供されるUSBメモリに収録されています。
最終日に実施する「Defend-the-Flagチャレンジ」では高度な敵からあなたのネットワークをセキュアに保つことが求められます。異なる種類の攻撃からシステムを守り抜くことができますか?
敵は決して攻撃の手を緩めることはありません。
本講座受講にあたっての前提
- LinuxとWindows環境でCLI操作経験がある方
- Windowsアクティブディレクトリについての基礎知識がある方
- 基礎的なサイバーセキュリティのトピックスに関して理解している
- TCP/IPおよびネットワークを理解している方
受講対象者
- セキュリティアーキテクト
- セキュリティエンジニア
- テクニカルセキュリティマネージャ
- SOCメンバー(アナリスト、エンジニア、管理者)
- ペネトレーションテスター(防御方法に興味がある方)
- SOC分析担当、攻撃の行動をどのようにより良く検知するのかを理解を深めたい技術者
- ATP攻撃の詳細について理解し、IT環境においてどのようにインシデントを検知し防御・対応するかに興味がある方
講義内容の一例
SEC599はSANS オンデマンドプラットフォームを活用し、本格的なブラウザでアクセスが可能な20以上のラボを利用することが可能です。各受講生には現実を模したテスト環境や全ての演習が1つのパッケージとして仮想環境で用意されていることから、環境依存による問題が排除されます。また、各受講生の環境はサンドボックス化されており、他の受講生の環境に影響を与えることなく安心して学習することが可能です。
過去10年において、高度ペネトレーションテストやエクスプロイト構築コースの開発や講義を行ってきましたが、あるトレンドに気がつきました。1つのコースで、半数以上の受講生はペネトレーションテスターでもなければゼロデイ攻撃を作成するわけでもありませんでした。実は、そのほとんどは防御側の業務をされていて、攻撃者の手法を学習することで自身の環境の防御に役立てようとする方々でした。そこで私たちは、コース内容の多くの部分を敵やレッドチームテスターが用いるテクニックを打ち砕くコントロールの実装方法に割くことにしたのです。
- Stephen Sims
SEC599は防御に立つ側に対して敵が組織に侵入する方法に対する深い理解をもたらします。このコースがサイバーディフェンスカリキュラムにおけるギャップを埋められることをエキサイティングに思っています。IT専任者にとってこのコースは今日の敵がどのようにIT環境へ侵入してくるのかを理解し、これらの動きは実は防御、検知、さらには対応することが可能であるということを知るのに最適だと考えています。私のモットーは「やって覚える」です。したがって、このコースは非常に多くのハンズオンから構成されてます。期間中、受講生は20以上のラボと演習をこなし、最後の仕上げとして「Defend-the-Flag」に挑んでいただくことで、実践に活かせる知識・スキルを習得します。
- Erik Van Buggenhout
Introduction and Reconnaissance(導入と調査・偵察)
6部構成からなるこの旅の1日目は、綿密なケーススタディを通じた最近の攻撃の分析から始まります。実際の状況で何が起こっているのかを説明し、CyberKillChainとMITRE ATT&CKのフレームワークを、攻撃者の戦術やテクニックを説明するための構造化されたアプローチとして紹介します。また、パープル・チーミングとは何か、それに関連する代表的なツール、組織内での最適な編成方法についても説明します。また、攻撃がどのように機能するかを理解するために、受講生は1日目の演習で、私たちの仮想組織「SYNCTECHLABS」への侵入を試みます。
演習
- ワンクリックで全て解決...
- SCTとSTIGを使ったドメインのハードニング
- Kibana、ATT&CKナビゲーター、FlightSim
- SpiderFootを使った自動的な偵察
トピック
- コースの全体像とラボ環境の設定
- コースの目的とラボ環境
- そこでは何が起きているのか?
- SYNCTECHLABSの解説
- 演習:ワンクリックですべて解決...
- 攻撃者エミュレーションとパープルチーム
- 拡張されたKillChainの解説
- パープルチームとは何か?
- MITRE ATT&CKフレームワークと「パープルツール」
- 防御と検知のためのキーコントロール
- 演習:SCTとSTIGを使ったドメインのハードニング
- 検出スタックの構築
- 演習:Kibana、ATT&CKナビゲーター、FlightSim
- 偵察・調査
- 偵察・調査 -ターゲットを知るために
- 演習:SpiderFootを使った自動的な偵察
Payload Delivery and Execution(ペイロードのデリバリーと実行)
2日目では、敵が組織内でペイロードの配信と実行をどのように試みるかを取り上げます。まず、攻撃者のテクニック(例:悪意のある実行ファイルやスクリプトの作成)を取り上げ、次に、ペイロードの配信(例:フィッシングメール)と実行(例:添付ファイルのダブルクリック)の両方をどのように阻止するかに焦点を当てます。また、共通のペイロード記述言語としてYARA、ベンダに依存しないユースケース記述言語としてSIGMAについて解説します。
演習
- Windows における NTLMv2 スニッフィングおよびリレー攻撃の阻止
- CuckooとYARAを使用したサンドボックスの構築
- AppLockerの設定
- 組織内でのスクリプト実行の制御
- スクリプトブロックロギング、Sysmon、SIGMAを使った検知
- ProcFilter を用いたペイロード実行の防御
トピック
- 共通のデリバリーメカニズム
- ペイロードの配信阻止
- リムーバブルメディアとネットワーク(NAC、MDMなど)の制御
- 演習:Windows における NTLMv2 スニッフィングおよびリレー攻撃の阻止
- メールコントロール、Webプロキシ、マルウェアのサンドボックス化
- YARA - 一般的なペイロード記述言語
- 演習:CuckooとYARAを使ったサンドボックスの構築
- ペイロードの実行防御
- 初期実行 - アプリケーションのホワイトリスト化
- 演習:AppLockerの設定
- 初期実行 - Visual Basic、JS、HTA、PowerShell
- 演習:組織内でのスクリプト実行の制御
- 初期実行 - どのように検出するか?
- 演習:スクリプトブロックログ、Sysmon、SIGMAを使った検知
- YARAルールの運用 - ProcFilterの導入
- 演習:ProcFilter を用いたペイロード実行の防御
Exploitation, Persistence, and Command and Control(エクスプロイト、持続性、Command&Control(C&C))
3日目では、まず、どのようにしてエクスプロイトを防御したり検出したりすることができるかを解説します。セキュリティがソフトウェア開発ライフサイクルの不可欠な一部であるべきであること、そして、脆弱性のあるソフトウェアの作成を防ぐためにどのように役立つかを示します。また、パッチ管理が全体像の中でどのように適合するかについても解説します。
次に、コンパイル(ControlFlowGuard など)とランタイム(ExploitGuard)の両方でのエクスプロイト緩和テクニックに焦点を当てます。異なるエクスプロイト緩和テクニックが何をカバーしているのか(しようとしているのか)、また、それらがどれほど効果的なのかについて、詳細な解説を行います。次に、典型的な永続化戦略と、Autoruns と OSQuery を使用してどのように検出できるかについて説明します。最後に、Command&Control(C&C)チャンネルがどのように設定されているか、そして検知と防御のために防御者がどのような制御が可能かを説明します。
演習
- コンパイル時間の制御を用いたエクスプロイトの緩和
- ExploitGuardを用いたエクスプロイトの緩和
- AutorunsとOSQueryを使用した持続性のキャッチ
- Suricata、JA3、RITAを用いたCommand&Control(C&C)チャンネルの検知
トピック
- エクスプロイトからのアプリケーションの防御
- ソフトウエア開発ライフサイクル(SDL)と脅威モデリング
- パッチマネジメント
- エクスプロイト緩和テクニック
- 演習:コンパイル時間の制御を用いたエクスプロイトの緩和
- エクスプロイト緩和テクニック - ExploitGuard,EMET など
- 演習:ExploitGuardを用いたエクスプロイトの緩和
- インストールの回避
- 典型的な永続性戦略
- 攻撃者はどのようにして粘り強さを発揮するのか?
- 演習:AutorunsとOSQueryを使用した持続性のキャッチ
- Command&Control(C&C)の包囲
- Command&Control(C&C)のチャンネルの検知
- 演習:Suricata、JA3、RITAを用いたCommand&Control(C&C)チャンネルの検知
Lateral Movement(ラテラルムーブメント(横方向への移動))
4日目は、敵がどのようにして環境全体を横方向に移動するかに焦点を当てます。主なポイントは、Active Directory (AD) の構造とプロトコル (ローカルクレデンシャルの盗用、NTLMv2、Kerberosm など) にあります。Windows 特権のエスカレーション、UAC バイパス、(オーバー) Pass-the-Hash、Kerberoasting、シルバーチケットなどを含む、一般的な攻撃戦略を解説します。また、BloodHound を使用して、AD 環境を介した攻撃パスを開発する方法についても解説します。最後に、環境内での横方向の動きをどのように識別できるか、サイバー詐欺を利用して侵入者を現行犯逮捕する方法について説明します!
演習
- LAPSの実装
- ローカルWindowsの特権エスカレーションテクニック
- クレデンシャルの漏洩に対抗するWindowsのハードニング
- BloodHoundを使用した攻撃パスのマッピング
- ケルベロス攻略戦略
- ADにおけるラテラルムーブメント(横方向への移動)の検知
トピック
- 管理権限でのアクセスの防御
- Active Directoryのセキュリティ概念
- 最小特権の原則とUAC
- 演習:LAPSの実装
- Windowsにおける特権エスカレーション技術
- 演習:ローカルWindowsの特権エスカレーションテクニック
- ADに対する主要な攻撃戦略
- ローカル管理者権限を悪用して、より多くの資格情報を盗む
- 演習:クレデンシャルの漏洩に対抗するWindowsのハードニング
- BloodHound- ADの攻撃パスをマッピングする
- 演習:BloodHoundを用いた攻撃パスのマッピング
- ケルベロスアタック:Kerberoasting、シルバーチケット、Over-PtH
- 演習:ケルベロス攻撃戦略
- ラテラルムーブメント(横方向への移動)を検知するために
- ADのラテラルムーブメントを検知するための主要なログ
- 詐欺 - 敵を騙す
- 演習:ADにおけるラテラルムーブメント(横方向への移動)の検知
Action on Objectives, Threat Hunting, and Incident Response(目標達成に向けたアクション、脅威ハンティング、インシデントレスポンス)
5日目は、一連の攻撃の最終段階における敵の動きを阻止する以下の点に注力します。
- 攻撃者による「ドメイン支配」の状態を得る方法。これには、Golden Tickets、Skeleton Keys、DCSyncやDCShadowなどのディレクトリ・レプリケーション攻撃の使用が含まれます。
- データ持ち出しの検知と阻止の方法
- 脅威インテリジェンスを用いてCyberkillChainの防御側を支援する方法
- 防御側における効果的なインシデントレスポンス
演習
- ドメイン支配
- データ持ち出しの検知
- MISPとLokiによる脅威インテリジェンスの活用
- OSQueryを用いた環境の調査
- VolatilityとYarGenを使ったマルウェアの検出
トピック
- ドメイン支配
- ADの支配 -基礎戦略
- Golden Thicet,Skelton Key.DCSync,DCShadow
- 演習:ドメイン支配
- データ持ち出し
- 典型的な持ち出し戦略
- 演習:データ持ち出しの検知
- 脅威インテリジェンスの活用
- 脅威インテリジェンスの定義
- 演習:MISPとLokiによる脅威インテリジェンスの活用
- 脅威ハンティングとインシデントレスポンス
- 能動的な脅威ハンティングの戦略
- 演習:OSQueryを用いた環境の調査
- インシデントレスポンスのプロセス
- 演習:VolatilityとYarGenを使ったマルウェアの検出
Advanced Persistent Threat Defender Capstone
(APT攻撃の防御のまとめ)
最終日はチームごとに取組む「Defend-the-Flag」を通じてコースの仕上げに入ります。ここまで講義の中で共有していた最新のサイバーセキュリティコントロールを十分に理解し、習得できるようデザインされた複数のレベルとミッションを遂行することでチームは進歩することになります。
トピック
- セキュリティコントロールの適用
- 偵察
- 武装
- デリバリー
- エクスプロイト
- 設置
- Command & Control(C&C)
- 目的達成に向けた行動