
오픈소스 AI 기반 5단계 VAPT 침투 테스트 에이전트 — PoC와 함께 정찰/스캔/취약점/익스플로잇/보고서 지원
Pentx는 오픈소스 AI 기반 취약점 평가 및 침투 테스트(Vulnerability Assessment & Penetration Testing) 에이전트로, 모든 발견 사항에 대한 상세한 개념 증명(PoC)과 함께 전체 5단계 침투 테스트 수명 주기를 자동화합니다.
| 기능 | Pentx |
|---|---|
| 전체 5단계 커버리지 | 정찰 → 스캔 → 취약점 평가 → 익스플로잇 → 보고서 |
| 필수 PoC | 모든 확인된 발견 사항에 원시 HTTP 요청/응답 저장 |
| 교차 검증 | 2개 이상의 도구가 일치하거나 수동 PoC가 성공한 경우에만 Confirmed로 표시 |
| 다중 도구 정확성 | nmap, nuclei, httpx, sqlmap, ffuf, nikto, amass, subfinder |
| Python 대체 기능 | 도구를 사용할 수 없는 경우 내장 포트 스캐너, 디렉터리 브루트포스, PoC 캡처 |
| 안전 우선 | 기본적으로 읽기 전용(--no-exploit), 파괴적 페이로드 없음 |
| 유연한 출력 | HTML + Markdown 보고서, JSON 발견 사항, 원시 PoC 아티팩트 |
# 핵심 도구 (일부만 있어도 작동 — Pentx가 자동 적응)
sudo apt install nmap nuclei httpx sqlmap ffuf nikto amass subfinder
# 또는 Termux에서:
pkg install nmap nuclei httpx sqlmap ffuf nikto amass subfinder
# Python 의존성
pip3 install requests beautifulsoup4
git clone https://github.com/yashas-13/pentx-vapt-skill.git
cd pentx-vapt-skill
# 1. 사용 가능한 도구 확인
python3 scripts/pentx.py --check
# 2. 전체 5단계 VAPT 실행 (읽기 전용, 안전)
python3 scripts/pentx.py https://target.example.com ./output --no-exploit
# 3. 전체 평가 (승인 필요 — 1단계 프롬프트 참조)
python3 scripts/pentx.py https://target.example.com ./output
# 4. 특정 단계만 실행
python3 scripts/pentx.py https://target.example.com ./output --phase 3
# 5. 기존 발견 사항에서 보고서 재생성
python3 scripts/pentx.py ./output --phase 5
amass, subfinder)httpx)nuclei)live.json, subdomains.txt, assets.txtnmap -sV -sC)nmap --script vuln)ffuf)nikto)nmap_full.json, ffuf_dirs.json, nikto.jsonsqlmap)findings.jsonl (발견 사항당 JSON 하나)exploits.jsonl, poc-full/*.txtreport.html, report.md, exec-summary.md, findings-merged.jsonoutput/
├── phase1-recon/
│ ├── assets.txt → 발견된 모든 자산
│ ├── live.json → 활성 호스트 (httpx)
│ └── subdomains.txt → 서브도메인 열거
├── phase2-scan/
│ ├── nmap_full.json → 전체 nmap 결과
│ ├── ffuf_dirs.json → 디렉터리 퍼징
│ └── nikto.json → Nikto 발견 사항
├── phase3-vuln/
│ └── findings.jsonl → 취약점 발견 사항 (JSONL)
├── phase4-exploit/
│ └── exploits.jsonl → 확인된 익스플로잇 + PoC
├── report.html → 전체 HTML 보고서
├── report.md → 전체 Markdown 보고서
├── exec-summary.md → 경영진 요약
├── findings-merged.json → 병합된 모든 발견 사항
└── poc-full/
└── poc-*.txt → 원시 PoC 아티팩트 (*.txt)
--no-exploit는 4단계를 완전히 건너뜀--batch --level=2 --risk=1 사용Confirmed; 그 외에는 Potential⚠️ 소유한 시스템 또는 명시적 서면 승인을 받은 시스템에서만 사용하세요.
pentx-vapt-skill/
├── SKILL.md # pi-agent 스킬 사양
├── README.md # 이 파일
├── LICENSE # MIT
├── CONTRIBUTING.md # 기여 가이드
├── assets/
│ └── report_template.md # 보고서 템플릿
├── references/
│ ├── methodology.md # 5단계 방법론 + PoC 템플릿 + CVSS
│ └── tools-matrix.md # 도구 기능 + 정확성 전략
└── scripts/
├── pentx.py # 메인 CLI 오케스트레이터
├── tools_check.sh # 도구 사용 가능 여부 확인
└── lib/
├── pentx_common.py # 발견 사항 저장소, PoC 캡처, 대체 기능
├── phase_recon.py # 1단계
├── phase_scan.py # 2단계
├── phase_vuln.py # 3단계
├── phase_exploit.py # 4단계
└── report_gen.py # 5단계
기여를 환영합니다! 먼저 CONTRIBUTING.md를 읽어주세요.
MIT 라이선스 — LICENSE 참조.
Pentx가 보안 평가에 도움이 된다면 스폰서 참여를 고려해주세요:
현재 스폰서:
스폰서 이유:
# Pentx 스킬 설치 또는 업데이트
bash -c "$(curl -fsSL https://raw.githubusercontent.com/yashas-13/pentx-vapt-skill/main/scripts/install.sh)"
# 또는 pi-agent 사용 시 (설치된 경우)
/pentx install
설치 스크립트 (scripts/install.sh):
#!/usr/bin/env bash
set -euo pipefail
REPO="yashas-13/pentx-vapt-skill"
BRANCH="main"
INSTALL_DIR="${HOME}/.pi/agent/skills/pentx"
echo "🔧 Pentx VAPT 스킬 설치 중..."
mkdir -p "${INSTALL_DIR}"
curl -fsSL "https://github.com/${REPO}/archive/refs/heads/${BRANCH}.tar.gz" | \
tar -xz --strip-components=1 -C "${INSTALL_DIR}"
# 도구 확인
python3 "${INSTALL_DIR}/scripts/pentx.py" --check
echo "✅ Pentx가 ${INSTALL_DIR}에 설치되었습니다"
echo "📖 실행: python3 ${INSTALL_DIR}/scripts/pentx.py https://target.example.com ./output --no-exploit"
| 플래그 | 설명 |
|---|
--check | 도구 사용 가능 여부 확인 후 종료 |
--phase N | N단계(1-5)만 실행 |
--no-exploit | 4단계(익스플로잇) 건너뛰기 — 안전한 기본값 |
--threads N | 스캔 동시성 (기본값 5) |
--rate-limit N | 초당 요청 수 상한 (기본값 10) |
--scope | 승인된 대상 목록이 있는 JSON 파일 경로 |
| 도구 | 단계 | 기능 |
|---|
nmap | 2 | 포트/서비스/취약점 + NSE 스크립트 |
nuclei | 1, 3 | 3000개 이상의 취약점 템플릿 |
httpx | 1, 2 | 활성 탐지, 기술 탐지 |
sqlmap | 3, 4 | SQLi 탐지 + 익스플로잇 |
ffuf | 2 | 디렉터리/파일 퍼징 |
nikto | 2 | 웹 서버 잘못된 구성 |
amass | 1 | 서브도메인 열거 |
subfinder | 1 | 서브도메인 열거 |