Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
KidnapRAG — Framework d’attaque en boîte noire qui détourne le raisonnement des systèmes de génération augmentée par récupération agentiques en injectant des documents empoisonnés, avec prise en charge de multiples méthodes d’attaque et jeux de données. | Kitploit
Outils/GitHubGitHub/chanwoochoi316/kidnaprag
Apprentissage AutomatiqueSécurité de l'IAAttaque Adversariale
GitHubchanwoochoi316/kidnaprag

KidnapRAG

Framework d’attaque en boîte noire qui détourne le raisonnement des systèmes de génération augmentée par récupération agentiques en injectant des documents empoisonnés, avec prise en charge de multiples méthodes d’attaque et jeux de données.

Voir le dépôt
213il y a 2 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

KidnapRAG : Une attaque en boîte noire pour détourner le raisonnement dans les systèmes de génération augmentée par récupération (RAG) agentiques

🎓 Article | 📄 Jeux de données | 🚀 Démarrage rapide

Démarrage rapide

Exécutez les commandes suivantes depuis le répertoire parent du dépôt KidnapRAG cloné.

root@kitploit:~
cd KidnapRAG
conda create -n KidnapRAG python=3.10
conda activate KidnapRAG
pip install -r requirements.txt

Ensuite, téléchargez les jeux de données du corpus 📄 et déplacez le jeu de données ReAct vers /KidnapRAG/ReAct et le jeu de données WebThinker vers /KidnapRAG/WebThinker

ReAct

Exemples sur HotpotQA avec le modèle Llama.

  1. Générer des réponses ReAct sans attaque.
root@kitploit:~
cd ReAct/ReAct
CUDA_VISIBLE_DEVICES=0,1,2,3 python attack_react.py --attack_method clean --model_path meta-llama/Llama-3.3-70B-Instruct --seed 1 --dataset hotpotqa

--model_path prend en charge Llama-3.3-70B-Instruct et Qwen/Qwen2.5-32B-Instruct.

--dataset prend en charge hotpotqa, musique et 2wikimultihopqa.

  1. Générer des documents leurres.
root@kitploit:~
CUDA_VISIBLE_DEVICES=0,1 python generate_attack_doc_kill.py --input_path /KidnapRAG/ReAct/results/adv_targeted_results/hotpotqa_seed1_clean_llama70b.json --gpu_num 2 --dataset hotpotqa --type ours

--type prend également en charge les méthodes d'attaque suivantes : naive pour l'attaque naïve, ignore pour l'attaque par ignorance, completion_real pour l'attaque par complétion factice, completion_realcmb pour l'attaque combinée, topicattack pour TopicAttack, poisonedRAG pour PoisonedRAG et paradox pour RAG Paradox.

  1. Créer cinq scénarios de traînage de chaîne. (BM, BCM, BCCM, BCCCM, BCCCCM)
root@kitploit:~
cd ..
python concat.py --dataset hotpotqa --gen_model llama70b

--gen_model prend en charge llama70b pour Llama-3.3-70B-Instruct et qwen25 pour Qwen/Qwen2.5-32B-Instruct.

  1. Indexer les documents générés.
root@kitploit:~
CUDA_VISIBLE_DEVICES=0 python scripts/build_index.py \
    --corpus_path /KidnapRAG/ReAct/datasets/hotpotqa/REACT_BM_llama70b.jsonl \
    --output_dir /KidnapRAG/ReAct/datasets/hotpotqa/REACT_BM_llama70b \
    --model_name intfloat/e5-large-v2
  1. Lancer l'attaque.
root@kitploit:~
cd ReAct
CUDA_VISIBLE_DEVICES=0,1,2,3 python attack_react.py --attack_method BM --model_path meta-llama/Llama-3.3-70B-Instruct --seed 1 --dataset hotpotqa

Webthinker

Exemples sur HotpotQA avec le modèle QwQ.

Exécutez cette section depuis la racine du dépôt KidnapRAG.

  1. Générer des réponses Webthinker sans attaque.
root@kitploit:~
cd Webthinker

bash scripts/webthinker/qwq_clean.sh \
  ./datasets/hotpotqa/hotpotqa_promptinject_select.json \
  ./datasets/hotpotqa_corpus/hotpotqa_corpus.jsonl \
  ./results/hotpotqa/clean_qwq.json

Arguments :

  • ./datasets/hotpotqa/hotpotqa_promptinject_select.json : chemin de la requête
  • ./datasets/hotpotqa_corpus/hotpotqa_corpus.jsonl : chemin du corpus
  • ./results/hotpotqa/clean_qwq.json : chemin des résultats
  1. Générer des documents leurres.
root@kitploit:~
cd scripts
CUDA_VISIBLE_DEVICES=0,1 python generate_attack_doc_kill.py --input_path /KidnapRAG/Webthinker/results/hotpotqa/clean_qwq.json --gpu_num 2 --dataset hotpotqa --type ours
  1. Créer cinq scénarios de traînage de chaîne. (BM, BCM, BCCM, BCCCM, BCCCCM)
root@kitploit:~
cd ..
python concat.py --dataset hotpotqa --gen_model qwq

--gen_model prend en charge deepseek_32b pour lixiaoxi45/WebThinker-R1-32B et qwq pour Qwen/QwQ-32B.

  1. Lancer l'attaque.
root@kitploit:~
bash scripts/webthinker/qwq_attack.sh \
  ./datasets/hotpotqa/hotpotqa_promptinject_select.json \
  ./datasets/hotpotqa_corpus/hotpotqa_corpus.jsonl \
  ./datasets/hotpotqa_poisoned_corpus/WEBTHINKER_BM_qwq.jsonl \
  ./results/hotpotqa/BM.json

Arguments :

  • ./datasets/hotpotqa/hotpotqa_promptinject_select.json : chemin de la requête
  • ./datasets/hotpotqa_corpus/hotpotqa_corpus.jsonl : chemin du corpus
  • ./datasets/hotpotqa_poisoned_corpus/WEBTHINKER_BM_qwq.jsonl : chemin du corpus empoisonné
  • ./results/hotpotqa/BM.json : chemin des résultats

Citation

root@kitploit:~
@misc{
}
Télécharger l’outil