ニュースレター登録
資料ダウンロード
お問い合わせ

SECURITY 522

Application Security: Securing Web Apps, APIs, and Microservices

Penetration Testing and Ethical Hacking

English
日程

2022年8月29日(月)~9月3日(土)

期間
6日間
講義時間

1日目:9:00-17:30
2日目~6日目:9:30-17:30

受講スタイル
Live Online
会場

◆LiveOnline(教室あり)

 渋谷ソラスタコンファレンス(https://shibuya.infield95.com/
 東京都渋谷区道玄坂 一丁目21番1号 渋谷ソラスタ 4階

◆LiveOnline(教室なし)

オンライン

※SEC522はLiveOnline形式ですが、教室あり・教室なしを選択してお申込みいただけます。

GIAC認定資格
GWEB
講師
言語
英語 英語教材・同時通訳
定員
40名
CPEポイント
36 point
受講料

960,000円(税込 1,056,000円)

申込締切日
2022年8月19日(金)
オプション
  • GIAC試験  125,000円(税込み 137,500円)
  • OnDemand  115,000円(税込み 126,500円)
  • NetWars Continuous  200,000円(税込み 220,000円)

※オプションの価格は、コース本体と同時にお申し込みいただく場合のみ有効です。

※コース本体のお申し込み後から講義開始までの間に、GIAC試験オプションを追加される場合は、事務手数料10,000円(税込11,000円)をいただきます。

※講義開始後のGIAC試験のお申込みは、こちらのページ(英語)をご参照のうえ、GIACへ直接お申し込みください。

受講に必要なPC環境

演習で使用するノートPCをご準備下さい。受講に必要なPC環境についてご確認ください。

SEC522 PC設定詳細

重要:以下の手順に従って設定されたPCを各自用意してください。
講義の全てのコンテンツに参加するためには、適切に設定されたノートPCが必要です。この指示に従わないと、このコースの演習に参加することができず、満足のいく授業を受けることができない可能性が高いです。そのため、以下の条件をすべて満たすシステムを用意することを強くお勧めします。また、利用するノートPCには個人情報や企業の情報を含まない、安全なものである必要があります。

システムのハードウェア要件

CPU

  • 64 ビット Intel i5/i7 2.0+ GHz プロセッサ
  • CPUOS64ビットクエストの仮想マシンをサポートしている必要があります。
  • Appleユーザーは、OSのバージョンが少なくとも11.6+であることを確認してください。

BIOS

  • Intel VT (VT-x) ハードウェア仮想化技術が、システムの BIOS または UEFI 設定で有効になっている必要があります。
  • 講義中は、システムのBIOSにアクセスできる必要があります。
  • BIOSがパスワードで保護されている場合は、そのパスワードが必要です。

USB

  • USB 3.0 Type-A ポート

RAM

  • 8GB RAM以上が必要です。

ハードドライブの空き容量

  • ハードディスクに60GB以上の空き容量を確保してください。

オペレーティングシステム

  • Windows 10、macOS 11.6.x 以降の最新バージョン、または Linuxの最新版で、後述する VMware の仮想化製品をインストールして実行できること(Windowsを推奨)

注意 : M1プロセッサ搭載のapple社製品は現時点で必要な仮想化を行うことができないため、使用できません。

 

追加のハードウェア要件

  • ワイヤレス 802.11 BGN または AC ネットワークアダプターが必要です。

追加のソフトウェア要件

  • VMware Workstation Pro 15.5.xVMware Player 15.5.xFusion 11.5 以上のいずれかのバージョンを授業前にダウンロードし、インストールしてください。ライセンス版をお持ちでない方は、VMware から 30 日間の無料トライアル版をダウンロードすることができます。VMwareのウェブサイトでトライアルに登録すると、期間限定のシリアル番号が送られてきます。
  • Windows 10上のVMware Workstation ProおよびVMware Playerは、Windows 10Credential GuardおよびDevice Guardの技術との互換性がありません。お使いのシステムでこれらの機能が有効になっている場合は、クラスの期間中はこれらの機能を無効にしてください。

LiveOnlineでのコースメディアの事前準備、テキストについて

コースのメディアがダウンロード版で配信されるようになりました。授業で使用するメディアファイルは大容量で、4050GBのものもあります。ダウンロードに必要な時間は様々な要因に左右されるため、所要時間を見積もることはできませんが、非常に時間がかかってしまう場合もあります。メールよりダウンロードリンクを取得したら、コースメディアのダウンロードを開始してください。コースメディアは授業初日すぐに必要になります。開始前夜などにダウンロードを開始すると、失敗する可能性が高くなりますので、時間に余裕をもってご準備ください。SANSでは、PDF形式のテキストの提供を開始しました。さらに、一部のクラスではPDFに加えて電子ブックを使用しています。電子ブックを使用するクラスは今後増えていく予定です。セカンドモニターやタブレット端末を使って、授業の資料を見られるようにしておくと便利です。

コース概要

来るべきWeb攻撃への備え、このコースではその方法をお教えします。

このコースでは、Webアプリケーションのリスクと、暴露または漏洩する可能性のある機密データの範囲を説明します。さらに、これらのリスクを軽減し、残存するリスクを効果的に評価し、説明する方法について、実践で役に立つ解決策を提供します。

このコースの受講者は、学んだことをすぐに実践することで、Webアプリケーションの安全性を高めることができるだけでなく、ソフトウェア開発ライフサイクルの早い段階でセキュリティを追加し、セキュリティ施策の導入とテストを「シフティング・レフト」することによって効率的に行うことができ、組織の時間、費用、リソースを節約することができるようになるのです。

 

WebアプリとWebアプリのセキュリティについてすべてを知りたければ、これは完璧なコースです!」
- Chris Kansas, ThreatX

ポイント

  • PCI DSS 6.5要件に準拠しています
  • アプリケーション全体のセキュリティリスクを低減し、企業の評判を守ることができます
  • セキュリティの問題を早期かつ迅速に解決する「シフティング・レフト」の考え方を採用しており、これによりコストのかかる作業を回避することができます
  • APIやマイクロサービスを使用したモダンなアプリを安全に採用することができます
  • このコースは、GWEB認定資格の取得を目指すコースです

習得できるスキル

  • OWASP Top 10で指定された攻撃から防御する方法
  • インフラストラクチャのセキュリティと構成管理
  • クラウドコンポーネントのWebアプリケーションへの安全な統合
  • 認証と認可のメカニズム(シングルサインオンのパターンを含む)
  • クロスドメインWebリクエストのセキュリティ
  • HTTP ヘッダーの保護
  • SOAP、RESTGraphQL API の防御
  • マイクロサービスアーキテクチャの安全な実装
  • SQLインジェクション、XSSCSRFなどの入力関連の不具合に対する防御

ハンズオントレーニング

提供されるVMラボ環境には、攻撃と防御メカニズムの効果を探るための現実に即したアプリケーション環境が含まれています。演習はチャレンジ形式で構成され、途中にはヒントが用意されています。実践的なハンズオン演習により、受講者は会社に戻ってからすぐに実践できるような経験を積むことができます。授業のセクション1からセクション5まで20のラボがあり、最後のセクションにはDefending the Flagというキャプストーン演習があり、34時間の時間が設けられています。

  • SECTION 1:HTTPの基本、HTTP/2のトラフィック検査とスプーフィング、環境の分離、SSRFとクレデンシャルステーリング
  • SECTION 2:SQLインジェクション、クロスサイトリクエストフォージェリ、クロスサイトスクリプティング、Unicode、ファイルアップロード
  • SECTION3:認証の脆弱性と防御、多要素認証、セッションの脆弱性とテスト、認可の脆弱性と防御、SSLの脆弱性とテスト、Webアプリケーションにおける適切な暗号化
  • SECTION4:WSDL列挙、クロスドメインAJAX、フロントエンド機能とCSP(コンテンツセキュリティポリシー)、クリックジャッキング
  • SECTION 5: デシリアライゼーションとDNSリバインディング、GraphQLAPIゲートウェイとJSONSRIとログレビュー
  • SECTION 6: Defending the Flag

「ラボは楽しく、やりがいのあるものでした。」- Linh Sithihao, Dignity Health

「ラボはよく考えられていて、実践的な知識を学ぶことができる。」- Barbara Boone, CDC

「実世界の事例を使った良い実習がたくさんあった」- Nicolas Kravec, Morgan Stanley

「ラボはとても有益で、基本を学ぶのに役に立ちました。」- Omar Alshair, TRA

「演習は、教材を理解するための良い指標となります。私には完璧に機能しました"- Robert Fratila, Microsoft

シラバス概要

  • SECTION 1 - Web アプリケーションのアーキテクチャ、脆弱性、および設定管理について理解する
  • SECTION 2 - 入力関連の脅威を検出し、緩和し、防御する
  • SECTION3:認証、認可、暗号化
  • SECTION 4 - モダンなスクリプトエンジンを使用したフロントエンドのセキュリティ
  • SECTION5 - マイクロサービスアーキテクチャを用いたREST & GraphQL API
  • SECTION6 - Defending the Flag

提供される教材

  • 印刷されたコースウェアと電子コースウェア
  • 100ページ以上の詳細なステップバイステップの解説を含む演習用ワークブック
  • Linuxオペレーティングシステムと複数のコンテナ環境からなる仮想マシンで、受講生がクラス演習中に様々な脆弱性の状態をシミュレートします。
  • コースで取り上げた最も重要な防御テクニックをチェックリスト形式でまとめたポスター(組織のウェブ防御フレームワーク/スタンダードとして使用可能)
  • 全講座のMP3音声ファイル

本講座受講後におすすめのコース

DevSecOpsのプロフェッショナル向け

  • SEC540: Cloud Security and DevSecOps Automation | GCSA
  • SEC584: Cloud Native Security: Defending Containers and Kubernetes

オフェンシブオペレーションのプロフェッショナル向け

  • SEC584: Cloud Native Security: Defending Containers and Kubernetes
  • SEC642: Advanced Web App Penetration Testing, Ethical Hacking, and Exploitation Techniques

※SEC522は、GIAC(GWEB)認定試験対象コースです。

このクラスでは、Webアプリケーション技術およびHTMLJavaScriptなどの概念の基本的な理解が必要です。より多くの方に受講していただくために、本講座ではプログラミング言語にとらわれない議論を展開します。受講者は、最新のWebアプリケーションで使用されるデータベース(SQL)やスクリプト言語などの概念をある程度理解している必要があります。

※SEC522は、GIAC(GWEB)認定試験対象コースです。

GIAC Certified Web Application Defender 認定資格は、セキュリティ問題につながる一般的な Web アプリケーションのエラーに対処するために必要なセキュリティ知識とスキルの習得を証明することができる資格です。合格者は、入力検証の欠陥、クロスサイトスクリプティング(XSS)、SQLインジェクションを検出・防止するために最新のツールを使用した実地経験があり、さらに認証、アクセス制御、セッション管理、それらの弱点、最善の防御方法について深く理解していることが必要です。GIAC Certified Web Application Defender (GWEB) を有する者は、ウェブアプリケーションを保護し、既存のウェブアプリケーションのセキュリティの弱点を認識し緩和するための知識、スキル、および能力を有していることが認められます。

  • アクセス制御、AJAX技術とセキュリティ戦略、セキュリティテスト、認証
  • クロスオリジンポリシー攻撃とその緩和、CSRF、暗号化と機密データの保護
  • ファイルアップロード、レスポンスの準備、プロアクティブな防御、入力関連の不具合と入力バリデーション
  • モダンアプリケーションフレームワークの問題とシリアライゼーション、セッションセキュリティとビジネスロジック
  • アプリケーションとHTTPの基本、Webアーキテクチャ、構成、セキュリティ

講義内容の一例(講義を受講してできるようになること)

「多くのWebサイトが危険にさらされています。SEC522の目標は、実際に効果のある防御策で受講生を武装させることです。これらのテクニックは、オンラインで公開されている貴重な資産を保護するための役割に関係なく、すぐに適用することができます。Webアプリケーションの防御は、非常に多くの種類の脆弱性と攻撃経路があるため、非常に困難であることは誰もが知っています。一つでも見落とせば、あなたのウェブアプリケーションは攻撃者の所有物になってしまいます。防御の境界線は、Webアプリケーションのコーディングの側面だけでなく、はるかに拡張する必要があります。このコースでは、様々な脆弱性について説明し、受講生が直面している問題についてよく理解できるようにします。そして、防御戦略やトリック、さらにサイトの安全性を高めるのに役立つことが証明されている包括的なアーキテクチャを提供します。また、他の人の失敗から学び、防御をより強固にできるよう、コース全体にケーススタディをいくつか盛り込みました。授業中の演習は、理解をさらに深め、実践を通してこの知識を定着させることができるように工夫されています。コース終了時には、既存のアプリケーションをロックダウンし、今後より安全なアプリケーションを構築するための防御戦略について、実践的なスキルと理解を身につけることができます。」

- Jason Lam and Johannes Ullrich

 

UdemyYouTubeなどのプラットフォームでは、本コースの講師のような知識を持った講師はあまりいないので、このコースを受講して本当によかったと思っています。彼はとても知識が豊富で、質問をすると、そのコンセプトについて深く掘り下げて説明してくれます。私が一番気に入っているのは、彼のプロとしての現場での経験が、実例をより深く理解するのに役立っていることです。」

- Alisa C.

シラバス

  • Day1
  • Day2
  • Day3
  • Day4
  • Day5
  • Day6

Web Fundamentals and Secure Configurations

概要

コースの最初のセクションでは、HTTPプロトコルやWebアプリケーションを動作させる様々なメカニズムなど、Webアプリケーションの基本を学ぶことで、コースの舞台を整えていきます。その後、アプリケーションの安全性確保に大きな役割を果たすWebアプリケーションのアーキテクチャに移行します。

自動化が開発プロセスの重要な要素になってきているため、インフラストラクチャと開発コンポーネントは、設定によって構築され、維持されます。これらのコンフィギュレーションの管理は、アプリケーションのセキュリティにとって非常に重要です。本書では、インフラストラクチャからクラウド環境、Webサーバレベルの設定まで、Webアプリケーション関連の設定を保護するためのベストプラクティスのプロセスや重要な側面を取り上げ、貴重なWebアプリケーションの設定と関連するサポート環境を保護できるようにします。

演習

  • HTTPの基礎知識
  • HTTP/2のトラフィック検査とスプーフィング
  • 環境の分離
  • SSRFとクレデンシャルステーリング

トピック

  • HTTPプロトコルの紹介
  • Web認証技術の概要
  • Webアプリケーションのアーキテクチャ
  • 最近の攻撃傾向
  • Webインフラセキュリティ/Webアプリケーションファイアウォール
  • Webアプリケーションの設定管理

Input Related Defenses

概要

2章では、外部入力から発生する脅威に対する防御について説明します。現代のアプリケーションは、他のアプリケーション、ブラウザ、ウェブサービスなど、複数のソースから入力を受け入れなければなりません。一般的な入力に関連する攻撃の基本的な仕組みを説明するとともに、その後、大規模なアプリケーションで機能する実例と防御パターンを紹介します。入力関連の欠陥は、OWASPのトップ10リストで複数の場所を占めており、これらの入力関連のトピックを網羅することは、これらの共通のリスクに対する優れた防御基盤を形成しています。

演習

  • SQLインジェクション
  • クロスサイトリクエストフォージェリ
  • クロスサイトスクリプティング
  • Unicodeとファイルアップロード

トピック

  • Webアプリケーションにおける入力関連の脆弱性
  • SQLインジェクション
  • クロスサイトリクエストフォージェリ
  • クロスサイトスクリプティングの脆弱性と防御
  • Unicode処理対策
  • ファイルアップロードの処理
  • ビジネスロジックと並行処理

Authentication and  Authorization 

概要

セクション 3 は、ウェブアプリケーションにおける認証と認可についての議論から始まり、悪用例と短期的・長期的に実施可能な緩和策を紹介します。認証におけるパスワードへの依存度を下げる傾向を考慮し、パスワードレス認証と多要素認証の最新パターンを取り上げます。

また、新世代のシングルサインオンソリューションであるOAuthや、JWTOpenID Connectなどの関連技術もトピックとしています。これらの認証/認可システムを使用することの意味と、回避すべき一般的な問題を取り上げます。

このセクションの最後には、最新のアプリケーションにおける暗号化の使用について、転送中のデータと保管中のデータの保護の観点から詳しく説明します。

演習

  • 認証
  • セッションのフィクセイション
  • OAuthとアクセス制御
  • Wiresharkを使ったSSLトラフィックの検査

トピック

  • 認証の脆弱性と防御
  • 多要素認証
  • セッションの脆弱性とテスト
  • 認証の脆弱性とその対策
  • SSL脆弱性とテスト
  • Webアプリケーションにおける適切な暗号化の使用

Web Services and Front-End Security

概要

このセクションではまず、 SOAP ベースの Web サービスの概念について説明します。次に、CORS (Cross Domain Requests) などのセキュリティに関連する JavaScript のフロントエンドの使用に焦点を当てます。AJAXベースのWebアプリケーションを実装するためのセキュリティ問題、緩和策、および一般的なベストプラクティスを取り上げます。また、実際の攻撃とその傾向について検証し、お客様が何から保護されているかを正確に理解できるようにします。最後に、コンテンツセキュリティポリシーのようなクライアントサイドのヘッダーベースの防御メカニズムを複数紹介し、アプリケーションのセキュリティをさらに強化します。これらのヘッダーがどのようにアプリケーションのセキュリティレベルを向上させるかについて詳しく説明しますが、これらのメカニズムの潜在的な欠点も見ていきます。

演習

  • WSDL列挙型
  • クロスドメインAJAX
  • フロントエンドの機能とCSP(コンテンツセキュリティポリシー)
  • クリックジャッキング

トピック

  • Webサービスの概要
  • XMLのセキュリティ
  • AJAXの攻撃動向と防御策
  • モダンなJavaScriptフレームワーク
  • ブラウザの機能と防御
  • コンテンツセキュリティポリシーなど、ブラウザベースの防御策

APIs and Microservices

概要

このセクションでは、最近のアプリケーションで一般的な攻撃として急増しているデシリアライズのセキュリティ問題から始まります。また、Webアプリケーションの始まり以来、アプリケーションの世界に残っているDNSリバインディングのトピックも取り上げます。そして、REST APIGraphQL APIベースのWebサービスやAPIにも焦点を当てます。これらの技術は、現代のあらゆるアプリケーションに存在し、多くの潜在的なセキュリティの落とし穴を持っています。さらに、マイクロサービス・アーキテクチャと、この最新のアーキテクチャのセキュリティへの影響についても議論を広げます。これらの技術的なトピックをすべて網羅し、一般的な攻撃と、それらを安全に保つための現在のベストプラクティスをカバーします。最後に、運用セキュリティ、セキュリティテスト、ログの3つのプロセスを紹介し、1日を締めくくります。

演習

  • デシリアライゼーションとDNSリバインディング
  • GraphQL
  • APIゲートウェイとJSON
  • SRIとログレビュー

トピック

  • デシリアライゼーション
  • RESTのセキュリティ
  • GraphQLのセキュリティ
  • マイクロサービス
  • 運用セキュリティ
  • セキュリティテスト
  • ロギングとエラー処理

DevSecOpsとDefending the Flag

概要

このセクションでは、まずDevSecOpsの概念と、それをエンタープライズ環境でのWeb開発と運用に適用する方法を紹介します。このセクションの主な活動は、コース全体を通して学んだ教訓をまとめ、実践的な実装で補強するラボ体験です。受講者は、どの脆弱性が本物で、どの脆弱性が偽陽性であるかを判断し、脆弱性を軽減する必要があります。学生はこれらの実習を通して、オペレーティングシステムとウェブサーバのセキュリティ確保に始まり、アプリケーション言語の設定における構成の問題点の発見、サイト上のコーディングの問題点の発見と修正など、ウェブアプリケーションのセキュリティを確保する方法を学びます。

演習

  • Defending the Flag

トピックス

  • DevSecOps

NRIセキュアではNews BitesやOUCH! を日本語に翻訳して皆さまにお届けしています。
購読制を採っておりますので、
ご希望の方は、ニュースレター登録からお申し込みください。