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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
FLAWED — 埋め込み欠陥を持つFix-Likeアーティファクト | Kitploit
ツール/GitHubGitHub/off-by-1-labs/flawed
防御ツール静的分析脆弱性スキャナー動的分析 (サンドボックス)脆弱性分析コード分析ファジング機械学習論文と研究学習と教育AIセキュリティ
245612ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
GitHub
off-by-1-labs/flawed

FLAWED

埋め込み欠陥を持つFix-Likeアーティファクト

リポジトリを見る
FLAWED

Fix Like Artifacts with Embedded Defects

AIエージェントが脆弱性をどれだけうまく修正できるかを測定するための研究ハーネス。

License MIT Python 3.11+ Requires Docker Agents Claude, Codex, Gemini

クイックスタート · データセット · ドキュメント · セキュリティモデル · コントリビューション


FLAWEDは、既知の脆弱なコミット時点でオープンソースプロジェクトをチェックアウトし、AIエージェントにバグの説明を渡してパッチを書くよう依頼します。エージェントが実際のアップストリームの修正を目にすることはありません。

その後、すべてのパッチは隔離されたコンテナ内で検証、監査、採点されるため、モデルがバグを修正したかどうかだけでなく、その過程で新たなバグを混入させなかったかどうかも確認できます。

仕組み

flowchart LR
    spec[bug spec] --> clone
    clone["clone<br/>(open net)"] --> generate
    generate["generate<br/>(offline)"] --> validate
    validate["validate<br/>(offline)"] --> ast["ast<br/>(offline)"]
    generate -.->|"patch.diff"| store[(Postgres)]
    validate -.->|"verdict"| store
    ast -.->|"summary"| store
    store --> ui[web UI + notebook]

各ステージはそれぞれ独自のコンテナ内で実行されます。ネットワークアクセスを持つのはcloneだけです。それ以降のすべてのステージはLLMプロバイダーのAPIのみに制限されているため、エージェントは実行中にヒントやアップストリームの修正を取得できません。

機能

機能得られるもの
反復サンプリング1回の実行で同じ入力をN回反復するため、結果は逸話ではなく分布になります。
キャンペーン1つのバグをパッチャーのバリアントとプロンプトスタイル(曖昧な*「これ直して」*から完全なアドバイザリまで)にわたってスイープし、ライブダッシュボードで結果を比較できます。
結果の採点すべてのパッチは5つのシナリオのいずれかに分類されます。S1(クリーンな修正)からS5(バグを修正せず、新たな脆弱性を混入させた)まで。
クロスバリデーションパッチは他のモデルによって再判定され、主要な数値は自己検証とクロスバリデーションの両方の視点を平均するため、単一の判定者のバイアスが支配的になることはありません。
チート検出監査者が、エージェントがバグ自体を解決する代わりにアップストリームの修正を見つけてしまった反復をフラグ付けします。

FLAWEDはClaude、Codex、GeminiのCLIを同じ入力で直接対決させます。

クイックスタート

[!WARNING] FLAWEDはDockerソケット(ホスト上ではroot相当)をマウントし、ステージコンテナ内で信頼できないサードパーティのコードを実行します。そのワークロードを処理できると信頼できるマシン上で実行してください。詳細は docs/security-model.mdを参照してください。

Dockerが必要で、デーモンソケットにアクセスできる必要があります。

# 1. Configure. Writes .env for you (data dir + provider API keys)
./setup.sh

# 2. Bring up the stack (Postgres, API + worker, web UI, notebook)
docker compose up --build

# 3. Open http://127.0.0.1:8080

次に最初の実行を行います。

  1. バグスペックをインポートします。 サンプルスペックはbugs/以下に同梱されています。Web UIのBug Specsページにドラッグするか、CLIを使用します。
    ./scripts/import-all-bugs.sh
    
  2. Web UIから実行を起動します。 スペック、エージェント+モデル、バリアント、反復回数を選択します。実行ページは進捗をライブでストリーミングします。

[!NOTE] 大規模なアップストリーム(例: Chromium)に対する最初の実行は遅くなります。validateステージは、実際のアップストリームパッチと差分を取るためにリポジトリ全体を一度クローンします。クローンはキャッシュされ、その後再利用されます。

ホスト上での開発セットアップ(composeなし)

Docker、Node 20+、pnpm、uv、および@devcontainers/cli(npm i -g @devcontainers/cli)が必要です。NixユーザーはDocker以外のすべてをnix-shellで用意できます。

make dev                        # uv sync + web deps
docker compose up -d postgres   # FLAWED needs a Postgres to talk to
cp .env.example .env            # points FLAWED_DB_URL at it
uv run flawed init              # builds base images, creates the schema
uv run flawed serve             # API + worker + webapp on port 8080

Webの開発ループには、2つ目のターミナルでmake web-devを実行します。UIをポート5173で提供し、/apiをflawed serveにプロキシします。

このリポジトリに対してAIコーディングエージェントを安全に実行するための隔離されたdevcontainerは、.devcontainer/README.mdに文書化されています。

バグスペック

バグスペックは入力の単位です。リポジトリ、脆弱なコミット、バグの説明、オプションの再現手順、およびバグが現実的にどのように報告されるかをモデル化した一連のプロンプトバリアント(SASTの検出結果、バグバウンティレポート、 embargoされたアドバイザリ、生のPoCなど)を保持します。スペックはバージョン管理され不変であるため、過去の実行のプロンプトと判定が黙って変わることはありません。

JSONコントラクトはbugs.schema.jsonにあり、docs/bug-specs.mdに文書化されています。同梱されているすべてのスペックは、公開開示され、アップストリームで修正された脆弱性を記述しています。

ストレージ

Postgresが唯一の信頼できる情報源です。実行メタデータおよびアーティファクトのバイト列(パッチ、判定、トランスクリプト、ログ)はデータベース内に存在するため、デプロイメントはそのDBによって完全に捕捉されます。data/ディレクトリは、ステージが実行時にマウントする一時的なスクラッチ領域です。

  • デプロイメント全体のバックアップ/リストアはscripts/export_dataset.pyとscripts/import_dataset.pyで行います(Web UIからも利用可能)。
  • オフライン検査用にディスク上のアーティファクトツリーを再構築するにはscripts/export_artifacts.pyを使用します。
  • スキーマ変更はAlembicで管理されます(uv run alembic upgrade headは起動時に自動的に実行されます)。

データセット

すべてを自分で実行する代わりに、完了したキャンペーンをロードできるよう、事前構築済みのデータセットを公開しています。各データセットは1つの完全なスナップショットの.tar.gzで、**https://flawed.s3.us-east-1.amazonaws.com**でホストされています。

単一のバンドル内のすべてのキャンペーン。

バンドルアーカイブ
すべてのキャンペーンfull.tar.gz
キャンペーンごとのアーカイブ、パッチャーモデルごとに1つ(13)
ツールをダウンロード