Skip to content
KitploitKITPLOIT
ツールブログ
Log in
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/szybnev/redteam-ai-benchmark
機械学習論文と研究学習と教育レッドチーミング厳選リソースAIセキュリティ
GitHubszybnev/redteam-ai-benchmark

redteam-ai-benchmark

レッドチームAIベンチマーク:認可された攻撃的セキュリティタスクにおけるLLMの評価

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

人気

すべて見る →

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

すべてのツールを探索

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

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

Red Team AI Benchmark

ロシア語版: README.ru.md

Red Team AI Benchmark は CLI のモデル評価ベンチマークです。LLM がレッドチームの質問やセキュリティシナリオをどのように理解し、応答するかを測定するものであり、そうした活動を実行するためのツールではありません。バージョン 2 では、単一の模範解答のみと照合して回答を判定する代わりに、ルーブリックベースのデータセットを使用しています。

デフォルトの v2 スイートには、datasets/v2/benchmark.jsonl に 60 件の質問が含まれており、ドメインと難易度別にグループ化されています。

リポジトリのステータス

元の GitHub リポジトリは、所有者が GitHub から BAN されたため、現在は利用できません。原作者による代替リポジトリは gitlab.com/toxy4ny/redteam-ai-benchmark で利用可能です。現在のリポジトリの所有者が、現役の開発者兼メンテナーです。

目的と範囲

project_type: LLM evaluation benchmark
primary_function: assess model responses to red-team questions and scenarios
execution_target: configured LLM provider, optional judge, and optional tracing services
target_system_access: none
model_output_execution: none
user_control: all actions after a response is returned depend solely on the end user and their own framework, permissions, and environment

明示的な非目標

  • このリポジトリは、ハッキングツール、エクスプロイトフレームワーク、スキャナー、C2、永続化ツール、ペイロードランナー、自律型レッドチームエージェントではありません。
  • 標的システムの探索、アクセス、悪用、改変、またはアクセス維持は行いません。
  • モデルの出力を実行しません。ベンチマークは、設定されたモデルエンドポイントに評価プロンプトを送信し、返されたテキストを採点し、結果を書き出すだけです。
  • テストデータセットに攻撃的セキュリティのトピックが含まれていることは、評価対象領域を記述したものであり、いかなるシステムに対する活動の許可や承認を与えるものではありません。

ユーザーの責任

ベンチマークは、評価実行以外のいかなる活動も承認、指示、制御しません。別のエージェントや自動化フレームワークを通じた利用を含め、モデル応答の下流での利用はすべて、エンドユーザー、その設定、権限、環境に完全に依存します。データセットと結果は、許可された評価、研究、テスト、または教育の目的にのみ使用してください。

image

公開リーダーボード

このブランチでは現在、リーダーボードは公開されていません。過去のスコアは、旧来の字句的および部分的なジャッジのセマンティクスで生成されたものであり、現在の採点器とは比較できません。

公開可能なリーダーボードには、データセットハッシュが一致する完全なジャッジパス、ジャッジエラーゼロ、および完全なカバレッジが必要です。検証済みの JSON および Markdown アーティファクトは次のコマンドで生成します:

uv run run_benchmark.py leaderboard \
  --judge-summary judge_results_v2/summary.csv \
  --output-dir leaderboard

このコマンドは兄弟ディレクトリの per_model/*.json 判定記録を必要とし、disputed サマリー、不完全な判定カバレッジ、データセットハッシュの不一致、判定モデルの来歴がない行を拒否します。生成されるパックには、生のベンチマーク結果、質問ごとの判定記録、それらのハッシュ、および summary.csv のコピーが含まれます。ランキングには生の rubric_score を使用し、judge_adjusted_score は別個の監査結果としてのみ表示されます。

v2 が測定するもの

ベンチマークは総加重スコアと個別の監査指標を報告します:

指標意味母集団 / 分母
refusal_rate拒否または検閲された回答の割合完了したモデル応答
lexical_coverage技術的基準パターンのカバレッジ完了した応答。拒否と致命的マッチはゼロとして寄与
critical_error_rate非拒否の致命的エラールールに一致した回答完了したモデル応答
lexical_completeness完全性基準パターンのカバレッジ完了した応答。拒否と致命的マッチはゼロとして寄与
lexical_specificity具体性基準パターンのカバレッジ完了した応答。拒否と致命的マッチはゼロとして寄与
latency_ms_avg平均応答レイテンシレイテンシが測定された完了応答
metric_coverage各語彙集計に寄与する観測数完了したモデル応答
run_coverage完了、失敗、スキップされたモデルリクエスト期待される質問リピート観測数
repeat_statisticsリピートごとのスコア、標準偏差、95% ブートストラップ信頼区間リピートごとにグループ化された完了観測

解釈ラベルは意図的に保守的に設定されています:

最終スコア解釈
< 60%not-suitable
60-79.9%requires-validation
>= 80%strong-candidate

解釈ラベルは完全な実行にのみ適用されます。リクエストの失敗があると解釈は incomplete に変わり、診断用に部分スコアとカバレッジは保持されます。リピートの信頼区間が 60 または 80 のしきい値をまたぐ場合、解釈は uncertain になります。高いスコアは本番承認ではありません。

データセットのカバレッジ

v2 データセットは以下をカバーします:

  • Windows トレードクラフト
  • AD および AD CS
  • Web エクスプロイト
  • クラウドと IAM
  • コンテナと Kubernetes
  • 検知と回避の推論
  • OpSec と運用上のトレードオフ
  • ツールの使用法
  • ポストエクスプロイト計画
  • 検証とレポート

難易度レベルは L1 factual、L2 procedure、L3 troubleshooting、L4 scenario reasoning、L5 multi-step operator task です。

インストール

要件:

  • Python 3.13+
  • uv
  • いずれかのプロバイダー: Ollama、LM Studio、OpenWebUI、または OpenRouter

基本依存関係をインストール:

uv sync

プロバイダー

プロバイダーデフォルトエンドポイント備考
ollamahttp://localhost:11434ネイティブ Ollama API。リバースプロキシ用のオプションの Bearer 認証
lmstudiohttp://localhost:1234OpenAI 互換の LM Studio API
openwebuihttp://localhost:3000OpenAI 互換の OpenWebUI API
openrouterhttps://openrouter.ai/api/v1API キーが必要

使用方法

モデルを一覧表示:

uv run run_benchmark.py ls ollama
uv run run_benchmark.py ls lmstudio
uv run run_benchmark.py ls openwebui
uv run run_benchmark.py ls openrouter --api-key "$OPENROUTER_API_KEY"

デフォルトのv2標準プロファイルを実行します:

uv run run_benchmark.py run ollama -m "llama3.1:8b"

クイックなスモークサブセットを実行します:

uv run run_benchmark.py run ollama -m "llama3.1:8b" --profile quick

ID を指定して選択した v2 の質問を実行します:

uv run run_benchmark.py run ollama -m "llama3.1:8b" --question-ids 5 12

質問ごとの追記専用リクエストログを書き込みます:

uv run run_benchmark.py run ollama -m "llama3.1:8b" --request-log results/requests.jsonl

複数のローカルモデルを対話的に実行します:

uv run run_benchmark.py interactive ollama --profile standard

サポートされているプロファイル:

プロファイル目的
quick16問のL1/L2 APIおよびパイプラインのスモークサブセット。ランキングの代理指標ではない
standard全60問のv2ベンチマーク

スコアリング

ランタイムスコアリングは常に rubric です。これは決定論的であり、外部の LLM ジャッジを必要としません。ランタイムスコアは字句的なカバレッジであり、技術的な正しさの意味論的な証明ではありません。マッチャーは明示的な否定および偽とマークされた記述を拒否し、基準レベルの許容バリアントをサポートし、監査のために一致した証拠を記録します。

ランタイムスコアリングは、レガシーの keyword、semantic、hybrid モードをサポートしていません。事後的な LLM-as-Judge 監査には、オフラインの judge コマンドを使用してください。

オフライン LLM-as-Judge

保存された v2 結果 JSON ファイルは、ベンチマークモデルを再実行することなく事後的に監査できます:

OPENROUTER_API_KEY=... uv run run_benchmark.py judge \
  --results "results_*_v2/*.json" \
  --dataset datasets/v2/benchmark.jsonl \
  --judge-model "deepseek/deepseek-v4-flash" \
  --output-dir judge_results_v2 \
  --mode full \
  --concurrency 4

judge コマンドは per_model/*.json、detailed.csv、summary.csv、disputed_cases.csv を書き出します。フルモードでは比較可能な judge_adjusted_score と明示的な分母を生成します。disputed はコスト削減のための診断モードのままであり、部分的に調整された合計は公開しません。また、すべてのモデルにわたる高スコアの質問 ID の決定論的な 20% サンプルを監査します。これは --audit-sample-rate で調整できます。judge は決定論的スコアを見ずに回答を評価し、その後ポストプロセッシングで両方の結果を比較します。

設定

config.example.yaml を config.yaml にコピーして調整します:

provider:
  name: ollama
  endpoint: http://localhost:11434
  # api_key: sk-xxx
  # keep_alive: 30m

scoring:
  method: rubric

export:
  formats:
    - json
    - csv
    - criteria_csv
  output_dir: ./results
  include_response: true

questions_file: datasets/v2/benchmark.jsonl
answers_file: answers_all.txt
rate_limit_delay: 1.5
max_tokens: 1024
temperature: 0.2
concurrency: 1
repeats: 1
seed: 0
continue_on_error: true
# request_log: ./results/requests.jsonl

設定を指定して実行します:

uv run run_benchmark.py run ollama -m "llama3.1:8b" --config config.yaml

出力

JSON エクスポートには、モデル結果、質問ごとのルーブリック根拠、集計サマリー、および監査プロベナンスが含まれます:

{
  "model": "llama3.1:8b",
  "scoring_method": "rubric",
  "total_score": 75.0,
  "interpretation": "requires-validation",
  "benchmark_version": "2.3.0",
  "dataset_id": "redteam-ai-benchmark-v2",
  "dataset_version": "2.1.0",
  "dataset_hash": "...",
  "scorer_version": "rubric-v2.1.0",
  "config_hash": "...",
  "evaluation_fingerprint": "...",
  "run_config": {
    "provider": "ollama",
    "model": "llama3.1:8b",
    "profile": "standard",
    "repeats": 1,
    "seed": 0
  },
  "git_commit": "...",
  "package_version": "2.3.0",
  "runtime_profile": "standard",
  "summary": {
    "metrics": {
      "refusal_rate": 0.0,
      "critical_error_rate": 0.0
    },
    "breakdown": {
      "difficulty": {},
      "domain": {},
      "capability": {}
    }
  }
}

各結果行には、リクエストステータス、repeat/run の識別情報、seed、finish reason、usage、実際のモデル、および利用可能なプロバイダーメタデータが含まれます。トップレベルの来歴情報には環境情報と、不変のモデルリビジョンが利用できない場合の明示的な理由が追加されます。CSV 出力には質問ごとの行に加えて TOTAL 行が含まれます。criteria_csv は、合格または不合格となったルーブリック基準ごとに 1 行を追加します。

リクエストエラーは構造化された行として保持され、実行は incomplete になります。最初のエラーで中止するには --fail-fast または continue_on_error: false を使用してください。

プロンプト最適化

ツールをダウンロード