AI로 TTP를 실행하세요!
| 기능 | 설명 |
|---|
| 멀티 포맷 파싱 | PDF(LLM 기반), STIX 2.1, Markdown, URL – 위협 보고서를 붙여넣고 바로 시작 |
| LLM 분석 | MITRE ATT&CK 기술 추출, 대상 매핑, 실행 명령 생성 |
| 실행 그래프 | 대화형 Cytoscape DAG – 대상별로 그룹화된 단계, 모드(실행/시뮬레이션)별 색상 |
| 자율 실행 | 에이전트가 QMP 게스트 에이전트, WinRM 또는 SSH를 통해 승인된 명령을 실행하며 실시간 로그 스트리밍 제공 |
| VECTR 통합 | VECTR를 Proxmox에 자동 배포, 캠페인·테스트 케이스·암호화된 아티팩트 동기화 |
| 멀티 LLM 지원 | Anthropic Claude, OpenAI GPT-4o, OpenRouter, Ollama(로컬) |
| 환경 점검 | 사전 검증: Proxmox, VM, 대상, LLM, VECTR, 시스템 도구 |
| 실행 노트 | 스크린샷이 포함된 자동 생성 Markdown 노트, UI에서 탐색 가능 |
| 설정 마법사 | 최초 실행 설정 가이드: Proxmox 부트스트랩, VM 검색, 자격 증명 구성 |
git clone https://github.com/Antonlovesdnb/TTPRunner.git
cd TTPRunner
docker compose up -d --build
http://localhost:4000을 열면 설정 마법사가 초기 구성을 안내합니다.
git clone https://github.com/Antonlovesdnb/TTPRunner.git
cd TTPRunner
npm run install:all
npm run dev
API는 4000번 포트, UI는 3000번 포트에서 실행됩니다.
Threat Report LLM Analysis User Review
(PDF, STIX, MD, URL) (Extract TTPs, (Cytoscape graph,
│ map to targets, edit steps,
│ gen commands) set modes)
▼ ▼ ▼
┌──────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────┐
│ Parser │───▶│ LLM Engine │───▶│ Plan Graph │───▶│ Agent │
└──────────┘ └──────────────┘ └──────────────┘ └────┬─────┘
│
┌───────────────────────────────────────┤
│ │ │ │
▼ ▼ ▼ ▼
┌─────────┐ ┌──────────┐ ┌─────────┐ ┌──────────┐
│ QMP │ │ WinRM │ │ SSH │ │ Output │
│ (guest │ │(Windows) │ │ (Linux) │ │ │
│ agent) │ │ │ │ │ │ Attire │
└────┬────┘ └────┬─────┘ └────┬────┘ │ Notes │
│ │ │ │ VECTR │
└──────────────┼───────────────┘ └──────────┘
▼
┌───────────────────┐
│ Proxmox Lab │
│ │
│ Windows & Linux │
│ Target VMs │
└───────────────────┘
| 계층 | 기술 |
|---|---|
| API | Bun + Hono, SQLite |
| 프론트엔드 | Vue 3, Vite, Tailwind CSS, Cytoscape.js |
| 실행 | QMP (QEMU Monitor Protocol), WinRM via pywinrm, SSH |
| LLM | Anthropic Claude, OpenAI, OpenRouter, Ollama |
| 출력 | Attire JSON, Markdown 노트, VECTR API (GraphQL + REST) |
| 인프라 | Proxmox VE, Docker, LXC 컨테이너 |
참고: TTPRunner는 Constructing Defense Lab 환경에서 테스트되었습니다. 다른 Proxmox 실습 구성은 다르게 동작할 수 있습니다.
기여 방법에 대한 지침은 CONTRIBUTING.md를 참조하세요.