
Guardian은 Google Gemini와 LangChain을 활용하여 지능적인 단계별 침투 테스트 워크플로우를 조율하면서 윤리적 해킹 표준을 유지하는 프로덕션 준비가 완료된 AI 기반 침투 테스트 자동화 CLI 도구입니다.
Guardian은 여러 AI 제공업체(OpenAI GPT-4, Claude, Google Gemini, OpenRouter, Requesty)와 검증된 보안 도구를 결합하여 지능적이고 적응형 보안 평가와 포괄적인 증거 수집을 제공하는 엔터프라이즈급 AI 기반 침투 테스트 자동화 프레임워크입니다.
Guardian은 승인된 보안 테스트 및 교육 목적으로만 설계되었습니다.
시스템을 테스트하기 전에 명시적인 서면 허가를 받았는지 확인할 책임은 전적으로 귀하에게 있습니다. 무단 컴퓨터 시스템 액세스는 컴퓨터 사기 및 남용법(CFAA), GDPR 및 이에 상응하는 국제 법률에 따라 불법입니다.
Guardian을 사용함으로써 귀하는 귀하가 소유하거나 테스트할 명시적 권한이 있는 시스템에만 사용하는 데 동의합니다.
[project.entry-points."guardian.providers"]를 통해 배포 — 포크 불필요think_deeply 교체 및 복원 — 큰 모델이 생각하고 작은 모델이 판단, 약 10배 비용 절감10개 범주에 걸친 50개의 통합 보안 도구:
| 범주 | 도구 |
|---|---|
| 네트워크 | nmap, masscan |
| 웹 정찰 | httpx, whatweb, wafw00f, cmseek |
| 서브도메인 / DNS | subfinder, amass, dnsrecon |
| 취약점 스캐닝 | nuclei, nikto, sqlmap, wpscan |
| SSL/TLS 테스트 | testssl, sslyze |
| 콘텐츠 발견 | gobuster, ffuf, arjun |
| 보안 분석 | xsstrike, gitleaks |
| 클라우드 / 컨테이너 / SBOM | trivy, grype, syft, scoutsuite, prowler, kube-bench |
| 현대 웹 + OSINT | graphw00f, clairvoyance, jwt_tool, shodan, theharvester |
| SAST + 시크릿 (B11) | semgrep, trufflehog, dependency-check |
| API 퍼저 (B10) | schemathesis, cariddi, restler |
| Burp/ZAP 브리지 (B13) | zap, burp |
| LLM 레드팀 (B12) | garak, pyrit, prompt_fuzz |
| 모바일 안드로이드 (B9) | mobsf, apkleaks, objection |
| 액티브 디렉터리 (B8) | crackmapexec, bloodhound, kerbrute, impacket-secretsdump |
| 시각 증거 (A3) | playwright_screenshot |
execution_id를 통해 소스 도구 실행에 연결session_<id>.json을 통해 --resume 지원depends_on이 있는 단계는 max_parallel_tools까지 병렬 실행parameters: {key: "{{ <id>.parsed.alive_hosts }}"}가 이전 단계 결과에 대해 해석when: 절이 이전 출력에 따라 실행 제어--resume으로 마지막 완료 단계 이후부터 재개agent: debate | visual | analystsecurity-severity 포함, execution_id에서 fingerprints 중복 제거guardian report --export sarif --export defectdojo --export slack<UNTRUSTED_TOOL_OUTPUT> 구분 기호 및 ANSI 제거를 통해 래핑asyncio 서브프로세스를 통한 도구 실행; 에이전트 비동기--help 500ms 미만 유지Guardian은 설치된 경우 이러한 도구를 지능적으로 사용할 수 있습니다:
| 도구 | 목적 | 설치 |
|---|---|---|
| nmap | 포트 스캐닝 | apt install nmap / choco install nmap |
| masscan | 초고속 스캔 | apt install masscan / 소스에서 빌드 |
| httpx | HTTP 프로빙 | go install github.com/projectdiscovery/httpx/cmd/httpx@latest |
| subfinder | 서브도메인 열거 | go install github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest |
| amass | 네트워크 매핑 | go install github.com/owasp-amass/amass/v4/...@master |
| nuclei | 취약점 스캐닝 | go install github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest |
| whatweb | 기술 핑거프린트 | gem install whatweb / apt install whatweb |
| wafw00f | WAF 탐지 | pip install wafw00f |
| nikto | 웹 취약점 스캔 | apt install nikto |
| sqlmap | SQL 인젝션 | pip install sqlmap / apt install sqlmap |
| wpscan | WordPress 스캔 | gem install wpscan |
| testssl | SSL/TLS 테스트 | testssl.sh에서 다운로드 |
| sslyze | SSL/TLS 분석 | pip install sslyze |
| gobuster | 디렉토리 브루트포스 | go install github.com/OJ/gobuster/v3@latest |
| ffuf | 웹 퍼징 | go install github.com/ffuf/ffuf/v2@latest |
| arjun | 매개변수 발견 | pip install arjun |
| xsstrike | 고급 XSS | git clone https://github.com/s0md3v/XSStrike |
| gitleaks | 시크릿 스캐닝 | go install github.com/zricethezav/gitleaks/v8@latest |
| cmseek | CMS 탐지 | pip install cmseek |
| dnsrecon | DNS 열거 | pip install dnsrecon |
참고: Guardian은 외부 도구 없이도 작동하지만 스캔 기능이 제한됩니다. 사용 가능한 도구에 따라 AI가 적응합니다.
git clone https://github.com/zakirkun/guardian-cli.git cd guardian-cli
### 2단계: Python 환경 설정
**Linux/macOS:**```bash
python3 -m venv venv
source venv/bin/activate
pip install -e .
윈도우:```powershell python -m venv venv .\venv\Scripts\activate pip install -e .
### Step 3: AI 공급자 구성
Guardian은 여러 AI 공급자를 지원합니다. `config/guardian.yaml`에서 원하는 공급자를 구성하십시오:```yaml
# config/guardian.yaml
ai:
# Choose your provider: openai, claude, gemini, openrouter, or requesty
provider: openai
# OpenAI Configuration (recommended)
openai:
model: gpt-4o
api_key: sk-your-api-key-here # Or set OPENAI_API_KEY env var
# Claude Configuration
claude:
model: claude-3-5-sonnet-20241022
api_key: null # Or set ANTHROPIC_API_KEY env var
# Gemini Configuration
gemini:
model: gemini-2.5-pro
api_key: null # Or set GOOGLE_API_KEY env var
# OpenRouter Configuration
openrouter:
model: anthropic/claude-3.5-sonnet
api_key: null # Or set OPENROUTER_API_KEY env var