화이트리스트 규칙 구문:
basicrule wl:id [부정] [mz:[$url:target_url]|[match_zone]|[$args_var:varname]|[$body_vars:varname]|[$headers_var:varname ] |[이름]]
wl:id (화이트리스트 ID) | 어떤 차단 규칙이 화이트리스트에 들어갈지 |
wl:0 | 화이트리스트에 모든 차단 규칙을 추가하세요 |
wl: 42 | ID 42의 차단 규칙을 화이트리스트에 추가 |
wl:42,41,43 | ID 42, 41, 43의 차단 규칙을 화이트리스트에 추가 |
wl:-42 | 추가 ID 42 |
mz: (match zones)
args | 전체 매개변수를 가져옵니다. foo=bar&in=%20 |
$args_var | get 매개변수의 매개변수 이름(예: foo in foo=bar&in=%20 및 in |
$args_var_x | 정규 일치와 일치하는 get 매개변수의 매개변수 이름 |
headers | 전체 http 프로토콜 헤더 |
$headers_var | http 프로토콜 헤더의 이름 |
$headers_var_x | 정규 일치 http 프로토콜 헤더의 이름 |
body | 전체 포스트의 매개변수 내용 |
$body_var | 포스트 매개변수의 매개변수 이름 |
$body_var_x | 일반 매칭 포스트의 매개변수 이름 |
url | url(?before) |
url_x | 정규 매칭 url(?before) ) |
file_ext | 파일명(파일 업로드 시 업로드되는 파일명) |
화이트리스트 구성 예시
Take rule #100 0 예를 들어, 규칙 #1000은 select, update, delete, insert 및 기타 SQL 키워드 규칙
규칙 | 설명 |
basicrule wl:1000 | 차단 규칙 #1000을 완전히 비활성화하는 것입니다. 이 하위 규칙에서. 지정된 영역이 없기 때문에 모두 화이트리스트에 추가됩니다. |
basicrule wl:1000 "mz:$args_var:foo"; |
차단 규칙 #1000 http://mike.hi-linux.com/과 유사 요청: 데모에서 ?foo=select * 필터링되지 않습니다. |
basicrule wl:1000 "mz:$url:/bar|args"; |
URL /bar를 사용하는 요청 가져오기에서 차단 규칙 #1000을 비활성화하는 매개변수 다음과 유사한 요청은 필터링되지 않습니다. : http://mike.hi-linux.com/bar?my=select * 데모http://mike.hi-linux.com/bar?from=weibo |
basicrule wl:1000 "mz :args |name"; |
모든 가져오기 요청의 모든 매개변수 이름(매개변수 값이 아닌 이름만)에 대해 차단 규칙 #1000을 비활성화합니다. 다음 요청은 필터링되지 않습니다: http://mike.hi -linux. com/bar?from=weibo 다음 요청이 필터링됩니다: http://mike.hi-linux.com/bar?foo=select select는 매개변수 값이고 화이트리스트 범위 내에 있지 않기 때문입니다. . |
기본 규칙 wl:0 "mz:$url_x:^/upload/(.*).(.*)$|url"; |
모든 요청에서 ^/upload/(.*)를 준수합니다. (.*)$ 일반 규칙 URL은 모든 차단 규칙을 비활성화합니다. http://mike.hi-linux.com/upload/select.db 요청과 유사하게 요청은 필터링되지 않습니다(원래 #1000 차단 규칙이 실행됩니다). |
위 내용은 nginx-naxsi 화이트리스트 규칙은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!