
블라인드 WAF 식별 도구

identYwaf는 블라인드 추론을 기반으로 웹 보호 유형(즉, WAF)을 인식할 수 있는 식별 도구입니다. 블라인드 추론은 사전 정의된 공격적(비파괴적) 페이로드 세트에 의해 유발된 응답을 검사하여 수행되며, 이러한 페이로드는 중간에 있는 웹 보호 시스템을 트리거하는 데만 사용됩니다(예: http://<host>?aeD0oowi=1 AND 2>1). 현재 80개 이상의 다양한 보호 제품(예: aeSecure, Airlock, CleanTalk, CrawlProtect, Imunify360, MalCare, ModSecurity, Palo Alto, SiteGuard, UrlScan, Wallarm, WatchGuard, Wordfence 등)을 지원하며, 지식 기반은 지속적으로 확장되고 있습니다.
자세한 내용은 Sh3llCON 2019(산탄데르/스페인)에서 진행된 "Blind WAF identification" 강연의 슬라이드를 확인하실 수 있습니다.
참고: 이 프로젝트의 일환으로 다양한 웹 보호 시스템의 특징적인 응답에 대한 스크린샷이 향후 참고를 위해 (수동으로) 수집되고 있습니다.







최신 zipball은 여기에서 다운로드할 수 있습니다.
가급적이면 Git 저장소를 복제하여 identYwaf를 다운로드할 수 있습니다:
git clone --depth 1 https://github.com/stamparm/identYwaf.git
identYwaf는 모든 플랫폼에서 Python 2.6.x부터 3.x까지 모든 버전에서 즉시 사용 가능합니다.
$ python identYwaf.py
__ __
____ ___ ___ ____ ______ | T T __ __ ____ _____
l j| \ / _]| \ | T| | || T__T T / T| __|
| T | \ / [_ | _ Yl_j l_j| ~ || | | |Y o || l_
| | | D YY _]| | | | | |___ || | | || || _|
j l | || [_ | | | | | | ! \ / | | || ]
|____jl_____jl_____jl__j__j l__j l____/ \_/\_/ l__j__jl__j (1.0.XX)
Usage: python identYwaf.py [options] <host|url>
Options:
--version 프로그램 버전 정보를 표시하고 종료합니다.
-h, --help 이 도움말 메시지를 표시하고 종료합니다.
--delay=DELAY 테스트 간 지연 시간(초) (기본값: 0)
--timeout=TIMEOUT 응답 제한 시간(초) (기본값: 10)
--proxy=PROXY HTTP 프록시 주소 (예: "http://127.0.0.1:8080")
--proxy-file=PRO.. 파일에서 (순환) HTTP(s) 프록시 목록 로드
--random-agent 무작위 HTTP User-Agent 헤더 값 사용
--code=CODE 거부된 응답에서 예상되는 HTTP 코드
--string=STRING 거부된 응답에서 예상되는 문자열
--post 페이로드 전송에 POST 본문 사용