PASTA(Process for Attack Simulation and Threat Analysis) ぱすた
簡単に言うとこんな感じ!
PASTAは「攻撃者の視点でシステムへの脅威を7段階で洗い出す」セキュリティの分析フレームワークだよ。料理のパスタとは無関係で、「どこを攻められたら困るか」を体系的に考えるための手順書みたいなもの!開発前に使うと、後から大慌てでセキュリティ対策するより断然コスパがいいんだ。
PASTAとは
PASTA(Process for Attack Simulation and Threat Analysis)は、2012年にTony UcedaVélezとMarco Moresiが提唱したリスクベースの脅威モデリングフレームワークです。「脅威モデリング」とは、システムに潜む危険(脅威)を事前に洗い出し、対策を設計段階から組み込む手法のこと。PASTAはその中でも特に「攻撃者の目線」でリスクを評価することを重視しています。
従来のセキュリティ対策は「作ってからテストして直す」という後追い型になりがちでした。PASTAは開発の早い段階でビジネスリスクと技術リスクを結びつけて考えることで、最も影響の大きい脅威から優先的に対処できる点が特徴です。情報システムの発注者や責任者にとっては、「どのリスクに予算をかけるべきか」を判断するための共通言語にもなります。
名称に「PASTA(パスタ)」とあるのはあくまで頭字語ですが、覚えやすさも相まって世界中のセキュリティ専門家に広まりました。OWASP(Open Web Application Security Project)のコミュニティでも参照されており、Webアプリケーション・クラウド・IoTなど幅広い領域で活用されています。
PASTAの7ステップ構造
PASTAの最大の特徴は、7つのステップ(ステージ)で構成される体系的なプロセスです。ビジネス目標の確認から始まり、実際の攻撃シナリオ検証まで段階的に掘り下げます。
| ステージ | 英語名 | 概要 |
|---|---|---|
| Stage I | Define Objectives | ビジネス目標・セキュリティ要件の定義。何を守りたいか、コンプライアンス要件は何かを明確にする |
| Stage II | Define Technical Scope | 技術スコープの定義。対象システムのコンポーネント・依存関係・インフラ構成を把握する |
| Stage III | Application Decomposition | アプリケーション分解。データフロー・信頼境界・エントリポイントを洗い出す |
| Stage IV | Threat Analysis | 脅威分析。最新の脅威インテリジェンス(攻撃トレンド情報)をもとに想定される脅威を列挙する |
| Stage V | Vulnerability Analysis | 脆弱性分析。既知の脆弱性(CVEなど)と設計上の弱点を特定する |
| Stage VI | Attack Modeling | 攻撃モデリング。アタックツリーを使って具体的な攻撃経路をシミュレートする |
| Stage VII | Risk & Impact Analysis | リスク・影響度分析。ビジネスへの影響を定量化し、対策の優先順位を決定する |
覚え方:「定義→分解→脅威→攻撃→リスク」の流れ
7ステップは大きく3つのフェーズに分けると覚えやすいです。
[準備フェーズ] Stage I → ビジネス目標を決める
Stage II → システムの範囲を決める
[分析フェーズ] Stage III → アプリを分解してデータの流れを見る
Stage IV → 外部の脅威情報を収集・照合する
Stage V → 自分たちの弱点を洗い出す
[評価フェーズ] Stage VI → 実際の攻撃経路を描く
Stage VII → ビジネスへの影響を評価して優先順位をつける
アタックツリーとは
Stage VIで使うアタックツリー(Attack Tree)とは、「攻撃の目標」を根(ルート)に置き、それを達成するための手段を枝状に展開した図のことです。例えば「顧客データを盗む」という目標に対して「SQLインジェクション」「フィッシング」「内部不正」といった経路を枝として描きます。これにより、どの経路が最も現実的かを視覚的に評価できます。
歴史と背景
- 2000年代前半 — ソフトウェア開発のアジャイル化が進み、従来の「リリース後にセキュリティテスト」モデルの限界が顕在化。開発サイクルが短くなるほど後付けセキュリティのコストが増大した
- 2012年 — Tony UcedaVélez と Marco Moresi が PASTA を提唱。著書 Risk Centric Threat Modeling にて体系化
- 2013年頃 — OWASP コミュニティで紹介され、Webアプリケーションセキュリティの文脈で広まり始める
- 2015年以降 — クラウド・コンテナ・マイクロサービスの普及に伴い、PASTAをこれらアーキテクチャへ適用する事例が増加
- 2020年代 — DevSecOps(開発・セキュリティ・運用を統合するアプローチ)の文脈でCI/CDパイプラインへPASTAのステップを組み込む動きが加速
他の脅威モデリング手法との比較
脅威モデリングにはPASTA以外にもいくつかのフレームワークが存在します。発注・選定の判断に役立つよう比較します。
| フレームワーク | 開発元 | 主な視点 | 特徴 |
|---|---|---|---|
| PASTA | UcedaVélez / Moresi | 攻撃者・ビジネスリスク | 7ステップで体系的。リスクの優先順位づけが得意 |
| STRIDE | Microsoft | 脅威の分類 | 6種類の脅威カテゴリに分類して漏れを防ぐ。シンプルで入門向け |
| LINDDUN | KU Leuven大学 | プライバシー | プライバシーリスクに特化。GDPRなど法令対応に有効 |
| TRIKE | オープンソース | リスク管理 | 受け入れ可能なリスクを定義してから分析。監査向き |
| VAST | ThreatModeler社 | スケール | 大規模組織・アジャイル開発向けの自動化対応 |
PASTAは「ビジネスインパクトと技術的リスクを結びつけたい」場合に最も適しています。一方、初めて脅威モデリングを導入する場合はSTRIDEの方がシンプルで取り組みやすいことも多いです。
PASTAとSTRIDEの関係
PASTAはSTRIDEと競合するものではなく、Stage IVの脅威分析にSTRIDEを組み合わせて使うことがよくあります。STRIDEで脅威を漏れなく分類し、PASTAの7ステップでビジネス影響まで評価するという使い方です。
関連する規格・RFC
| 規格・文書 | 内容 |
|---|---|
| NIST SP 800-154 | データ中心の脅威モデリングガイド。PASTAと概念的に整合する |
| OWASP Threat Modeling Cheat Sheet | OWASPによる脅威モデリング実践ガイド。PASTAを含む複数手法を解説 |
関連用語
- 脅威モデリング — システムへの潜在的な脅威を事前に洗い出し対策を設計に組み込む手法
- STRIDE — Microsoftが提唱する6カテゴリの脅威分類フレームワーク
- アタックツリー — 攻撃目標を根として攻撃経路を枝状に展開した分析図
- 脆弱性(CVE) — 公開されたソフトウェアの既知セキュリティ欠陥の共通識別子
- DevSecOps — 開発・セキュリティ・運用を統合して継続的にセキュリティを組み込む手法
- リスク分析 — 脅威の発生確率と影響度を評価してリスクを定量化するプロセス
- ペネトレーションテスト — 実際の攻撃手法を使ってシステムの弱点を発見するセキュリティ検証
- OWASP — Webアプリケーションセキュリティの標準・ガイドを策定する非営利団体