업데이트로 돌아가기
New releaseSep 4, 2026

pentest-ai v1.4.0

모든 발견을 입증하는 오픈소스 AI 펜테스터. 머신 오라클이 각 익스플로잇을 재실행하며, 검증된 버그는 직접 재현할 수 있는 증명 캡슐과 함께 제공됩니다.

공유

Pentest-AI — 오픈소스 AI 모의 침투 테스트. 재현 가능한 결과.

PyPI Python License: MIT

웹사이트 · 빠른 시작 · 버그 바운티 · 검증 · 문서 · 이슈

Pentest-AI는 모든 발견을 입증하는 오픈소스 AI 모의 침투 테스트 및 버그 바운티 도구입니다. AI 클라이언트나 모델을 실제 모의 침투 테스트 워크플로에 연결하여 웹 애플리케이션을 조사하고, 취약점을 발견하고 재현하며, 머신 오라클을 사용해 익스플로잇이 실제로 작동하는지 검증합니다. 증명이 없으면 발견도 없습니다. 검증된 결과에는 직접 재현할 수 있는 증거가 포함됩니다.

MCP(Claude Code, Codex, Cursor, VS Code), CLI, 또는 CI/CD를 통해 사용할 수 있습니다. 모델이 조사를 주도하고, 독립적인 오라클이 발견이 검증된 판정을 받을지 결정합니다. 따라서 출력은 AI 슬롭이 아닌 신호입니다.

승인된 버그 바운티를 위해 설계되었습니다: 프로그램의 범위(HackerOne, Bugcrowd, Intigriti, YesWeHack)를 가져와 범위가 강제되는 작업을 실행하고, 각 검증된 발견을 플랫폼에 바로 제출할 수 있는 형태로 변환합니다. 버그 바운티 워크플로로 이동 →

소유하거나 명시적 평가 승인을 받은 시스템만 테스트하세요. 작업을 실행하기 전에 허용 사용 정책과 약관을 읽어보세요.

빠른 시작

권장: Codex 또는 Claude Code

Python 3.10–3.14를 사용하고 먼저 pipx를 설치하세요. pipx ensurepath를 실행하고 필요하면 터미널을 다시 여세요. pipx는 Pentest-AI의 의존성을 격리하고 여러 폴더에서 명령을 사용할 수 있게 해줍니다.

pipx install ptai
ptai setup --mcp

먼저 AI 클라이언트의 CLI를 설치하세요. 설정은 감지된 모든 지원 클라이언트를 연결하기 전에 확인을 요청하며, Codex와 Claude Code가 모두 설치된 경우 둘 다 포함됩니다. 기존 등록은 유지됩니다. 이후 클라이언트를 재시작하세요.

마법사는 사용자 전역 설정을 사용합니다. 클라이언트를 설치하거나, 로그인하거나, 모델을 다운로드하거나, Ollama를 구성하지는 않습니다. 모델은 AI 클라이언트가 제공하며, MCP 서버는 별도의 모델 API 키를 요구하지 않습니다. ptai setup --mcp --dry-run으로 변경 사항을 미리 볼 수 있습니다. Codex .codex/config.toml 및 Claude Code .mcp.json 지침은 단일 클라이언트 및 저장소별 설정을 참조하세요.

업그레이드에는 pipx upgrade ptai를 사용하세요. 이미 활성화된 가상 환경에서는 python -m pip install --upgrade ptai도 지원됩니다. AI 클라이언트에 등록한 후에도 해당 환경을 사용 가능한 상태로 유지하세요.

대안: Ollama 및 로컬 모델

위와 같이 Pentest-AI를 설치하되, 이 경로에서는 MCP 설정을 건너뜁니다. Ollama를 설치하고 시작한 다음, 도구 호출을 지원하는 모델을 가져오세요. ollama list로 정확한 설치 이름을 확인하세요.

export PENTEST_AI_LLM_PROVIDER=ollama
export PENTEST_AI_MODEL="your-installed-model"
ptai start https://your-authorized-target.example --no-sync

PowerShell에서는:

$env:PENTEST_AI_LLM_PROVIDER = "ollama"
$env:PENTEST_AI_MODEL = "your-installed-model"
ptai start https://your-authorized-target.example --no-sync

실행하기 전에 플레이스홀더를 교체하세요. 로컬 모델은 클라우드 API 키가 필요하지 않습니다. 모델 품질과 사용 가능한 메모리가 결과에 영향을 미칩니다. 엔드포인트 구성은 모델 가이드를 참조하세요.

번들 데모 사용해보기

API 키나 외부 대상이 필요하지 않습니다.

pipx install ptai
ptai demo

데모는 번들로 제공되는 취약한 애플리케이션을 테스트하고, 증명 캡슐에서 발견을 재현하며, 강화된 라우트를 확인합니다. 실제 작업을 구성하기 전에 증거 워크플로를 살펴보세요.

기타 모델 제공자

독립형 클라우드 모델과 선택적 스캐너 의존성은 설치 가이드와 제공자 가이드를 참조하세요. API 키는 소스 관리에 포함하지 마세요.

버그 바운티 자동화

Pentest-AI는 승인된 버그 바운티 작업을 위해 설계되었으며, 범위를 유지하고 재현 가능한 발견만 제출하는 것이 중요합니다.

# 1. Import the program's scope (HackerOne / Bugcrowd / Intigriti / YesWeHack)
ptai bounty import --platform hackerone --file scope.json --out program.scope

# 2. Run a scope-enforced engagement (a preflight shows exactly what will be
#    touched and asks you to confirm — nothing out of scope is ever hit)
ptai start acme.com --scope-file program.scope --intensity stealth

# 3. Turn verified findings into platform-ready submissions
ptai bounty report <engagement-id> --platform hackerone --out submissions/
  • 범위는 권고가 아니라 강제됩니다: 와일드카드, CIDR 및 범위 외 제외 항목이 모든 에이전트와 도구에서 fail-closed 방식으로 적용됩니다.
  • 제출물은 바로 제출 가능합니다: 각 제출물에는 재현 가능한 curl, CVSS/CWE, 영향, 완화 방안, 그리고 재생 가능한 증명 캡슐이 포함된 머신 판정이 포함됩니다.
  • 또는 내장 방법론 플레이북을 처음부터 끝까지 실행하세요: ptai playbook run bug-bounty-web -i target=acme.com --execute.

전체 버그 바운티 가이드 →

검증 작동 방식

오라클이 익스플로잇을 반복하고 컨트롤을 확인한 후에만 후보가 검증됩니다. 결과로 생성된 증명 캡슐은 재생할 수 있습니다.

  1. 후보를 찾습니다. 프로브나 스캐너가 조사할 가치가 있는 동작을 식별합니다.
  2. 재현하고 컨트롤을 확인합니다. 명명된 오라클이 익스플로잇을 반복하고, 해당 약점을 보여주지 않아야 하는 컨트롤과 비교합니다.
  3. 증거를 보관합니다. 검증된 발견은 오라클과 그 결과를 휴대 가능한 증명 캡슐에 기록합니다. ptai replay로 다시 확인하세요.

예를 들어, 신뢰할 수 있는 헤더 우회는 공격 헤더와 함께 권한 있는 콘텐츠를 반환하고, 헤더 없이는 접근을 거부해야 합니다. 모든 요청에 HTTP 200으로 응답하는 서버는 충분한 증거가 아닙니다.

모델은 검증된 판정을 부여할 수 없습니다. 제3자 스캐너 출력은 오라클이 독립적으로 입증할 때까지 검증되지 않은 상태로 남습니다. 지원되는 검증 레시피가 없는 발견은 후보로 남습니다.

검증된 판정은 테스트된 조건에 적용됩니다. 애플리케이션 전체가 안전하다는 의미는 아닙니다. 증명 캡슐은 서명되지 않으며, 검사를 다시 실행하는 것이 신뢰 메커니즘입니다.

검증 설계 읽기

할 수 있는 일

워크플로Pentest-AI가 제공하는 것
웹 애플리케이션 조사인젝션, 접근 제어, 요청 처리 및 기타 애플리케이션 약점에 대한 프로브
버그 바운티 작업 실행프로그램 범위 가져오기, 강제 적용, 플랫폼에 바로 제출 가능한 결과물 생성 (가이드)
AI 클라이언트를 통한 작업작업, 조사 및 검증을 위한 MCP 도구
발견 재현오라클 결과 및 재생 가능한 증명 캡슐
수정 확인업데이트된 대상에 대해 기록된 검사 재실행
팀에 보고기존 엔지니어링 워크플로를 위한 보고서 및 SARIF 출력
작업 데이터 로컬 유지발견 사항을 SQLite로 로컬 머신에 저장

커버리지는 프로브와 오라클에 따라 다릅니다. 선택적 스캐너는 자체 바이너리가 필요하며, 일부 통합은 구조화된 발견 대신 원시 출력을 제공합니다. 사용 중인 버전에 대해서는 문서와 변경 로그를 참조하세요. main에는 미출시 작업이 포함되어 있을 수 있습니다.

CI에서 검사하는 기능 인벤토리 보기.

검증된 발견을 CI에 적용

CI 환경에서 모델 제공자, 승인된 대상, 최초 실행 동의를 구성하세요. 시크릿은 CI 제공자의 시크릿 저장소에 보관하세요.

ptai start https://your-authorized-target.example --ci --fail-on verified --no-sync

실행에서 얻은 작업 ID를 사용하여 검증된 발견을 내보내세요:

ptai export YOUR_ENGAGEMENT_ID --sarif pentest.sarif

--sarif는 내보내기 옵션이며 ptai start 옵션이 아닙니다. 실패한 빌드에 대한 증거를 원한다면 발견 게이트가 실패하더라도 작업 ID를 보관하고 내보내기를 실행하세요. 결과 파일을 CI 제공자의 SARIF 통합을 통해 업로드하세요.

CI 설정 및 템플릿

증거, 벤치마크 및 한계

벤치마크 발견, 챌린지 완료, 오라클 검증 발견은 서로 다른 측정치입니다. 다음 보고서는 결과 이면의 버전, 대상, 방법론을 기록합니다:

불완전한 커버리지를 예상하세요. 검증된 발견이 없는 스캔은 애플리케이션이 수행하는 모든 것에 대한 보안 평가가 아닙니다. 인증, 애플리케이션 상태, 지원되지 않는 버그 클래스, 환경 변화가 발견하고 재현할 수 있는 것에 영향을 미칩니다. 결과를 검토하고 작업에 사람을 참여시키세요.

데이터 및 네트워크 동작

발견 사항은 로컬에 저장됩니다. 익명 사용 카운터는 ptai telemetry enable을 통해 옵트인합니다.

로컬 저장이 모든 작업이 머신에 머문다는 의미는 아닙니다: 모델 제공자 호출과 설치된 스캐너는 자체 네트워크 동작을 가집니다. 블라인드 취약점 검사는 외부 대역 외 협력자를 사용할 수 있으며, 콜백 메타데이터는 해당 서비스에 표시됩니다.

필요한 경우 자체 협력자를 사용하거나 콜백을 비활성화하세요:

ptai start https://your-authorized-target.example --oast-server https://your-collaborator.example
ptai start https://your-authorized-target.example --no-oast

참여하기

재현 가능한 버그에는 이슈를, 질문과 아이디어에는 토론을 사용하세요. 빌드 및 테스트 지침은 에이전트 및 기여자 가이드를 참조하세요.

선택적 pentest-ai-agents 저장소에는 Claude Code 서브에이전트 파일이 포함되어 있습니다.

Pentest-AI는 MIT 라이선스에 따라 오픈 소스입니다.

카테고리