このプロジェクトについて

# ASGARD **ブルーチームセキュリティスイート — 9つのモジュール、1つの原則:テストされていないものは存在しない。** Asgardは、商用SOCプラットフォームを導入できないが、検出、調査、オーケストレーション、規制順守の実証を必要とする中小企業や独立系アナリスト向けに設計された、防御的セキュリティ(ブルーチーム)ツールスイートです。 各モジュールは**1つのこと**だけを行い、それをしっかり実行します。モノリスはなく、クラウドプロバイダーへの強制依存もなく、READMEに記載されているのにコードに存在しない機能もありません。スイート全体は徹底的な技術監査を受けており、実際のセキュリティバグ(実際には発生していない成功をソフトウェアが宣言していた2件を含む)が修正されました。 ## アーキテクチャ 3つの機能グループ: - **検出** — センサー:Heimdallはログを監視し、Bifrostはネットワークを監視し、YggdrasilはActive Directoryを監視します。 - **対応とインテリジェンス** — アラート後の処理:Mjolnirはホストのフォレンジックトリアージを実行し、Fenrirは公開脅威インテリジェンスで強化し、SleipnirはYAMLプレイブックですべてをオーケストレーションします。 - **ガバナンス** — 純粋に技術的なセキュリティポートフォリオに通常欠けている部分:Forsetiはセキュリティ態勢をGDPR/NIS2準拠スコアに変換し、Gjallarhornは通知を一元化します。 **Ragnarök**はコマンドセンターです。デスクトップアプリ(Tauri + FastAPI)で、会話型アシスタントが基盤となるモジュールへのアクションを提案しますが、明示的な確認なしに実行することはありません。 ## モジュール | モジュール | 機能 | スタック | テスト | |---|---|---|---| | **Heimdall** | 軽量HIDS & Windowsエージェント:SSH/Windowsイベントログのブルートフォースを検出し、設定可能なTTLでファイアウォールレベルでIPをブロックし、Telegram/Gjallarhorn経由で通知 | Python、PowerShell、FastAPI、SQLite | 38 ✅ | | **Mjolnir** | 侵害されたホストの自動フォレンジックトリアージ:プロセス/ネットワークスナップショット、VirusTotalでのハッシュ検証(キャッシュとレート制限付き)、実際のYARAスキャン(yara-python)、Markdown/HTMLレポート | Python、psutil、yara-python | 49 ✅ | | **Bifrost** | バナー取得機能付きマルチスレッドネットワークスキャナー、GeoIP/WHOISエンリッチメント、LANディスカバリー、暗号化レポート(PBKDF2 + Fernet) | Python、FastAPI | 46 ✅ | | **Yggdrasil** | Active Directory(LDAP/LDAPS)およびMicrosoft 365 / Entra IDクラウド(MFA態勢、グローバル管理者、レガシー認証)のセキュリティ監査。実際のMicrosoft Graph API(アプリ専用OAuth2)またはJSONエクスポート経由 | Python、ldap3、msal | 54 ✅ | | **Fenrir** | 公開脅威インテリジェンスアグリゲーター:CISA KEV常時稼働、OTXオプション、STIX 2.1エクスポート、ロック保護付きSQLite | Python | 48 ✅ | | **Sleipnir** | SOARエンジン:他のモジュールをオーケストレーションするYAMLプレイブックを実行し、永続状態とインシデント監査証跡を保持 | Python、PyYAML | 32 ✅ | | **Forseti** | 中小企業向けGDPR/NIS2/DORA/ISO27001コンプライアンスチェッカー:41の実際のチェック(GDPR 13 + NIS2 12 + DORA 8 + ISO27001 8)、スコアリング、ギャップと具体的な是正措置を含むレポート | Python | 44 ✅ | | **Gjallarhorn** | 集中アラートハブ(Telegram/webhook/SMTP/Teams/Jira/ServiceNow)。重複排除とスロットリングを備え、HeimdallとSleipnirが使用 | Python、FastAPI | 63 ✅ | | **Ragnarök** | デスクトップ&Webオーケストレーター(Tauri + FastAPI)。AIアシスタント(FastEmbed + ChromaDB)、マルチユーザーRBAC、セキュリティ強化、監査ログ | Tauri、Rust、Python | 264 ✅ | ## クイックスタート(Docker — フルスイート) 9つのモジュールは単なるフォルダではなくgitサブモジュールです。`--recursive`でクローンしてください。そうしないとモジュールディレクトリが空になり、Dockerビルドと`install.sh`/`install.ps1`の両方が失敗します。 ```bash git clone --recursive https://github.com/Fioru12/Asgard.git cd Asgard ./install.sh # Linux / macOS / Git Bash .\install.ps1 # Windows PowerShell ``` その後、**http://localhost:8080/dashboard** を開きます。初回起動ウィザードが管理者アカウントの作成をガイドします。 localhostで公開されるサービス: | サービス | URL | |---------|-----| | Ragnarök(ダッシュボード + API) | http://localhost:8080 | | Heimdall | http://localhost:18000 | | Gjallarhorn | http://localhost:8090 | | Forseti | http://localhost:8091 | | Bifrost | http://localhost:8092 | ## クイックスタート(手動 — 単一モジュール) 各モジュールは独立しています。クローンして、インストールして、単独で使用できます。 ```bash git clone https://github.com/Fioru12/<Modulo>.git cd <Modulo> pip install -r requirements.txt pytest -v # 環境ですべてが機能することを確認 python main.py --help ``` 各モジュールには、専用のクイックスタートを備えた独自の`README.md`、設定用の`.env.example`、そして対応する実際の問題を説明する「なぜ作ったか」セクションがあります。 ## プロジェクト原則 - **願望的な機能はゼロ。** モジュールのREADMEに何かが記載されている場合、それを実証するテストがあります。モジュールがデモ/シミュレーションモードをサポートする場合、それは明示的に宣言され、実際のデータとして偽装されることはありません。 - **静かにではなく、騒がしく失敗する。** 失敗したセキュリティアクションはそれを明確に示します。実際には発生していない成功を偽装することはありません。 - **公開されるすべてのAPIでデフォルトで認証**。明示的に設定されていない場合は、キーが自動生成されます。 - **実際の結果を伴うすべてのアクション(IPブロック、プレイブック実行、RagnarökでのAI提案アクション)には、人間がループ内に留まります。** **開発者:[Fioru12](https://github.com/Fioru12)**