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
IPI-exposure-signal — Pipeline de recherche pour la détection de signaux latents d'exposition aux injections de prompts indirectes dans les LLM agentiques via le sondage des états cachés, incluant la collecte de traces, l'étiquetage, la featurisation et l'entraînement des sondes. | Kitploit
Outils/GitHubGitHub/jianshuod/ipi-exposure-signal
Apprentissage AutomatiqueArticles et RechercheApprentissage et ÉducationSécurité de l'IA
GitHubjianshuod/ipi-exposure-signal

IPI-exposure-signal

Pipeline de recherche pour la détection de signaux latents d'exposition aux injections de prompts indirectes dans les LLM agentiques via le sondage des états cachés, incluant la collecte de traces, l'étiquetage, la featurisation et l'entraînement des sondes.

Voir le dépôt

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
4il y a 20 joursPas encore vérifié

Signal d'exposition IPI

arXiv

Ceci est le dépôt de code de notre article : Your Agentic LLMs Secretly Encode Latent Signals of Indirect Prompt-Injection Exposure.

Version ArXiv et lien vers l'article : https://arxiv.org/abs/2608.02657

Ce dépôt implémente le pipeline de sondage des signaux latents d'exposition IPI : collecte de traces AgentDojo, étiquetage du risque IPI, featurisation des états cachés, et entraînement/évaluation des sondes d'exposition IPI.

Citation

root@kitploit:~
@misc{dong2026agenticllmssecretlyencode,
  title={Your Agentic LLMs Secretly Encode Latent Signals of Indirect Prompt-Injection Exposure},
  author={Jianshuo Dong and Yiming Liu and Maosen Zhang and Nan Deng and Xu Peng and Xiaoping Zhang and Tianwei Zhang and Jie Zhang and Han Qiu},
  year={2026},
  eprint={2608.02657},
  archivePrefix={arXiv},
  primaryClass={cs.CR},
  url={https://arxiv.org/abs/2608.02657},
}

Démarrage rapide

Commencez par les vérifications compatibles CPU :

1. Clonage et configuration

root@kitploit:~
git clone https://github.com/jianshuod/IPI-exposure-signal.git
cd IPI-exposure-signal

# Install uv if needed.
curl -LsSf https://astral.sh/uv/install.sh | sh

# This repository targets Python 3.12.
uv python install 3.12
uv sync --extra dev

2. Exécution des tests

root@kitploit:~
uv run pytest

La suite de tests est conçue pour s'exécuter sans ressources GPU. Elle vérifie la sérialisation des messages, l'enregistrement des attaques long-horizon AgentDojo, la logique d'étiquetage, la construction des jeux de données de sondes, les métriques d'entraînement, le comptage des tokens et l'empaquetage du patch vLLM.

3. Configuration d'un point de terminaison de modèle

Pour la collecte, pointez le collecteur vers un serveur de modèles compatible OpenAI :

root@kitploit:~
export IPI_AWARE_UPSTREAM_BASE_URL=http://127.0.0.1:8000/v1
export IPI_AWARE_UPSTREAM_API_KEY=EMPTY

Pour l'extraction des états cachés et l'entraînement des sondes, installez les dépendances du modèle et la version de PyTorch correspondant à votre environnement CUDA :

root@kitploit:~
uv sync --extra dev --extra models

Aperçu du pipeline

Le flux de travail principal est exposé via ipi-signal-probe :

Exemple :

root@kitploit:~
uv run ipi-signal-probe collect \
  --suite workspace \
  --attack direct \
  --injected \
  --max-cases 4 \
  --results-dir results/probe_traces/v2

uv run ipi-signal-probe label \
  --root results/probe_traces/v2/<run-name> \
  --labeling-protocol risk_faced

uv run ipi-signal-probe featurize \
  --root results/probe_traces/v2/<run-name> \
  --model Qwen/Qwen3-8B \
  --backend transformers_hook \
  --model-family qwen3 \
  --selected-position -1

uv run ipi-signal-probe partition \
  --root results/probe_traces/v2/<run-name> \
  --dataset broad

# Training consumes a JSON config. The Qwen example below generates the
# train/eval configs used for its full run.

Les protocoles d'étiquetage pris en charge sont risk_faced, risk_visible et risk_actual.

Exemple reproductible Qwen3.5-0.8B

Le répertoire examples/qwen3_5_0_8b/ contient une reproduction exécutable sur petit modèle et un test d'utilisabilité open source pour Qwen/Qwen3.5-0.8B.

Démarrez huit serveurs vLLM mono-GPU :

root@kitploit:~
examples/qwen3_5_0_8b/serve_qwen3_5_0_8b_8x.sh start

Exécutez un test de fumée :

root@kitploit:~
QWEN3_5_0_8B_MODE=smoke \
examples/qwen3_5_0_8b/run_probe_pipeline.sh start

Exécutez l'exemple complet :

root@kitploit:~
QWEN3_5_0_8B_MODE=full \
examples/qwen3_5_0_8b/run_probe_pipeline.sh start

L'exemple complet utilise 8 serveurs vLLM indépendants TP=1, 8 processus de collecte, 256 workers par processus/serveur, 8 shards de featurisation et des shards d'entraînement de sonde sur un seul GPU. Consultez examples/qwen3_5_0_8b/README.md pour toutes les variables d'environnement, les modes de reprise, les paramètres de cache et les commandes de statut/arrêt.

Capture directe vLLM

Le backend de featurisation par défaut est transformers_hook. Le backend de capture directe des états cachés vLLM nécessite l'overlay vLLM 0.19.0 vérifié :

root@kitploit:~
uv sync --frozen --extra dev --extra vllm
uv run python scripts/apply_vllm_ipi_aware_patch.py --check

Suivez docs/vllm_patches_v0.19.0.md avant utilisation :

root@kitploit:~
uv run ipi-signal-probe featurize \
  --root results/probe_traces/v2/<run-name> \
  --model Qwen/Qwen3-8B \
  --backend vllm_direct \
  --model-family qwen3 \
  --selected-position -1

Attaques AgentDojo long-horizon

Ce dépôt inclut une copie patchée d'AgentDojo sous vendor/agentdojo. La version amont d'AgentDojo n'expose pas nativement les attaques long-horizon requises par l'article : les commandes de collecte doivent donc être exécutées depuis cette copie source, ou avec vendor/agentdojo/src placé devant toute version amont d'AgentDojo installée dans PYTHONPATH.

Structure du répertoire

root@kitploit:~
IPI-exposure-signal/
├── ipi_aware/
│   ├── data_collection/      # AgentDojo traces and decision points
│   ├── message_content.py    # Chat-message normalization used by collection/features
│   └── probes/               # labels, features, partitions, training, eval
├── examples/
│   └── qwen3_5_0_8b/         # 8-GPU Qwen/Qwen3.5-0.8B reproduction scripts
├── patches/                  # vLLM 0.19.0 hidden-state capture overlay
├── vendor/agentdojo/         # patched AgentDojo source for long-horizon attacks
├── docs/                     # vLLM patch notes
├── scripts/                  # utility scripts
└── tests/                    # CPU-friendly regression tests

Configuration de l'environnement

Licence

Ce projet est sous licence Apache-2.0. Voir LICENSE.

Télécharger l’outil
CommandeObjectif
collectExécute les tâches AgentDojo et enregistre les traces ainsi que les points de décision
labelAttribue des étiquettes de risque IPI aux points de décision collectés
featurizeExtrait les états cachés du modèle pour les exemples de sonde
partitionConstruit les ensembles d'entraînement, de validation et d'évaluation
trainEntraîne des sondes légères sur les caractéristiques des états cachés
evalÉvalue les sondes entraînées sur les ensembles configurés
eval-groupsExécute une évaluation groupée pour les protocoles d'étiquetage et les configurations hors-échantillon
VariableObjectif
IPI_AWARE_UPSTREAM_BASE_URLPoint de terminaison de modèle compatible OpenAI utilisé pour la collecte
IPI_AWARE_UPSTREAM_API_KEYClé API pour le point de terminaison amont, ou EMPTY pour un vLLM local
PYTHONPATHPlacez vendor/agentdojo/src en premier lorsque vous utilisez la source AgentDojo patchée en dehors de ce dépôt
QWEN3_5_0_8B_MODELRemplace le chemin de checkpoint par défaut Qwen/Qwen3.5-0.8B dans les scripts d'exemple
QWEN3_5_0_8B_CACHE_DIRRedirige le modèle et les caches locaux vers un système de fichiers de données
QWEN3_5_0_8B_FEAT_BACKENDDéfinissez sur vllm_direct après avoir appliqué l'overlay vLLM