Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
BlockGuard — BlockGuardは、プロセスレベルでファイルアクセスをインターセプトし制御するWindows Data Loss Prevention (DLP) エージェントです。実行可能ファイルのパス、暗号学的ハッシュ、Authenticode署名、整合性レベルによって識別される許可されたプロセスのみが保護されたファイルを読み取れるようにします。 | Kitploit
ツール/GitHubGitHub/m2l33k/blockguard
認証と認可防御ツール暗号化/復号化ツール構成監査データ流出インシデントレスポンスログ分析
GitHubm2l33k/blockguard

BlockGuard

BlockGuardは、プロセスレベルでファイルアクセスをインターセプトし制御するWindows Data Loss Prevention (DLP) エージェントです。実行可能ファイルのパス、暗号学的ハッシュ、Authenticode署名、整合性レベルによって識別される許可されたプロセスのみが保護されたファイルを読み取れるようにします。

リポジトリを見る
136ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

BlockGuard — Trusty

.NET 9 Windows License DLP

🛡️ BlockGuard — プロセスベースのファイルアクセスセキュリティエージェント

BlockGuard は、Windows のデータ損失防止(DLP)エージェントであり、プロセスレベルでファイルアクセスを傍受・制御します。実行可能ファイルパス、暗号ハッシュ、Authenticode 署名、整合性レベルによって識別される承認済みプロセスのみが保護されたファイルを読み取れるようにし、それ以外のすべてのプロセスは NTFS ACL を介して OS カーネルレベルでデフォルト拒否されます。


📑 目次

  • 特徴
  • アーキテクチャ
  • UI 管理インターフェース
  • 前提条件
  • クイックスタート
  • 設定
  • エージェントの実行
  • 動作確認
  • プロジェクト構造
  • 動作の仕組み
  • トラブルシューティング
  • セキュリティ上の考慮事項
  • コントリビューション

✨ 特徴

特徴説明
デフォルト拒否 ACLエージェント起動時に保護ファイルをロックダウン — SYSTEM と Administrators のみアクセス可能
リアルタイム ETW 監視Windows イベントトレーシングによるカーネルレベルのファイル I/O イベント取得
6層のプロセス検証実行可能ファイルパス、SHA-256 ハッシュ、Authenticode 署名、所有者 SID、整合性レベル、親プロセスチェーン
DPAPI ファイル暗号化保護ファイルは Windows Data Protection API で保存時に暗号化
自動期限付き一時アクセス承認済みプロセスには時間制限付きの ACL 付与が行われ、自動的に期限切れ
改ざん検出定期的な整合性チェックにより ACL 変更を検出し自動修復
構造化監査ログすべてのアクセス試行の JSON 監査証跡(SIEM 対応)
Windows サービスNT AUTHORITY\SYSTEM で動作するバックグラウンド Windows サービス

🏗️ アーキテクチャ

BlockGuard は3層モジュラーアーキテクチャを採用しています。``` ┌─────────────────────────────────────────────────────────────────┐ │ BlockGuard.Agent (Windows Service) │ │ Orchestrates all layers │ ├───────────────────┬─────────────────────┬───────────────────────┤ │ Layer 1 │ Layer 2 │ Layer 3 │ │ MONITORING │ POLICY & IDENTITY │ PROTECTION │ │ │ │ │ │ • ETW Kernel │ • Process Identity │ • DPAPI Encryption │ │ File Trace │ Validator (6 │ • Structured Audit │ │ • ACL Enforcer │ checks) │ Logger (JSON) │ │ (deny-by- │ • Policy Evaluator │ │ │ default) │ (AND-logic │ │ │ │ rules) │ │ │ │ • Identity Cache │ │ │ │ (LRU + TTL) │ │ └───────────────────┴─────────────────────┴───────────────────────┘

---
## 🖥️ UI管理インターフェース

BlockGuardは、視覚的なインターフェースを通じて保護されたファイルやフォルダを管理する**WPFデスクトップアプリケーション**を含んでいます。`appsettings.json`を手動で編集する必要はありません。

<p align="center">
  <img src="https://assets.kitploit.com/production/public/readmes/12349/51a9b7894117382666d869cee59860a33698f666133bd23c6b6cd48b225d942c.png" alt="BlockGuard UI" width="640" />
</p>

### 機能

- **ダッシュボード** — 保護ステータスの概要(ファイル総数、フォルダ数、暗号化状態)
- **保護されたファイル** — ファイルブラウザダイアログを介して、AIアクセスから保護するファイルやフォルダを追加/削除
- **アクティビティログ** — すべての設定変更のリアルタイムログ
- **設定** — 設定ファイルのパスとエージェント情報を表示
- **エージェントステータス** — BlockGuardエージェントサービスが実行中かどうかを示すライブインジケーター

### UIの起動方法```powershell
# From the project root
dotnet run --project src/BlockGuard.UI

注記: UIはAgentプロジェクトのappsettings.jsonを読み書きします。変更を保存した後、BlockGuard Agentサービスを再起動して反映させてください。


📋 前提条件

BlockGuardを実行する前に、以下のものがWindowsマシンにインストールされていることを確認してください:

必要条件最低バージョン確認コマンド
Windows OSWindows 10 / Server 2019winver
.NET SDK9.0dotnet --version
管理者特権必須管理者としてターミナルを実行

.NET 9 SDKのインストール(未インストールの場合)```powershell

Download from https://dotnet.microsoft.com/download/dotnet/9.0

Or use winget:

winget install Microsoft.DotNet.SDK.9

---

## 🚀 クイックスタート

### 1. リポジトリをクローンする```powershell
git clone [email protected]:m2l33k/BlockGuard.git
cd BlockGuard

2. 依存関係の復元```powershell

dotnet restore BlockGuard.sln

### 3. ソリューションの構築```powershell
dotnet build BlockGuard.sln --configuration Release

次のように表示されるはずです:``` Build succeeded. 0 Warning(s) 0 Error(s)

### 4. 保護パスとルールの設定

`src/BlockGuard.Agent/appsettings.json` を編集して、**保護するファイル**と**許可するプロセス**を定義します。```json
{
  "BlockGuard": {
    "ProtectedPaths": [
      "C:\\Secrets\\ai-model-keys",
      "C:\\Secrets\\api-credentials.json"
    ],
    "AuthorizedProcesses": [
      {
        "RuleName": "AI-Model-Inference-Engine",
        "ExecutablePath": "C:\\Program Files\\MyAI\\inference.exe",
        "MinimumIntegrityLevel": "Medium",
        "RequireSignature": false
      }
    ]
  }
}

5. 実行 (開発モード)```powershell

Run as Administrator (required for ETW + ACL operations)

dotnet run --project src/BlockGuard.Agent

---

## ⚙️ 設定

すべての設定は `src/BlockGuard.Agent/appsettings.json` の `"BlockGuard"` セクションにあります。

### 保護パス

保護するファイルまたはディレクトリの配列。ディレクトリは再帰的にすべてのファイルを保護します。```json
"ProtectedPaths": [
  "C:\\Secrets\\ai-model-keys",
  "C:\\Secrets\\api-credentials.json",
  "D:\\Confidential\\reports"
]

許可されたプロセスのルール

各ルールは、プロセスがアクセスを許可されるために一致する必要がある条件を定義します。null以外のすべてのフィールドが一致する必要があります(AND論理)。

フィールド型説明
RuleNamestringこのルールの人間可読な名前(監査ログで使用)
ExecutablePathstring?許可された実行ファイルのフルパス(大文字小文字を区別しない)
ExpectedFileHashstring?実行ファイルのSHA-256ハッシュ(改ざん検出)
ExpectedSignerSubjectstring?Authenticode証明書のサブジェクト(例:"CN=Contoso")
MinimumIntegrityLevelstring最小のWindows整合性レベル:Untrusted、Low、Medium、High、System
RequireSignaturebooltrueの場合、実行ファイルは有効なAuthenticode署名を持っている必要があります

例:パスベースのルール(AIモデルプロセス用)```json { "RuleName": "AI-Model-Inference-Engine", "ExecutablePath": "C:\Program Files\MyAI\inference.exe", "ExpectedFileHash": null, "ExpectedSignerSubject": null, "MinimumIntegrityLevel": "Medium", "RequireSignature": false }

**例: 署名ベースのルール (署名された管理ツール向け)**```json
{
  "RuleName": "Signed-Management-Tool",
  "ExecutablePath": null,
  "ExpectedFileHash": null,
  "ExpectedSignerSubject": "CN=Contoso Security",
  "MinimumIntegrityLevel": "High",
  "RequireSignature": true
}

例: ハッシュ固定ルール (最大の改ざん防止のために)```json { "RuleName": "Pinned-Data-Processor", "ExecutablePath": "C:\Tools\processor.exe", "ExpectedFileHash": "a1b2c3d4e5f67890abcdef1234567890abcdef1234567890abcdef1234567890", "ExpectedSignerSubject": null, "MinimumIntegrityLevel": "Medium", "RequireSignature": false }

### その他のオプション

| オプション | デフォルト | 説明 |
|---|---|---|
| `IdentityCacheTtlSeconds` | `30` | 検証済みプロセスIDがキャッシュされる時間(秒) |
| `HandleTimeoutSeconds` | `60` | 一時的なACL許可の最大期間(秒) |
| `AuditLogPath` | `C:\ProgramData\BlockGuard\Logs\audit.json` | JSON監査ログファイルのパス |
| `EnableDpapiEncryption` | `true` | 保護されたファイルを保存時にDPAPIで暗号化 |
| `DpapiScope` | `LocalMachine` | DPAPIスコープ: `LocalMachine` または `CurrentUser` |

---

## 🏃 エージェントの実行

### オプション A: 開発モード(コンソール)
ツールをダウンロード