NRIセキュアではNews BitesやOUCH! を日本語に翻訳して皆さまにお届けしています。
購読制を採っておりますので、
ご希望の方は、ニュースレター登録からお申し込みください。
Cloud Penetration Testing
Penetration Testing and Ethical Hacking
English2021年3月1日(月)~3月6日(土)
9:00~17:00
オンライン
■通常価格:810,000円(税抜)
演習で使用するノートPCをご準備下さい。受講に必要なPC環境についてご確認ください。
重要:以下の手順に従って設定されたPCを各自用意してください。
コース開始前の事前準備として、5つのことをお願いしています。早めの準備をすることで、トレーニングを最大限に活用することができます。まず、適切に設定されたノートPCの持参をお願いいたします。この資料では、クラスに必要なシステムのハードウェアとソフトウェアの設定について詳しく説明しています。また、準備に関してのビデオをhttps://sansurl.com/sans-setup-videosから閲覧することができます。
講義の全てのコンテンツに参加するためには、適切に設定されたノートPCが必要です。この指示に従わないと、このコースの演習に参加することができず、満足のいく授業を受けることができない可能性が高いです。そのため、以下の条件をすべて満たすシステムを用意することを強くお勧めします。
授業前にシステムのバックアップを取っておくことが重要です。また、機密データが保存されているシステムをお持ちにならないことを強くお勧めします。
CPU
・64 ビット Intel i5/i7 2.0+ GHz プロセッサ
・お使いのシステムのプロセッサが 64 ビット Intel i5 または i7 2.0 GHz 以上のプロセッサであること。
お使いの CPU と OS が 64 ビットのゲスト仮想マシンをサポートしている必要があります。
・VMware は、ホストが 64 ビットゲスト仮想マシンをサポートしているかどうかを検出する Windows 用のフリーツールを
提供しています。
BIOS
・"Intel-VT"を有効化
・システムの BIOS または UEFI の設定で、Intel の VT (VT-x) ハードウェア仮想化技術が有効になっている必要があります。
授業中は、システムのBIOSにアクセスできるようにしておく必要があります。
BIOS がパスワードで保護されている場合は、パスワードを知っている必要があります。
USB
・USB 3.0 Type-A ポート
・授業で使用するUSB3.0サムドライブから大容量のデータファイルをコピーするためには、USB3.0 Type-Aポートが
1つ以上必要です。USB ポートはハードウェアやソフトウェアでロックされていないこと。
新しいノートパソコンには、Type-Cポートしかない場合があります。その場合は、
USB Type-C to Type-Aアダプタを持参してください。
RAM
・8GB RAM(最低4GB)が必要です。
Windows10で確認するには、Windowsキーを押して「設定」を開き、「システム」→「バージョン情報」の
順にクリックします。ページにRAMの情報が表示されます。
Macで確認するには、ディスプレイの左上隅にあるAppleのロゴをクリックし、「このMacについて」をクリックします。
ハードドライブの空き容量
・ハードディスクに60GBの空き容量を確保することは、仮想マシンや配布する追加ファイルをホストする上で非常に重要です。
また、HDDよりも高速に仮想マシンを動作させることができるため、SSDの使用を強くお勧めします。
オペレーティングシステム
・Windows 10、macOS 10.15.x 以降の最新バージョン、または Linux で、後述する VMware の仮想化製品を
インストールして実行できること。最新の USB 3.0 デバイスを利用するためのドライバやパッチがインストール
されていることを確認するために、授業前にホスト OS をフルアップデートする必要があります。
また、Linux ホストを使用している場合は、適切なカーネルまたは FUSE モジュールを使用して
exFAT パーティションにアクセスできる必要があります。
以下の要件は、上記で提供された基本要件に加えて、以下の要件を満たす必要があります。
授業開始前に、仮想化ソフトウェアをインストールし、以下に記載されている追加のハードウェアとソフトウェアの要件を満たす必要があります。
これらの指示を注意深く読み、それに従わないと、本コースに不可欠なハンズオン演習に参加することができず、
満足のいかないまま授業が終了してしまいます
・ネットワーク、無線接続
・ワイヤレス 802.11 b, g, n,もしくはac のネットワークアダプタが必要です。
システムに内蔵されているワイヤレスアダプターでも、外付けの USB ワイヤレスアダプターでも構いません。
ワイヤレスアダプタを使用すると、ケーブルを接続することなくネットワークに接続することができます。
ネットワークケーブルを差し込まなくても、システム上でWeb閲覧ができれば、問題ありません。
・VMware Workstation Pro 15.5.x、VMware Player 15.5.x、Fusion 11.5.x 以上のいずれかのバージョンを授業前に
ダウンロードし、インストールしてください。ライセンス版をお持ちでない方は、VMware から 30 日間の無料トライアル版を
ダウンロードすることができます。VMwareのウェブサイトでトライアルに登録すると、期間限定のシリアル番号が
送られてきます。
・VirtualBoxやHyper-Vなどの仮想化ソフトウェアは、互換性やコース中のトラブルシューティングの観点から、
適切ではありません。
・Windows 10上のVMware Workstation ProおよびVMware Playerは、Windows 10のCredential GuardおよびDevice Guardの
技術との互換性がありません。お使いのシステムでこれらの機能が有効になっている場合は、このドキュメントの指示に
従って、クラスの期間中はこれらの機能を無効にしてください。
・ローカル管理者 - ローカル管理者権限を持つアカウントを持っていること。
・講座で使用するツールの中には、ローカル管理者権限を必要とするものがあります。これは絶対に必要です。
会社が許可しない場合は、別のシステムを持参するなどの手配をしてください。
・VPN の無効化 - 一部の演習では、エンタープライズ VPN クライアントを一時的に無効化する必要があります。
・エンタープライズ VPN クライアントは、講義に参加するためのネットワーク設定に支障をきたす可能性があります。
授業中は企業向け VPN クライアントをアンインストールするか、無効にしてください。
インストールしたままにしている場合は、授業中にアンインストールまたは無効化できるようにしてください。
・AV の無効化 ・一部の演習でアンチウイルスツールを一時的に無効化できるようにしてください。
・アンチウイルスツールを一時的に無効にする必要がありますので、その権限を持っていることを確認してください。
ほとんどのアンチウイルスツールは、関連するサービスやプロセスが終了しても機能しているため、
アンチウイルスサービスやプロセスを単に終了させることはしないでください。
多くの企業管理クライアントでは、アンチウイルスツールを無効にするには、管理者アカウントのパスワードとは
異なるパスワードが必要になる場合があります。アンチウイルスツールの管理者パスワードをお持ちください。
コースのメディアがダウンロード版で配信されるようになりました。授業で使用するメディアファイルは大容量で、40~50GBのものもあります。
ダウンロードに必要な時間は様々な要因に左右されるため、所要時間を見積もることはできませんが、非常に時間がかかってしまう場合もあります。
メールよりダウンロードリンクを取得したら、コースメディアのダウンロードを開始してください。コースメディアは授業初日すぐに必要になります。
開始前夜などにダウンロードを開始すると、失敗する可能性が高くなりますので、時間に余裕をもってご準備ください。
SANSでは、PDF形式のテキストの提供を開始しました。さらに、一部のクラスではPDFに加えて電子ブックを使用しています。
電子ブックを使用するクラスは今後増えていく予定です。セカンドモニターやタブレット端末を使って、授業の資料を見られるようにしておくと便利です。
ノートパソコンの仕様についてご質問がある場合は、laptop_prep@sans.orgにご連絡ください。
コンピューティングのワークロードは、何年も前からクラウドに移行しています。アナリストは、ほとんどの企業が近い将来、パブリッククラウドやその他のクラウド環境にワークロードを置くようになるだろうと予測しています。クラウドファーストでスタートした組織が、最終的にはハイブリッド・クラウドとローカル・データセンターのソリューションに移行するかもしれませんが、クラウドの利用が大幅に減少することはないでしょう。そのため、組織のリスクを評価する際には、クラウドで提供されるサービスのセキュリティを評価する準備をしておく必要があります。このコースでは、クラウドに焦点を当てた最新の侵入テスト技術と、クラウド環境の評価方法を学びます。
クラウドのセキュリティに関するよくある質問は、"クラウドに特化したペネトレーションテストのトレーニングは必要ですか?"と "他のペンテストのトレーニングで目的を達成し、クラウドに適用できますか?"です。どちらの質問に対する答えもイエスですが、その理由を理解するためには、クラウドに特化したペネトレーションテストを実施することの明確な重要性を知る必要があります。クラウド・サービス・プロバイダーの環境では、ペネトレーション・テスターは従来のデータセンターの設計には遭遇しません。具体的には、オペレーティング・システムの所有者、インフラストラクチャの所有者、アプリケーションがどのように実行されているかなど、従来の環境とは大きく異なる可能性が高いのです。アプリケーション、サービス、およびデータは、各クラウド・プロバイダーに固有の共有ホスティング環境でホストされることになります。
クラウド・ネイティブの違いは何でしょうか?クラウドファーストとクラウドネイティブアプリケーションとは何かについてのガイダンスを提供するために設立されたCloud Native Computing Foundationは、アプリケーションと環境はコンテナ、サービスメッシュ、マイクロサービス、不変性インフラストラクチャ、宣言型APIで構成されると述べています。
これらの項目の中には、非クラウド環境でも利用可能なものもありますが、クラウドでは、これらの機能をさらに分解して、クラウド事業者が利用可能なサービスにしています。この環境では、複雑さの例として、仮想マシンやコンテナ、あるいは「サーバーレス」と考えられているホスティング領域などのマイクロサービス・アーキテクチャがあります。
したがって、このような環境を適切に評価し、法律の範囲内にとどまり、レガシーな攻撃を実行するための方法を習得するためには、さらなる複雑さに対処する必要があります。
SEC588では、これらのトピックに加えて、マイクロサービス、インメモリデータストア、クラウド内のファイル、サーバーレス機能、Kubernetesメッシュ、コンテナなど、クラウドに登場する新しいトピックにも取り組んでいきます。このコースでは、Amazon Web ServicesとMicrosoftが市場の半分以上を占めていることを考えると、特に重要なAzureとAWSのペネトレーションテストも具体的に取り上げています。このコースの目的は、これらの技術を実演することではなく、これらのサービスが安全でないまま放置された場合に組織が直面する可能性のある真のリスクをどのように評価し、報告するかを教えることにあります。
受講者に提供されるものとして、以下があります。
・クラス内のバーチャルトレーニングラボを利用して、30以上の詳細なラボを行うことができます。
・ラボで使用しているツールが多く入ったUSB
このコースでは、攻撃に焦点を当てたセキュリティ実務者と防御に焦点を当てたセキュリティ実務者の両方が、脆弱性、安全でない構成、および組織に関連するビジネスリスクを深く理解することで、大きな利益を得ることができます。
このコースは、侵入テスト担当者、脆弱性アナリスト、リスクアセスメント担当者、DevOpsエンジニア、site reliability エンジニアなど、多くの方にメリットがあります。
・クラウドベースのペネトレーションテスト
・クラウド環境を評価し、脆弱性を特定してビジネスに還元
・クラウド環境がどのように構築されているのか、また、エビデンス収集のためのスケールファクタを身をもって
知ることができる。
学んだことをすぐに応用できるようになります。SEC588では、現在市場に出回っている2大クラウドプラットフォームであるAmazonとMicrosoft Azure環境におけるセキュリティリスクの評価方法を取り上げています。
最初にクラウド侵入テストのクラスを作ることを依頼されたとき、多くの質問がありました。このような「ニッチな」クラスを開催する余地があるのだろうか?私たちは、他の侵入テストクラスではカバーしていない新しい素材やトピックを使ったクラスが必要だと感じていました。このクラスでは、ほとんどの人が想像もしなかった方法でその必要性を満たしたと思います。このクラスでは、これまでの常識を覆し、クラウド環境のテスト、評価、安全性確保のお手伝いをすることができます。
- Moses Frost
概要
このセクションでは、クラウドに焦点を当てたペネトレーションテスト評価の最初のフェーズを実施します。クラウドサービスプロバイダのサービス規約、境界点、制限がどのように機能するかを理解します。また、オープンデータベースやインターネットレベルのスキャンが、ターゲットとなるインフラや脆弱性を発見するために、ほぼリアルタイムで、また、過去の履歴に基づいてどのように利用されているかについての実習も行います。このコースのセクションでは、ウェブの規模が偵察にどのような影響を与えるのか、そしてそれにどのように対処するのがベストなのかを説明します。演習では、コースを通して有用な成果物の発見とラボを実施します- バーチャルハッカーの宝探しです!
演習
・GoBusterなどのクラウドに特化した列挙ツールを利用したディスカバリー
・MassCAN等のネットワークスキャナを用いたポートスキャニング手法
・Gitリポジトリでアーティファクトを発見する
・RedisとNoSQLを用いたデータベースへの特権エスカレーション
・目撃・視覚偵察
トピックス
クラウドアセスメントの方法論
インフラストラクチャクラウドコンポーネント
利用規約と区分けポイント
ドメインと証明書の列挙
MassCANとNmapによるホストディスカバリー
Gitミラーリング
クラウドのサービスとデータベース
ビジュアルトラッキングによる偵察とディスカバリー
概要
このセクションでは、クラウドサービスプロバイダのAPIを介したポートレベルでのマッピング、アプリケーションレベルでのマッピング、インフラストラクチャマッピングの違いを説明します。このセクションは、外部から内部への偵察と発見をどのように行うかを示すラボが特徴です。次に、非常に重要で相互に関連した 3 つのトピックに移ります:API の認証と認可、未公開の API の特定とその使用方法、特権と ID 管理を悪用する方法です。Amazon Web Servicesや他のクラウドプロバイダーは、RBACシステムを採用しており、多くのサービスが認証チェックのために利用できるようになっています。このセクションの最後の部分では、RBAC の特権と、それを悪用して特権を昇格させる方法について説明します。ラボでは、低権限のユーザがLambd関数を実行したり、s3バケットを列挙したり、ec2インスタンスを実行したり、機密データを復号化したりする方法を紹介します。
演習
・cURLによるWebサービスのマッピング
・AWS CLI のユーザと特権の列挙
・ドキュメント化されていないAPIの発見と利用
・S3バケットを探してEC2を実行するためのAWS IAM の特権エスカレーション
・KMSを実行するための特権エスカレーションとLambda関数
・PACUによる自動化
トピックス
・API
・クラウドSDK
・AWS IAMと特権
・強力なワードリストの構築と活用
・トークンをAccessに変換
・AWS IAMによる永続性
概要
Amazon Web Servicesが最大のシェアを誇る一方で、多くの大企業がオンプレミスのワークロードをクラウドに移行しています。Microsoft Azureは、他の多くのクラウドプロバイダーと同等でありながら、独自のサービスを利用しているところもあります。Azure Active Directoryをはじめ、Office365やExchange、さらにはMicrosoft Graphなどのユーザーサービスなどが独自のサービスです。ここでは、Windowsマシンやコンテナ、サービスを提供しているAzure環境を紹介します。これまでのコースのセクションと同様に、環境はライブで実行されており、それぞれが独自のアーティファクトのセットを持っています。我々は、制御された方法でAzureサービスを引き継ぐために、同様のCLIツールを活用します。
演習
Azure CLI ツール、仮想マシン、Blob Storesに慣れ親しむ
Azureでの特権エスカレーション
Microsoft Graph API
Windows コンテナ
Azure Active DirectoryとSAML
クラウドのボリュームシャドウコピー
トピックス
・Azure Active Directory
・VHDとボリュームシャドウのコピー
・SAMLとMicrosoft ADFS
・Windows コンテナ
・Azureの役割
・Microsoft Graph API
・Office365
概要
本講座の第4節では、クラウドネイティブアプリケーションと呼ばれるものに焦点を当てています。特にウェブ・アプリケーション自体を取り上げますが、クラウド・ネイティブ・アプリケーションがどのように動作し、どのように評価することができるのかを示すように設計されています。最近では、コンテナにパッケージ化されたマイクロサービス指向のアプリケーションが多くなってきています。これらのアプリケーションには、それぞれのニュアンスがあります。これらのアプリケーションは通常、Kubernetes のようなシステムが使用されていることを示すようなサービスメッシュでデプロイされることが多いでしょう。このセクションでは、以下のような多くの疑問を探っていきます。
私の環境では、どのアプリケーションの脆弱性が危険なのか?
サーバーレスとLambdaはアプローチをどのように変えるのか?
管理されたKubernetesと管理されていないKubernetesは、テストをどのように変えるのか?
マイクロサービスアプリケーションはどのように動作するのか?
CI/CDパイプラインとは何か?どう悪用できるのか?
演習
・CI/CDのバックドア
・ルートと隠れたコンソールの発見
・クラウド環境のSSRFの影響
・コマンドラインインジェクション
・SQL インジェクション
・コンテナ脱出用Peirate
・LambdaShellを使ったファンクションレス環境のインジェクション
トピックス
・AWS IAMメタデータのディスカバリー
・Kubernetesとエスケイプ
・TravisCIとGitのアクション
・コンテナ間のラテラルムーブメント
・特権のあるコンテナと非特権コンテナ
概要
このコースの最終セクションでは、クラウドにおけるエクスプロイトとレッドチーミングの世界を探ります。この時点までに、対象とする環境を非常によく理解できるようになっているので、見つけたものをどのようにエクスプロイトし、環境の中にさらに進出し、最終的には横方向に移動する方法を探っていきます。これには、コンテナやサービスメッシュからの脱出や様々な方法でデータを流出させることが含まれており、これらの攻撃が実際のビジネスに与える影響を示しています。
演習
・クレデンシャル・スタッフィングとパスワード手法の活用
・トークンを用いたWebアプリケーションのバックドア
・Heavy Shell と Lite Shell
・ロードバランサーとプロキシの悪用
・Windowsのバックドア
トピックス
・レッドチームと方法論
・Heavy Shell と Lite Shell
・データを盗む
・検知回避
概要
最終日には、新しいクラウド環境でエンドツーエンドのアセスメントをチームで完了させましょう。アプリケーションと環境は、すべて実世界の環境を模して新しく設計されています。この日は、1週間分の知識をまとめ、理論と実践を強化し、エンドツーエンドのテストをシミュレートします。また、開発者・事務の方にも読みやすい方法でレポートを書いてもらいますので、キャップストーンとなるイベントでもあります。いくつかのルーブリックと、シナリオを通して作業する方法を提供します。常に新しくて斬新な解決策がありますので、受講生同士で学んだことや、どのようにやったかを共有することを望んでいます。