Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
RAS-Eval — 장기 지평(long-horizon) 작업에서 LLM 에이전트의 도구 호출 보안을 평가하고, 프롬프트 인젝션 및 도구 중독 공격을 생성하며, 런타임에 LTL 명세를 검증하는 벤치마크 하네스입니다. | Kitploit
도구/GitHubGitHub/lanzer-tree/ras-eval
Dynamic Analysis (Sandboxing)Vulnerability AnalysisScripting & AutomationPenetration TestingPapers & ResearchLearning & EducationAI SecurityAdversarial AttackLabs & Practice
GitHublanzer-tree/ras-eval

RAS-Eval

장기 지평(long-horizon) 작업에서 LLM 에이전트의 도구 호출 보안을 평가하고, 프롬프트 인젝션 및 도구 중독 공격을 생성하며, 런타임에 LTL 명세를 검증하는 벤치마크 하네스입니다.

3일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

장기 지평 컨텍스트 작업에서 실제 에이전트의 도구 호출에 대한 명세 기반 보안 평가

사전 요구 사항

  • uv — Python 환경 및 의존성 관리.
  • 샌드박스 런타임, 다음 중 하나 설치:
    • Docker
    • Apptainer

이미지 빌드

docker 이미지와 apptainer 이미지 중 하나를 빌드

Docker 이미지 빌드

cd docker

linux/amd64:

bash build.sh                

linux/mac/arm64:

PLATFORM=linux/arm64 IMAGE_TAG=ras-eval-arm:latest bash build.sh

Apptainer 이미지 빌드

cd docker

linux/amd64:

EXPORT_TAR=1 bash build.sh

linux/mac/arm64:

EXPORT_TAR=1 PLATFORM=linux/arm64 IMAGE_TAG=ras-eval-arm:latest bash build.sh

환경 설정

저장소 루트에 .env를 생성합니다:

# LLM inference endpoint (OpenAI Chat-Completion)
OPENAI_API_KEY="sk-xxx"
OPENAI_BASE_URL="https://..."

# toolkit APIs (required by evaluation tasks)
AMAP_KEY="xxx"            # Amap - https://lbs.amap.com/
TAVILY_API_KEY="xxx"      # Tavily - https://www.tavily.com/
TUSHARE_TOKEN="xxx"       # Tushare - https://tushare.pro/

Python 종속성 설치:

uv sync

평가 실행

entries/runtime_verification.py는 테스트 대상 에이전트를 실행하고, 모든 도구 호출 후에 nuXmv로 LTL 명세를 검사합니다.

Docker

uv run entries/runtime_verification.py \
    --input_path data/input/ras_eval_toma.jsonl \
    --output_path data/output/deepseek-v4-pro/toma_opencode.jsonl \
    --framework opencode \
    --model provider/deepseek-v4-pro \
    --api_key sk-xxx \
    --base_url https://... \
    --sandbox docker \
    --os mac \
    --image ras-eval-arm:latest \
    --parallel 2 \
    --qps 1.0 \
    --request_qps 1.0 \
    --request_max_retries 5 \
    --timeout 900 \
    --limit 5 \
    --skip_exist_traceid

Apptainer

uv run entries/runtime_verification.py \
    --input_path data/input/ras_eval_toma.jsonl \
    --output_path data/output/deepseek-v4-pro/toma_opencode.jsonl \
    --framework opencode \
    --model provider/deepseek-v4-pro \
    --sandbox apptainer \
    --os linux \
    --apptainer_path /usr/local/bin/apptainer \  # path to your installed apptainer
    --image docker/ras-eval-amd--latest.sif \ # path to your saved image
    --parallel 2 \
    --qps 1.0 \
    --request_qps 1.0 \
    --request_max_retries 5 \
    --timeout 900 \
    --limit 5 \
    --skip_exist_traceid

매개변수 참고 사항:

  • --framework: opencode | autogen | langchain | mcp | openai-agent | qwen-agent | hermes | openclaw | deepseek-harness | pi.
  • --api_key / --base_url는 선택 사항이며 .env의 OPENAI_API_KEY / OPENAI_BASE_URL로 대체됩니다.
  • --limit N은 샘플 수를 제한하며, --traceid ID는 하나의 샘플만 실행합니다.
  • --apptainer_path는 Apptainer 백엔드에서만 사용됩니다.
  • --model provider/deepseek-v4-pro에서 provider는 자리 표시자이며, 임의의 문자열이 될 수 있습니다(예: 실제 provider 이름 또는 임의의 접두사).

데이터셋

일부 이름은 논문과 다르며, 향후 수정될 예정입니다:

간접 프롬프트 주입(Indirect Prompt Injection): data/input/ras_eval_toma.jsonl (toma) 도구 중독 공격(Tool Poisoning Attack): data/input/ras_eval_tpa.jsonl (tpa) 스킬 코드 주입(Skill Code Injection): data/input/ras_eval_cia_skill.jsonl (cia) 도구 코드 주입(Tool Code Injection): data/input/ras_eval_cia_tool.jsonl (cia_tool)

실행 데이터 구성

1. 일반 작업 생성

touch data/output/seed.jsonl       # empty seed for a fresh run

uv run entries/flywheel_infer.py \
    --task generate \
    --mode base \
    --framework opencode \
    --model provider/deepseek-v4-pro \
    --api_key sk-xxx \
    --base_url https://... \
    --input_path data/output/seed.jsonl \
    --output_dir data/output/flywheel-generate \
    --sandbox docker \
    --os mac \
    --image ras-eval-arm:latest \
    --depth 9 \
    --limit 50 \
    --max_per_toolkit 5 \
    --disable_native_tools \
    --parallel 8 \
    --qps 1.0 \
    --timeout 900

Output: data/output/flywheel-generate/dataset/generated.jsonl.

2. 명세 주석 달기

uv run entries/flywheel_infer.py \
    --task annotate \
    --mode base \
    --framework opencode \
    --benchmark ras-eval-next \
    --model provider/deepseek-v4-pro \
    --api_key sk-xxx \
    --base_url https://... \
    --input_path data/output/flywheel-generate/dataset/generated.jsonl \
    --output_dir data/output/flywheel-annotate \
    --sandbox docker \
    --os mac \
    --image ras-eval-arm:latest \
    --max_iterations 10 \
    --limit 50 \
    --disable_native_tools \
    --parallel 8 \
    --qps 1.0 \
    --timeout 3000 \
    --skip_exist_traceid

--mode base는 완성 + 안전 명세를 주석 처리하고, --mode attack은 보안 명세를 주석 처리하며 --benchmark agentdojo 또는 skill_inject가 필요합니다. 출력: data/output/flywheel-annotate/dataset/annotated.jsonl.

3. 공격 태스크 생성

uv run entries/flywheel_infer.py \
    --task generate \
    --mode attack \
    --framework opencode \
    --attack_type toma \
    --attack_model provider/deepseek-v4-pro \
    --target_model provider/deepseek-v4-pro \
    --api_key sk-xxx --base_url https://... \
    --target_llm_api_key sk-xxx \
    --target_llm_base_url https://... \
    --input_path data/output/flywheel-annotate/dataset/annotated.jsonl \
    --output_dir data/output/flywheel-attack \
    --sandbox docker \
    --os mac \
    --image ras-eval-arm:latest \
    --number_target_tool 1 \
    --max_iterations 6 \
    --max_restart 3 \
    --limit 50 \
    --parallel 2 \
    --qps 1.0 \
    --timeout 1200 \
    --skip_exist_traceid

--attack_type: toma | tpa | cia | cia-tool. --attack_model이 생략된 경우 --model은 공격 최적화 도구의 폴백입니다. 보안 명세는 공격 파이프라인 자체에서 초안이 작성됩니다. 출력: data/output/flywheel-attack/dataset/attack_generated.jsonl — 이것이 최종 데이터셋이며, entries/runtime_verification.py에 --input_path로 전달할 준비가 되어 있습니다(평가 실행 참조).

도구 다운로드