Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
IPI-exposure-signal — 에이전트형 LLM에서 히든 스테이트 프로빙을 통해 잠재적인 간접 프롬프트 인젝션 노출 신호를 탐지하기 위한 연구 파이프라인으로, 트레이스 수집, 레이블링, 피처화, 프로브 학습을 포함합니다. | Kitploit
도구/GitHubGitHub/jianshuod/ipi-exposure-signal
Machine LearningPapers & ResearchLearning & EducationAI Security
GitHubjianshuod/ipi-exposure-signal

IPI-exposure-signal

에이전트형 LLM에서 히든 스테이트 프로빙을 통해 잠재적인 간접 프롬프트 인젝션 노출 신호를 탐지하기 위한 연구 파이프라인으로, 트레이스 수집, 레이블링, 피처화, 프로브 학습을 포함합니다.

저장소 보기
420일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

IPI 노출 신호

arXiv

본 논문의 코드 저장소입니다: 당신의 에이전트 LLM은 간접 프롬프트 인젝션 노출의 잠재 신호를 은밀하게 인코딩합니다.

ArXiv 버전 및 논문 링크: https://arxiv.org/abs/2608.02657

이 저장소는 잠재 IPI 노출 신호를 위한 프로빙 파이프라인을 구현합니다: AgentDojo 트레이스 수집, IPI 위험 라벨링, 히든 스테이트 특성화(featurization), 그리고 IPI 노출 프로브 훈련/평가.

인용

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},
}

빠른 시작

먼저 CPU 친화적인 검사부터 시작하세요:

1. 클론 및 설정

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. 테스트 실행

root@kitploit:~
uv run pytest

테스트 스위트는 GPU 리소스 없이 실행되도록 설계되었습니다. 핵심 메시지 직렬화, AgentDojo 장기 지평(long-horizon) 공격 등록, 라벨링 로직, 프로브 데이터셋 구축, 훈련 메트릭, 토큰 계산, vLLM 패치 패키징을 검사합니다.

3. 모델 엔드포인트 구성

수집 단계에서는 수집기를 OpenAI 호환 모델 서버에 연결하십시오:

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

히든 스테이트 추출 및 프로브 훈련을 위해 모델 의존성과 CUDA 환경에 맞는 PyTorch 빌드를 설치하십시오:

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

파이프라인 개요

메인 워크플로는 ipi-signal-probe를 통해 제공됩니다:

예시:

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.

지원되는 라벨링 프로토콜은 risk_faced, risk_visible, 그리고 risk_actual입니다.

재현 가능한 Qwen3.5-0.8B 예제

examples/qwen3_5_0_8b/ 디렉토리에는 Qwen/Qwen3.5-0.8B에 대한 실행 가능한 소형 모델 재현 및 오픈소스 사용성 테스트가 포함되어 있습니다.

8개의 단일 GPU vLLM 서버를 시작합니다:

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

스모크 테스트를 실행합니다:

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

전체 예제를 실행합니다:

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

전체 예제는 8개의 독립적인 TP=1 vLLM 서버, 8개의 수집기 프로세스, 프로세스/서버당 256개 워커, 8개의 특성화(featurization) 샤드, 단일 GPU 프로브 훈련 샤드를 사용합니다. 모든 환경 변수, 재개 모드, 캐시 설정, 상태/중지 명령은 examples/qwen3_5_0_8b/README.md를 참조하십시오.

vLLM 직접 캡처

기본 특성화 백엔드는 transformers_hook입니다. 직접 vLLM 히든 스테이트 캡처 백엔드는 체크인된 vLLM 0.19.0 오버레이가 필요합니다:

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

사용 전에 docs/vllm_patches_v0.19.0.md의 내용을 따르십시오:

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

장기 지평 AgentDojo 공격

이 저장소는 vendor/agentdojo 아래에 패치된 AgentDojo 체크아웃을 번들로 제공합니다. 업스트림 AgentDojo는 이 논문에서 요구하는 장기 지평(long-horizon) 공격을 기본적으로 노출하지 않으므로, 수집 명령은 이 소스 체크아웃에서 실행하거나 PYTHONPATH에서 설치된 업스트림 AgentDojo보다 앞에 vendor/agentdojo/src를 배치하여 실행해야 합니다.

디렉토리 구조

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

환경 구성

라이선스

이 프로젝트는 Apache-2.0에 따라 라이선스가 부여됩니다. LICENSE를 참조하십시오.

도구 다운로드
CommandPurpose
collectAgentDojo 작업을 실행하고 트레이스 및 결정 지점 저장
label수집된 결정 지점에 IPI 위험 라벨 할당
featurize프로브 예제에 대한 모델 히든 스테이트 추출
partition훈련/검증/평가 분할 구축
train히든 스테이트 특성 기반 경량 프로브 훈련
eval구성된 분할에서 훈련된 프로브 평가
eval-groups라벨링 프로토콜 및 미노출(held-out) 설정에 대한 그룹 평가 실행
VariablePurpose
IPI_AWARE_UPSTREAM_BASE_URL수집에 사용되는 OpenAI 호환 모델 엔드포인트
IPI_AWARE_UPSTREAM_API_KEY업스트림 엔드포인트의 API 키, 로컬 vLLM의 경우 EMPTY
PYTHONPATH이 체크아웃 외부에서 패치된 AgentDojo 소스 사용 시 vendor/agentdojo/src를 맨 앞에 배치
QWEN3_5_0_8B_MODEL예제 스크립트에서 기본 Qwen/Qwen3.5-0.8B 체크포인트 경로를 재정의
QWEN3_5_0_8B_CACHE_DIR모델 및 로컬 캐시를 데이터 파일시스템으로 리디렉션
QWEN3_5_0_8B_FEAT_BACKENDvLLM 오버레이 적용 후 vllm_direct로 설정