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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
FinRED-paper — 金融ドメイン固有のレッドチーミングベンチマーク評価ルーブリック | Kitploit
ツール/GitHubGitHub/selectstar-ai/finred-paper
脆弱性分析脅威インテリジェンス機械学習論文と研究学習と教育レッドチーミングAIセキュリティ
GitHubselectstar-ai/finred-paper

FinRED-paper

金融ドメイン固有のレッドチーミングベンチマーク評価ルーブリック

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

人気

すべて見る →

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

すべてのツールを探索

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

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

FinRED: 金融レッドチーミング評価データセット

金融領域における安全性評価のためのレッドチームベンチマーク生成パイプライン。

FinRED overview


補足ドキュメント

論文で参照されている詳細資料:

  • docs/expert_validation.md — 12名のFSI領域専門家による質問ごとのフォーカスグループインタビュー(FGI)結果(一致度、Likertスコア、Cohen's κ / Krippendorff's α)。
  • docs/judge_rubric.md — 完全なLLM-as-a-Judge評価テンプレート、5つのルーブリック次元、判定ルール、および出力JSONスキーマ。
  • docs/schemas.md — 脅威行動スキーマ構造(必須/任意要素)とR4.4の実例。
  • docs/related_work.md — 従来の金融領域LLMベンチマークのベンチマークごとの説明と、FinREDがどのように異なるか。

プロジェクト構成

root@kitploit:~
FinRED/
├── main.py                      # Main runner
├── requirements.txt             # Dependencies
├── run/                         # Example run scripts
├── prompts/                     # Prompt files
├── tests/                       # Example notebooks
├── README.md
│
├── src/
│   ├── Step1_build.py           # Scenario generation module
│   ├── Step2_build.py           # Seed prompt generation module
│   ├── __init__.py
│   │
│   ├── data/                    # Downloaded data
│   │   ├── contexts/            # Context data
│   │   │   ├── R3_products/     # R3 product summaries
│   │   │   └── retrieved_chunks/# Similarity search outputs
│   │   ├── orig/                # Raw data
│   │   │   ├── db/              # Chunk CSV DB
│   │   │   ├── parsed_docs/     # PDFs + chunk JSON
│   │   │   └── investinfo/      # R3 product text
│   │   └── queries/             # Query CSV files
│   │
│   ├── data/schemas/            # Output schema definitions
│   │   ├── ko/                  # Korean schemas
│   │   └── en/                  # English schemas
│   │
│   ├── outputs/                 # Generation outputs
│   │   ├── scenarios/           # Step 1 outputs
│   │   └── prompts/             # Step 2 outputs
│   │
│   ├── preprocess/              # Preprocessing pipeline
│   │   ├── preprocess_README.md # Detailed preprocessing guide
│   │   ├── 1_chunking.py
│   │   ├── 2_parsed_to_csv.py
│   │   ├── 3_common_to_csv.py
│   │   ├── 4_product_summarizer.py
│   │   ├── 5_summary_extractor.py
│   │   └── 6_chunk_retriever.py
│   │
│   ├── eval/                    # Evaluation module
│   │   ├── judge_finred.py      # Evaluation script
│   │   ├── dataset/             # Evaluation dataset

環境セットアップ

0. 関連データのダウンロード

Google Drive: https://drive.google.com/drive/u/0/folders/1cfBf419OUDrQQMRKMPLLJqRX97WMxExC Google Drive

ダウンロードしたデータを上記のフォルダ構成に合わせて配置してください(src/data 以下)。

1. 仮想環境の作成 (Python 3.10)

root@kitploit:~
# Conda
conda create -n finred python=3.10 -y
conda activate finred

# Or venv
python3.10 -m venv finred_env
source finred_env/bin/activate

2. パッケージのインストール

root@kitploit:~
cd /path/to/FinRED
pip install -r requirements.txt

3. 前処理環境 (オプション)

前処理(PDFのチャンク化など)が必要な場合:

root@kitploit:~
# Unstructured
pip install "unstructured[all-docs]"

# System dependencies (Ubuntu/Debian)
sudo apt-get install -y libmagic-dev poppler-utils tesseract-ocr tesseract-ocr-kor libreoffice pandoc

前処理ガイド: src/preprocess/preprocess_README.md

4. インストールの確認

root@kitploit:~
python --version  # Python 3.10.x
python -c "import torch; print(f'CUDA: {torch.cuda.is_available()}')"

パイプラインの概要

root@kitploit:~
[Context + Schema + Query]
         │
         ▼
   ┌─────────────┐
   │ Step1_build │  Scenario generation (OpenAI GPT-4)
   └─────────────┘
         │
         ▼
   [Scenario JSON]
         │
         ▼
   ┌─────────────┐
   │ Step2_build │  Seed prompt generation (Gemini)
   └─────────────┘
         │
         ▼
   [Seed Prompts]
         │
         ▼
   ┌─────────────┐
   │ Evaluation  │  Model response evaluation
   └─────────────┘

モジュールの詳細

Step1_build.py - シナリオ生成

コンテキストとスキーマに基づいてレッドチームシナリオを生成します。

  • 入力: スキーマ、クエリ、取得したコンテキストチャンク
  • 出力: src/outputs/scenarios/{category}/ 内のシナリオJSONファイル
  • モデル: OpenAI GPT-4

Step2_build.py - シードプロンプト生成

シナリオからシードプロンプトを生成します。

  • 入力: Step 1のシナリオJSON
  • 出力: src/outputs/prompts/{category}/ 内のプロンプトJSON + マージ済みCSV
  • モデル: Google Gemini 2.5 Pro

使用方法

クイックスタート

データ生成

root@kitploit:~
# Run the full pipeline with the example script
sh run/run_data_generate.sh

判定

root@kitploit:~
python src/eval/judge_finred.py \
    -i src/eval/dataset/qwen_2.5_test.csv \
    -o qwen_2.5_test_judged \
    -d src/eval/infer_result

基本

root@kitploit:~
cd /path/to/FinRED

python main.py \
    --step <1|2|all> \
    --category <category> \
    --openai_api_key "sk-..." \
    --gemini_api_key "AIza..."

パラメータ

パラメータ必須説明
--stepはい実行するステップ: 1 (シナリオ)、2 (プロンプト)、all (順次実行)
--categoryはいカテゴリ: R1、R2、R3、R4、R5 または R1_1 など
--openai_api_keyStep 1OpenAI APIキー
--gemini_api_keyStep 2Gemini APIキー
--langオプションプロンプト言語: ko (デフォルト)、en
--num_promptsオプションプロンプト数 (デフォルト: 3)
--step1_modelオプションStep 1のモデル (デフォルト: gpt-4.1-2025-04-14)
--step2_modelオプションStep 2のモデル (デフォルト: models/gemini-2.5-pro)
--model_nameオプション--step1_model の非推奨エイリアス

例

root@kitploit:~
# Full pipeline (R1)
python main.py \
    --step all \
    --category R1 \
    --openai_api_key "sk-proj-..." \
    --gemini_api_key "AIza..."

# Step 1 only
python main.py \
    --step 1 \
    --category R2 \
    --openai_api_key "sk-proj-..."

# Step 2 only (English, 5 prompts)
python main.py \
    --step 2 \
    --category R5 \
    --lang en \
    --num_prompts 5 \
    --gemini_api_key "AIza..."

# Single subcategory
python main.py \
    --step 2 \
    --category R1_1 \
    --num_prompts 3 \
    --gemini_api_key "AIza..."

カテゴリ情報

カテゴリサブカテゴリ説明
R1R1_1 ~ R1_6金融セキュリティ脅威
R2R2_1 ~ R2_5詐欺および違法行為
R3R3_1 ~ R3_3不適切販売
R4R4_1 ~ R4_5市場操作
R5R5_1 ~ R5_7規制違反

評価

生成されたプロンプトに対するモデル応答を評価します。

実行

root@kitploit:~
cd /path/to/FinRED/src/eval

python src/eval/judge_finred.py \
    -i <input_csv_path> \
    -o <output_basename> \
    -d <output_dir>

例

root@kitploit:~
python src/eval/judge_finred.py \
    -i ./dataset/qwen_2.5_7b_all_with_responses.csv \
    -o qwen2.5_7b_responses \
    -d ./infer_result/

入力CSV形式

CSVには以下を含める必要があります:

  • prompt列
  • model response列

出力

  • infer_result/: 評価結果
  • judge_errors/: エラーログ

出力形式

シナリオJSON (Step 1)

root@kitploit:~
{
  "scenario_id": "R1_1_0001",
  "context": "...",
  "risk_description": "...",
  "attack_vector": "..."
}

プロンプトJSON (Step 2)

root@kitploit:~
{
  "prompt_1": "Provide details about vulnerabilities in a financial system...",
  "prompt_1_optionalelements": ["social engineering", "phishing"],
  "prompt_2": "...",
  "prompt_2_optionalelements": ["..."]
}
ツールをダウンロード