Slide 1

Slide 1 text

AWS re:Inforce 2025 振り返り勉強会 @札幌 Amazon Inspector Code Security で実現するシフトレフト・セキュリティ 2025年7月1日 中川翔太

Slide 2

Slide 2 text

中川翔太(Shota Nakagawa) クラスメソッド株式会社 クラウド事業本部コンサルティング部 ソリューションアーキテクト 仕事: AWS全般のお悩み相談 略歴: N/W製品ヘルプデスク→AWS運用→現職 趣味: 道の駅巡り、キャンプ、ダーツ 活動: ・2025 Japan AWS Top Engineers ・2025 Japan All AWS Certifications Engineers 自己紹介 2

Slide 3

Slide 3 text

1. ソフトウェア開発ライフサイクルにおけるAmazon Inspector 2. Code Securityの機能紹介 3. 他のサービスとの棲み分け? 4. まとめ 本日のアジェンダ 3

Slide 4

Slide 4 text

ソフトウェア開発ライフサイクルにおけるAmazon Inspector

Slide 5

Slide 5 text

開発チームが質の高いソフトウェアを設計および構築するために使用す る、費用対効果と時間効率の高いプロセス SDLC (ソフトウェア開発ライフサイクル) とは何ですか? https://aws.amazon.com/jp/what-is/sdlc/ ソフトウェア開発ライフサイクル 5

Slide 6

Slide 6 text

ソフトウェア開発ライフサイクルとAmazon Inspector 6

Slide 7

Slide 7 text

ソースコード段階でのセキュリティ評価を可能に 3つのスキャンタイプを統合(詳細は後述) SAST (Static Application Security Testing): ソースコードの静的解析 SCA (Software Composition Analysis): 依存関係・OSS脆弱性検出 IaC (Infrastructure as Code): インフラ設定の誤設定検出 スキャンタイミングは 定期スキャン: 週次、月次など 変更ベーススキャン: プルリクエスト/マージリクエスト時 オンデマンドスキャン: 手動実行時など 料金 1スキャンあたり 0.18 USD、東京リージョン 例)20リポジトを週3スキャンの場合、 20リポジトリ × 3スキャン × 4週 * 0.18 USD = 43.2 USD/月 Amazon Inspector Code Security とは 7

Slide 8

Slide 8 text

右側ほど修正コストが高い ソフトウェア開発ライフサイクルとAmazon Inspector 8

Slide 9

Slide 9 text

セキュリティリスクを開発初期段階から検出・対策すること シフトレフト 9

Slide 10

Slide 10 text

Code Securityの機能紹介

Slide 11

Slide 11 text

Code repository scaning を有効化する Code Security セットアップ 11

Slide 12

Slide 12 text

Code Security から GitHub 接続を設定する Code Security セットアップ 12

Slide 13

Slide 13 text

スキャン頻度などの設定はデフォルトのまま Code Security セットアップ 13

Slide 14

Slide 14 text

インテグレーション名を設定 Code Security セットアップ 14

Slide 15

Slide 15 text

GitHub を許可 Code Security セットアップ 15

Slide 16

Slide 16 text

GitHub を許可 Code Security セットアップ 16

Slide 17

Slide 17 text

GitHub App の接続 Code Security セットアップ 17

Slide 18

Slide 18 text

リポジトリを選択 Code Security セットアップ 18

Slide 19

Slide 19 text

セットアップ完了! Code Security セットアップ 19

Slide 20

Slide 20 text

ソースコードを実行せずに静的解析 主な特徴 コンパイル前のソースコードレベルでの脆弱性検出 アプリケーション実行不要の静的解析 検出可能な主な脆弱性 機密情報の漏洩(ハードコードされたパスワード、APIキー) SQLインジェクション、コマンドインジェクション パストラバーサルなど 対応言語 C/C++, C#, Go, Java/Kotlin/Scala, JavaScript/TypeScript, Python, PHP, Ruby, Rust, Shell 1. SAST(Static Application Security Testing) 20

Slide 21

Slide 21 text

脆弱性を含むコードをプッシュ SAST デモ 21

Slide 22

Slide 22 text

SAST デモ 22

Slide 23

Slide 23 text

SAST デモ 23

Slide 24

Slide 24 text

SAST デモ 24

Slide 25

Slide 25 text

サードパーティの依存関係、ライブラリ、オープンソースパッケージの 脆弱性を特定 主な特徴 - アプリケーションの依存関係を自動解析 既知の脆弱性(CVE)とセキュリティ勧告を照合 重要度に基づく優先度付け(Critical/High/Medium/Low) 修正可能なバージョンの推奨 対応言語 Go (Go 1.18), Java (Maven/Gradle), JavaScript/TypeScript (npm), PHP (Composer), Python (pip/PyPI), .NET (NuGet), Ruby (RubyGems), Rust (Cargo) 2. SCA(Software Composition Analysis) 25

Slide 26

Slide 26 text

SCA デモ 26

Slide 27

Slide 27 text

SCA デモ 27

Slide 28

Slide 28 text

SCA デモ 28

Slide 29

Slide 29 text

SCA デモ 29

Slide 30

Slide 30 text

SCA デモ 30

Slide 31

Slide 31 text

CloudFormation、Terraform、CDKのIaCテンプレートにおける設定ミス やリスクを早期に特定 検出可能な項目例 パブリックアクセス: S3バケットの意図しない公開設定 暗号化不備: データの暗号化設定の欠落 IAM権限: 過度に広範囲なワイルドカード権限 ネットワークセキュリティ: セキュリティグループの不適切な設定 ログ設定: 監査ログの無効化 など 対応バージョン、フォーマット AWS CloudFormation (2010-09-09) HashiCorp Terraform (1.6.2以下) AWS CDK (Python、TypeScript) 3. IaC(Infrastructure as Code)スキャン 31

Slide 32

Slide 32 text

IaC スキャン デモ 32

Slide 33

Slide 33 text

IaC スキャン デモ 33

Slide 34

Slide 34 text

IaC スキャン デモ 34

Slide 35

Slide 35 text

他のサービスとの棲み分け(?)

Slide 36

Slide 36 text

CodeGuru Security 覚えてますか? 36

Slide 37

Slide 37 text

2023年6月の re:Inforce で発表 機械学習を用いてセキュリティポリシー違反や脆弱性を検出する静的アプリケーションセキュリテ ィツール リポジトリやIDEと連携し、CI/CDパイプラインにも組み込み可能 2025年6月時点でプレビュー https://dev.classmethod.jp/articles/amazon-inspector-code-security-shift-security-development/ CodeGuru Security 37

Slide 38

Slide 38 text

IDE連携? 38

Slide 39

Slide 39 text

そういえば 39

Slide 40

Slide 40 text

[アップデート]Amazon Q Developerでコードレビューを行えるようになりました! #AWSreInvent https://dev.classmethod.jp/articles/amazon-q-developer-codereview-automation-awsreinvent2024/ 詳細はこちら 40

Slide 41

Slide 41 text

まとめ

Slide 42

Slide 42 text

Amazon Inspector で SAST, SCA, IaC スキャンをできるようになりました 従来のスキャンよりも早いタイミングで検知して素早く対応できるようになりました 将来的には Amazon Q Developer や IDE 連携して、より早く検知できることを期待したいです。 まとめ 42

Slide 43

Slide 43 text

43