
YAML 기반 프레임워크로, OWASP Core Rule Set 기준을 사용하여 웹 애플리케이션 방화벽(WAF) 규칙을 테스트합니다. 반복 가능한 HTTP 공격 시뮬레이션을 통해 회귀 탐지를 자동화하고 사용자 정의 WAF 규칙을 검증합니다.
이 프로젝트는 ModSecurity와 Fastly의 연구원들이 WAF 규칙에 대한 엄격한 테스트를 제공하기 위해 만들어졌습니다. OWASP Core Ruleset V3을 기준으로 WAF에서 규칙을 테스트합니다. 규칙 세트의 각 규칙은 YAML 파일에 로드되어 이러한 규칙을 트리거하는 HTTP 요청을 발행합니다. 사용자는 테스트가 발행된 후 규칙 실행을 확인하여 공격으로부터 예상된 응답이 수신되는지 확인할 수 있습니다.
목표 / 사용 사례:
1.0 릴리스 발표는 OWASP CRS 블로그를 확인하세요.
git clone https://github.com/coreruleset/ftw.gitcd ftwvirtualenv env && source ./env/bin/activatepip install -r requirements.txtpy.test -s -v test/test_default.py --ruledir=test/yamlFTW의 핵심은 확장 가능한 yaml 기반 테스트입니다. 이 섹션에서는 형식, 작성 방법 및 사용 방법에 대한 몇 가지 리소스를 나열합니다.
OWASP CRS는 FTW 테스트 작성 및 실행 방법을 설명하는 훌륭한 블로그 게시물을 작성했습니다.
YAMLFormat.md는 현재 FTW가 이해하는 모든 yaml 필드의 기준입니다.
이 두 가지 자료를 읽은 후에는 테스트 작성을 시작할 수 있습니다. 대부분 상태 코드 응답을 확인하거나 log_contains 지시문을 사용하여 웹 요청 응답을 확인하게 됩니다. WAF 로그 내에서 정규식을 테스트하기 위해 FTW를 통합하는 방법은 ExtendingFTW.md를 참조하세요.
WAF 규칙 테스트를 위한 환경이 필요하다면 Apache, Modsecurity 및 OWASP 핵심 규칙 세트 버전 3.0.0으로 생성된 환경이 있습니다. 다음을 통해 배포할 수 있습니다:
git clone https://github.com/fastly/waf_testbed.gitvagrant up