
オープンソースのブラウザラボで、シミュレートされたインフラストラクチャを構築し、その中を攻撃が進む様子を観察し、防御が機能するかどうかを確認できます。
Build. Attack. Defend. Understand.
ブラウザだけで動作するオープンソースのラボ: シミュレートされたインフラを構築し、攻撃がその中を移動する様子を観察し、防御が本当に機能するかを確認できます。各ステップにはそれが成功した理由が示され、各コントロールはどの前提条件を破るのかを正確に示します。
ライブデモ · Français · 仕様 · エンジンの仕組み · ラボ形式 · コントリビューション


攻撃対象領域、横展開、セグメンテーション、ブラスト半径、多層防御: これらの概念は静的な図から理解するのが困難です。PCYBOX AttackGraph はそれらを目で見て操作できるものに変えます:
シミュレーションのみ。 このラボは実際のシステムをスキャン、接触、攻撃することはありません。テクニックは概念レベルで記述され、MITRE ATT&CK にマッピングされており、エクスプロイト手順は含まれていません。
ライブデモ を開いてください: インストールもアカウントも不要です。またはローカルで実行できます:
git clone https://github.com/Mister-iks/pcybox-attackgraph.git
cd pcybox-attackgraph
pnpm install
pnpm dev
次に、ターミナルに表示された URL を開き、Run attack をクリックし、Network segmentation をオンにして、もう一度実行してください。
キーボード: Space で再生/一時停止、矢印キーで攻撃をステップ実行、Home で最初に戻ります。
Edit に切り替え、パレットから要素をマップにドラッグし、要素の側面にあるドットからドラッグして接続し、サイドパネルでサービス、弱点、保存された認証情報、ID、資産、コントロール、シナリオを入力します。Problems タブは、おそらく問題がある箇所(サービスがないポートへのフロー、何にも適用されないコントロールなど)を指摘します。Ctrl+Z と Ctrl+Y で元に戻す/やり直しができます。ラボはブラウザに保存され、エクスポート、インポート、リンクでの共有が可能です。
.attackgraph.json ファイルのエクスポートとインポート。今後の予定についてはロードマップをご覧ください。
lab (.attackgraph.json) ──▶ validation ──▶ engine (web worker) ──▶ story of events ──▶ map, timeline, Why?
エンジンは攻撃者の能力(足場、認証情報、データアクセス)をラウンドごとに飽和させます。各テクニックには前提条件と効果があり、各コントロールは正確な前提条件を破ります。ラウンドは幅優先であるため、到達したターゲットに対してリプレイされるストーリーは、その最短導出の1つです。詳細は docs/engine.md にあります。
apps/web/ web application (React, React Flow, Vite)
packages/engine/ simulation engine: pure TypeScript, no DOM, fully tested
packages/schema/ JSON Schema of the .attackgraph.json lab format
packages/i18n/ messages (English, French) shared by the app and the CLI
packages/cli/ attackgraph command line tool
content/templates/ ready-to-use labs (CC BY 4.0)
docs/ specification, engine and format documentation
要件: Node.js 20 以降と pnpm。
pnpm install
pnpm dev # start the app
pnpm test # engine, schema and app unit tests
pnpm e2e # end-to-end tests (Playwright, desktop and mobile)
pnpm verify # everything the CI checks: text, types, tests, build, bundle budget
pnpm attackgraph validate content/templates
pnpm attackgraph list content/templates/active-directory.attackgraph.json
pnpm attackgraph simulate content/templates/active-directory.attackgraph.json --scenario phishing --enable tiering
pnpm attackgraph compare content/templates/web-application.attackgraph.json --enable segmentation --lang fr
pnpm attackgraph simulate <lab> --format markdown # or json, for other tools
パフォーマンス予算: 初期 JavaScript は最大 250 kB(gzip)。これを超えると CI が失敗します。
| バージョン | 焦点 |
|---|---|
| v0.1 | 1つのネットワーク、1つの攻撃、1つの防御: Web Application テンプレート |
| v0.2(進行中) | ラボエディタ、3つのテンプレート、コマンドラインツール |
| v0.3 | 攻撃パス、チョークポイント、ブラスト半径、埋め込みビュー、オフライン PWA |
| v0.5 | チャレンジモード、教師モード、NICE、ECSF、CyBOK に沿った10のミッション |
| v1.0 | 安定した形式、8つのテンプレート、アラビア語と中国語を含む9言語 |
完全な計画は仕様(フランス語)にあります。
コントリビューションを歓迎します: コード、ラボ、翻訳、およびセキュリティ実務家によるテクニックカタログのレビュー。CONTRIBUTING.md から始めてください。行動規範に従い、脆弱性は SECURITY.md に記載されている方法で報告してください。
content/、docs/): CC BY 4.0MITRE ATT&CK® は The MITRE Corporation の登録商標です。このプロジェクトは MITRE と提携していません。