
도구 호출은 당신에 대해 얼마나 많은 것을 드러낼 수 있는가? 도구 호출 추적에서 발생하는 프라이버시 유출
PrivacyTrace는 사용자 대화에 접근하지 않고 MCP 도구 호출 흔적으로부터 사용자 프로필을 추론하는 문제를 연구합니다. 이 벤치마크는 여행, 건강, 쇼핑, 커리어 학습 분야에 걸쳐 1,000개의 합성 사용자 프로필, 4,000개의 에이전트 궤적, 25개의 MCP 서버를 포함합니다.
참조 환경은 Linux에서 Python 3.10을 사용합니다:
git clone https://github.com/AI45Lab/PrivacyTrace.git
cd PrivacyTrace
PYTHON=python3.10 bash scripts/setup_environment.sh
source .venv/bin/activate
모델 호출의 경우 .env.example을 .env로 복사한 뒤 엔드포인트와
API 키를 구성하세요. 라이브 MCP 도구의 경우 .env.mcp.example에서 .env.mcp도 구성하고
python mcp_servers/install.py --install-dependencies를 실행하세요.
의존성 세부 사항은 환경 설정을 참조하세요.
전체 데이터셋은 Hugging Face에 호스팅되어 있습니다. 데이터셋 페이지에서 접근을 요청하세요. 다운로드에는 수동 승인이 필요합니다. 승인 후:
hf auth login
python scripts/download_data.py
python -m eval.reproduce_results --input-root .
The last command rebuilds result tables and figures from the downloaded
experiment records, without model calls. Outputs are written to
artifacts/results/. See data access for the archive
contents and the paper for reported results.
Run the following stages with your configured model endpoints and MCP services:
# 1. Generate population-calibrated profiles.
python -m generate.generate_profiles --count 1000
# 2. Generate task scenarios in four domains.
python -m generate.generate_scenarios \
--n 1000 \
--input artifacts/profile_runs/latest/profiles.jsonl \
--output artifacts/scenario/cases.jsonl
# 3. Collect and package agent trajectories.
python -m agent.run_scenarios \
--profiles artifacts/profile_runs/latest/profiles.jsonl \
--scenarios artifacts/scenario/cases.jsonl \
--domains travel health shopping career_learning
python -m agent.package_trajectories --source-dir artifacts/trajectory_runs/latest
# 4. Infer user profiles from the traces.
python -m attack.run_attacks \
--input artifacts/trajectories/trajectories.jsonl \
--output-dir artifacts/privacy_attacks/run \
--attack-mode two_stage
명령 가이드는 채점, 관찰 채널 실험, 교차 도메인 추론을 다룹니다. 각 진입점의 인수에 대해서는 --help를 사용하십시오.
| 디렉터리 | 내용 |
|---|---|
generate/ | 프로필 합성, 모집단 보정, 시나리오 생성 |
agent/ | 사용자 시뮬레이터, MCP 에이전트, 궤적 수집 및 패키징 |
attack/ | 프로필 추론 및 채널/범위 실험 |
eval/ | 의미론적 채점, 결과 분석, 재현 |
llm/ | 모델 제공자 및 요청 클라이언트 |
mcp_servers/ | MCP 서버 카탈로그, 어댑터, 업스트림 종속성 |
config/ | 도메인 설정, 정책, 도구 스키마 |
data/ | 통계 참조 입력 및 보정 대상 |
examples/ | 소규모 예제 작업 레코드 |
scripts/ | 환경 설정 및 데이터셋 다운로드 |
docs/ | 사용법 및 방법 문서 |
tests/ | 단위 테스트 |
데이터 문서는 데이터셋 카드를 참조하십시오. 프로젝트 웹사이트는 자체 저장소에서 유지 관리됩니다.
추후 명시 예정. 타사 구성 요소는 원래 라이선스를 유지합니다. THIRD_PARTY_NOTICES.md를 참조하십시오.