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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
PentestGPT — 대규모 언어 모델로 구동되는 자동 침투 테스트 에이전트 프레임워크 | Kitploit
도구/GitHubGitHub/greydgl/pentestgpt
Penetration Testing FrameworksReconnaissanceVulnerability ScannersExploit FrameworksCTFPenetration TestingPapers & ResearchLearning & EducationAI Security
GitHubgreydgl/pentestgpt

PentestGPT

대규모 언어 모델로 구동되는 자동 침투 테스트 에이전트 프레임워크

14.8k2.6k1개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

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

Contributors Forks Stargazers Issues MIT License Discord


PentestGPT

AI 기반 자율 침투 테스트 에이전트
USENIX Security 2024에 게재됨

공식 웹사이트: pentestgpt.com »

연구 논문 · 버그 신고 · 기능 요청

GreyDGL%2FPentestGPT | Trendshift


데모

설치

설치 데모

YouTube에서 시청하기

PentestGPT 작동 영상

PentestGPT 데모

YouTube에서 시청하기


v1.0의 새로운 기능 (에이전트 업그레이드)

  • 다단계 파이프라인 - 에이전트가 단계별(CTF의 경우 정찰 → 익스플로잇 → 워크스루, 침투 테스트의 경우 자산 탐색 → 취약점 식별 → 보고서)로 작업하며 각 단계의 결과를 다음 단계에 전달합니다.
  • 자율 에이전트 - Claude Code 또는 Codex를 구동하여 사람의 개입 없이 도구를 실행하고 추론합니다.
  • 세션 지속성 - 침투 테스트 세션을 저장하고 재개할 수 있습니다.

자율 CTF 파이프라인은 Claude Code 및 Codex용 백엔드 플러그인이 가능합니다. 대화형 현대화된 레거시 모드(pentestgpt-legacy)는 더 다양한 제공자를 지원합니다: OpenAI, Anthropic, Google Gemini, DeepSeek, xAI, Qwen, Moonshot, 로컬 Ollama. 자세한 내용은 대화형 멀티-LLM 모드를 참조하세요.


기능

  • AI 기반 챌린지 해결사 - LLM의 고급 추론 능력을 활용하여 침투 테스트 및 CTF 수행
  • 실시간 워크스루 - 에이전트가 챌린지를 해결하는 과정을 실시간으로 단계별 추적
  • 다중 카테고리 지원 - 웹, 암호, 리버싱, 포렌식, PWN, 권한 상승
  • 실시간 피드백 - AI가 작업하는 모습을 실시간 활동 업데이트로 확인
  • 확장 가능한 아키텍처 - 향후 개선을 위한 깔끔하고 모듈식 설계

빠른 시작

사전 요구 사항

  • Python 3.12+
  • uv - Python 패키지 관리자
  • Claude Code CLI (claude) - 로컬 Claude 실행을 위해 설치 및 인증 필요. Claude Code 문서 참조
  • Codex CLI (codex) - 로컬 Codex 실행을 위해 설치 및 인증 필요. 아래 Docker 흐름은 두 CLI를 모두 번들로 제공합니다.

설치

root@kitploit:~
git clone https://github.com/GreyDGL/PentestGPT.git
cd PentestGPT
make install    # uv sync 실행

명령어 참조

명령어설명
make install의존성 설치
make test모든 테스트 실행
make check린트 + 타입체크 실행

사용법

root@kitploit:~
# 대상에 대해 실행 (기본값: CTF 모드)
pentestgpt --target 10.10.11.234

# 챌린지 컨텍스트 포함
pentestgpt --target 10.10.11.50 --instruction "WordPress 사이트, 플러그인 취약점에 집중"

# 침투 테스트 모드 (자산 탐색 → 취약점 → 보고서)
pentestgpt --target 10.10.11.234 --mode pentest

# 이전에 저장된 세션 목록 보기
pentestgpt --list-sessions

에이전트는 다단계 파이프라인을 통해 작업하며, 각 단계의 결과를 다음 단계에 전달합니다 — CTF의 경우 정찰 → 익스플로잇 → 워크스루, 침투 테스트의 경우 자산 탐색 → 취약점 식별 → 보고서.

Docker에서 실행 (한 번 설치, 한 번 로그인)

자체 포함 이미지는 도구 + Claude Code 및 Codex CLI를 번들로 제공합니다. 한 번 로그인하면 세션이 명명된 볼륨에 유지되므로 이후 실행 시 재로그인이 필요하지 않습니다.

root@kitploit:~
make docker-build        # 도구 이미지 빌드
make docker-login        # 일회성, 멱등성: 로그인 상태를 확인하고, 누락된 것만 로그인
make docker-auth-status  # 두 CLI가 모두 로그인되어 있는지 확인 (ROUNDTRIP=1 설정 시 실시간 1토큰 확인)

# 대상에 대해 파이프라인 실행 (모든 백엔드 / 모델 / 모드):
make docker-run TARGET=http://127.0.0.1:8000 BACKEND=codex MODEL=gpt-5.5 MODE=ctf
make docker-run TARGET=10.10.11.234         BACKEND=claude MODEL=opus    MODE=pentest

make docker-login은 Claude(setup-token → 토큰이 볼륨에 저장됨)와 Codex(자체 컨테이너 내 codex login, OAuth 콜백은 socat을 통해 전달 — ChatGPT 리프레시 토큰이 일회용이므로 시딩되지 않음)에 로그인합니다. 멱등적입니다: 재실행 시 여전히 유효한 것은 건너뜁니다. 로그인은 컨테이너 재생성 시에도 유지됩니다. make docker-down은 유지하고, make docker-nuke는 로그인 볼륨을 제거합니다(새 로그인 강제 / 토큰 교체). 설계 및 세부사항: docs/docker-dev-plan.md.


대화형 멀티-LLM 모드 (현대화된 레거시)

USENIX 2024 논문의 고전적인, 인간-루프 PentestGPT가 pentestgpt-legacy로 보존 및 현대화되었습니다. 이 모드는 추론 / 생성 / 파싱의 세 가지 협력 LLM 세션을 실행하며, 사용자가 대화형으로 세션을 진행하는 동안(next, more, todo, discuss 명령어) **침투 테스트 작업 트리(PTT)**를 유지합니다. 자율 고정 단계 파이프라인은 Claude 및 Codex 백엔드를 지원하고, 이 레거시 모드는 다양한 제공자와 공식 SDK를 통해 네이티브로 통신합니다.

제공자 구성

사용하려는 제공자의 API 키를 설정합니다(환경 변수 또는 .env 파일 — .env.example 참조). 구성한 제공자만 활성화됩니다.

root@kitploit:~
OPENAI_API_KEY=...        ANTHROPIC_API_KEY=...     GEMINI_API_KEY=...   # 또는 GOOGLE_API_KEY
DEEPSEEK_API_KEY=...      GROK_API_KEY=...          QWEN_API_KEY=...     KIMI_API_KEY=...

실행

root@kitploit:~
# 각 세션에 대해 사용 가능한 최상의 모델을 자동 선택
pentestgpt-legacy

# 세션별 모델 선택
pentestgpt-legacy --reasoning-model claude-opus-4-8 --parsing-model gemini-3.5-flash

# Ollama를 통한 로컬 모델 (OpenAI 호환)
pentestgpt-legacy --reasoning-model ollama:qwen3 --base-url http://localhost:11434/v1

# 지원되는 모든 모델 목록 표시 (구성된 제공자 표시)
pentestgpt-legacy --list-models

# 구성된 모든 모델에 대해 실시간 왕복 테스트를 수행하고 통과/실패 매트릭스 출력
pentestgpt-legacy --smoke-test

지원 모델 (2026년 6월 웹 검증)

pentestgpt-legacy --list-models는 항상 최신 레지스트리를 렌더링합니다. 모델 ID 변경 후 --smoke-test를 다시 실행하세요. 현재 스냅샷:

레지스트리는 pentestgpt_legacy/llm/registry.py에 있습니다 (단일 진실 공급원). 모델 추가는 하나의 ModelSpec 항목으로 이루어집니다. OpenAI 호환 제공자는 하나의 커넥터를 재사용합니다.


원격 측정

PentestGPT는 도구 개선을 위해 익명 사용 데이터를 수집합니다. 이 데이터는 Langfuse 프로젝트로 전송되며 다음을 포함합니다:

  • 세션 메타데이터 (대상 유형, 기간, 완료 상태)
  • 도구 실행 패턴 (실제 명령어가 아닌 사용된 도구)
  • 플래그 탐지 이벤트 (플래그 내용이 아닌 플래그 발견 사실)

민감한 데이터는 수집되지 않습니다 - 명령 출력, 자격 증명 또는 실제 플래그 값은 절대 전송되지 않습니다.

비활성화

root@kitploit:~
# 명령줄 플래그 사용
pentestgpt --target 10.10.11.234 --no-telemetry

# 환경 변수 사용
export LANGFUSE_ENABLED=false

벤치마크 기록

PentestGPT는 2025년 12월 XBOW 검증 스위트 실험에서 86.5% 성공률(104개 중 90개)을 달성했습니다. 이 숫자는 역사적 연구 결과이며, 현재 pentestgpt-agent의 회귀 보장이 아닙니다.

XBOW 하네스와 결과 아카이브는 참고 전용 연구 아티팩트로 이 제품 저장소 외부에서 유지 관리됩니다. 지원되는 PentestGPT CLI, Makefile, CI 및 Docker 런타임은 XBOW 실행기를 노출하지 않습니다. 향후 평가에서는 제품 의존성으로 만들지 않고 별도로 소유한 어댑터를 통해 해당 코퍼스를 재사용할 수 있습니다.


인용

PentestGPT를 연구에 사용하실 경우 다음 논문을 인용해 주세요:

root@kitploit:~
@inproceedings{299699,
  author = {Gelei Deng and Yi Liu and Víctor Mayoral-Vilches and Peng Liu and Yuekang Li and Yuan Xu and Tianwei Zhang and Yang Liu and Martin Pinzger and Stefan Rass},
  title = {{PentestGPT}: Evaluating and Harnessing Large Language Models for Automated Penetration Testing},
  booktitle = {33rd USENIX Security Symposium (USENIX Security 24)},
  year = {2024},
  isbn = {978-1-939133-44-1},
  address = {Philadelphia, PA},
  pages = {847--864},
  url = {https://www.usenix.org/conference/usenixsecurity24/presentation/deng},
  publisher = {USENIX Association},
  month = aug
}

라이선스

MIT 라이선스에 따라 배포됩니다. 자세한 내용은 LICENSE.md를 참조하세요.

면책 조항: 이 도구는 교육 목적 및 승인된 보안 테스트 전용입니다. 저자는 불법적인 사용을 묵인하지 않습니다. 사용에 따른 책임은 사용자 본인에게 있습니다.


감사의 말

  • 연구는 Quantstamp 및 NTU Singapore의 지원을 받았습니다.

(맨 위로)

도구 다운로드
make build
배포 가능 패키지 빌드
제공자현재 모델레거시 (유지)환경 변수 키
OpenAIgpt-5.5, gpt-5.5-pro, gpt-5.4-mini, gpt-5.4-nano, gpt-5.2, gpt-5.3-codexgpt-4o, gpt-4o-mini, o3, o4-miniOPENAI_API_KEY
Anthropicclaude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5-20251001—ANTHROPIC_API_KEY
Google Geminigemini-3.1-pro, gemini-3.5-flash, gemini-3-pro, gemini-3.1-flash-litegemini-2.5-pro, gemini-2.5-flashGEMINI_API_KEY / GOOGLE_API_KEY
DeepSeekdeepseek-v4-flash, deepseek-v4-prodeepseek-chat, deepseek-reasonerDEEPSEEK_API_KEY
xAI Grokgrok-4.3—GROK_API_KEY / XAI_API_KEY
Alibaba Qwenqwen3.7-max, qwen3.5-flashqwen3-maxQWEN_API_KEY / DASHSCOPE_API_KEY
Moonshot Kimikimi-k2.6—KIMI_API_KEY (기본값 .cn; .ai의 경우 MOONSHOT_BASE_URL 설정)
Local (Ollama)ollama:<model> (예: ollama:qwen3)—없음 (OLLAMA_BASE_URL)