
자동화된 WAF 평가 도구로, 방화벽 벤더를 탐지하고, 19가지 공격 카테고리를 고급 우회 페이로드로 테스트하며, CLI, Cloudflare Worker 또는 Docker를 통해 색상으로 구분된 우회 분석을 제공합니다.
이 프로젝트는 웹 애플리케이션 방화벽(WAF)이 일반적인 웹 공격으로부터 제품을 얼마나 잘 보호하는지 확인하는 데 도움을 줍니다. Cloudflare Worker(내장 대화형 웹 UI 포함)로 실행하거나 독립형 Node.js CLI 도구로 실행할 수 있습니다.
SQL 인젝션, XSS, 경로 탐색, 명령 인젝션, SSRF, NoSQL 인젝션, 로컬 파일 인클루전, LDAP 인젝션, HTTP 요청 스머글링, 오픈 리다이렉트, 민감 파일, CRLF 인젝션, UTF8/유니코드 우회, XXE, SSTI, HTTP 파라미터 오염, 웹 캐시 포이즈닝, IP 우회, User-Agent.
X-HTTP-Method-Override 등).프로젝트는 NPM Workspaces 모노레포로 구성되어 있습니다:
packages/core/: 핵심 보안 테스트 라이브러리, 페이로드 정의, WAF 지문 서명 및 난독화 인코더.packages/worker/: 정적 HTML/JS 웹 UI 및 JSON API 엔드포인트를 제공하는 Cloudflare Worker 패키지.packages/cli/: 터미널에서 직접 감사를 실행하기 위한 Node.js 커맨드라인 인터페이스 도구.루트 디렉터리에서 의존성을 설치하고 모든 워크스페이스를 빌드합니다:
npm install
npm run build
Worker 개발 서버를 로컬에서 실행하려면 (Wrangler 필요):
npm run dev:worker
웹 UI는 http://localhost:8787에서 접근 가능합니다 (8787 포트가 사용 중이면 다른 포트).
Worker를 Cloudflare에 배포하려면:
npx wrangler deploy --workspace=packages/worker
보안 테스트 감사를 명령줄에서 직접 실행하려면:
# 일반 CLI 도움말 및 사용법 출력
node packages/cli/dist/index.js --help
# check 명령 도움말 출력 (모든 메서드, 카테고리, WAF 공급업체 나열)
node packages/cli/dist/index.js check --help
대상 URL 뒤에 있는 WAF 공급업체 탐지:
node packages/cli/dist/index.js detect <url>
대상 URL에 대한 감사 실행:
# 기본 검사 (GET 메서드, 모든 페이로드 카테고리)
node packages/cli/dist/index.js check https://example.com
# 특정 메서드, 카테고리 및 WAF 회피 활성화를 사용한 사용자 지정 검사
node packages/cli/dist/index.js check https://example.com -m GET,POST -c "SQL Injection,XSS" --auto-detect-waf --encoding-variations
파일에 정의된 URL 목록에 대한 배치 감사 실행:
node packages/cli/dist/index.js batch targets.txt --concurrency 3
사전 빌드된 이미지를 GitHub Container Registry에서 가져오거나 로컬에서 빌드하여 Docker로 CLI를 실행할 수 있습니다.
사전 빌드된 Docker 이미지는 GitHub Container Registry의 ghcr.io/sech0us3/waf-checker-cli에서 사용할 수 있습니다.
docker pull ghcr.io/sech0us3/waf-checker-cli:latest
docker run --rm ghcr.io/sech0us3/waf-checker-cli:latest --help
docker run --rm -it ghcr.io/sech0us3/waf-checker-cli:latest check https://example.com
docker run --rm -it -v "$(pwd):/data" ghcr.io/sech0us3/waf-checker-cli:latest batch /data/targets.txt --concurrency 3
docker build -t waf-checker-cli .
docker run --rm waf-checker-cli --help
docker run --rm -it waf-checker-cli check https://example.com
docker run --rm -it -v "$(pwd):/data" waf-checker-cli batch /data/targets.txt --concurrency 3
워크스페이스 전체 테스트 스위트 실행 (Vitest 사용):
npm test
제 블로그를 읽어보세요: yoursec.substack.com