お問い合わせ

コース概要

ITセキュリティおよびセキュアコーディングの基礎知識

  • 脅威モデリングの基礎:STRIDE、攻撃対象領域、権限昇格への経路
  • セキュアなソフトウェア開発ライフサイクルへの統合:早期対策の導入や脅威に対応した設計レビュー、多層防御
  • 最小特権の原則や契約に基づく防御手法、セキュアなデフォルト設定について理解する
  • 演習:.NETマイクロサービスと脅威モデルの対応付けを行い、必要となるアーキテクチャ上の制御方法を明らかにする

ASP.NETにおけるWebアプリケーションセキュリティ

  • ASP.NETのリクエストパイプラインやミドルウェアの実行順序、フィルターによる処理ポイントについて学ぶ
  • HTTPプロトコルのリスク:ヘッダーインジェクション、リクエストスモーグリング、CORS設定の不備などを把握する
  • セッション管理や状態維持、クッキーの安全な取り扱い手法を習得する
  • 安全なリモートプロシージャコールおよび外部API利用パターンについて理解する
  • 演習:サンプルのASP.NETアプリケーション内にある脆弱なミドルウェアチェーンを悪用・修正する方法を体験する

.NETにおけるセキュリティ設計および標準機能

  • CLRのセキュリティモデル:証拠情報、権限設定やCode Access Security(CAS)の進化について学ぶ
  • ASP.NET Core Identityや認証方式、トークンベース型のセキュリティ仕組み(JWTやOAuth2、OpenID Connect)を習得する
  • データ保護APIによる暗号化処理、鍵のローテーションおよび安全なシリアライゼーション手法を把握する
  • .NET内で利用可能な暗号アルゴリズム:乱数生成器やハッシュ関数、共通鍵/公開鍵暗号化処理および署名検証の使い方を理解する
  • 演習:マイクロサービス間で安全なトークン発行・鍵のローテーション・データ保護手法の実装手順を体験する

よく見られるコーディングミス、脆弱性およびその対策方法

  • .NET環境で生じやすいシリアライゼーション攻撃、ViewStateの改ざん、文字列終端処理時のオーバーフロー問題などを把握する
  • 設定ファイル(web.config/appsettings.json)の変更逸脱、環境変数漏洩、機密情報管理に関するリスクについて理解する
  • C#を用いたデータアクセスやルーティング処理においてSQLインジェクション、コマンド実行攻撃、XSSおよびLDAPによる脆弱性の発生要因を把握する
  • 不適切なデフォルト設定やソースコードへのパスワード直書き、エラーメッセージ記述ミスによる情報漏洩リスクについて学ぶ
  • 演習:脆弱性を含む.NETモジュールの逆解析手順、安全なコーディング手法の適用、静的/動的分析ツールを用いた修正確認方法を体験する

セキュリティテスト、検証および継続的な改善策

  • 静的アプリケーションセキュリティテスト(SAST):Roslyn分析器やSecurity Code Scanの使い方、CI/CD環境での統合手順について学ぶ
  • 動的アプリケーションセキュリティテスト(DAST):OWASP ZAPやBurp Suiteのワークフロー、自動スキャン手法を習得する
  • 実行時保護手段:Application Guardrails機能、メモリ安全対策、安全なログ記録・監査方法について理解する
  • .NET/ASP.NET関連のセキュリティアドバイザリーやパッチ配布情報の把握手順、依存関係管理手法を習得する
  • 演習:.NETソリューション向けに事前コミットおよびパイプライン内で実施可能なセキュリティ検査機構の構築方法を体験する

参考情報源とセキュア開発エコシステムについて

  • マイクロソフト公式のセキュリティガイダンス、.NET/ASP.NET関連文書や強化手法に関する資料を把握する
  • CVEデータベースや公開セキュリティアドバイザリー情報、オープンソースコンポーネントの脆弱性報告手順について理解する
  • 安全なライブラリ群:PGP、暗号処理用モジュール、認証機能構築ツールや標準に適合した暗号技術などを把握する
  • 社内でのセキュアコーディング基準の策定手法、開発者の育成方法およびセキュリティ啓発活動について学ぶ
  • 演習:個人の目的に応じたセキュア開発ツール群の選択・導入手順や継続的な監視体制構築法を体験する

要求

  • C#プログラミングおよび.NETフレームワークに関する確かな基礎知識が必要です
  • Razor Pages、MVC、またはMinimal APIsといったASP.NETによるWeb開発の経験があること
  • HTTPやルーティング、ウェブサーバーの基本的な仕組みについて理解していること
  • セキュリティ関連の認定資格は必須ではありませんが、実務レベルのコーディング経験があることが期待されます
 14 時間

参加者の人数


参加者1人あたりの価格

お客様の声 (5)

今後のコース

関連カテゴリー