一.自定義規則編寫
1.主要變量
2.12個變量
URI--------------------http://10.67.8.118:8889/abc/shell.php
URI-path--------------------/abc/shell.php
Host--------------------10.67.8.118:8889
Parameter-name--------------------id(id=123)
Parameter--------------------123
Header-name--------------------Accept-Encoding(舉例)
Header--------------------gzip,deflate
Cookie-name--------------------id(id=1)
Cookie--------------------1
Version--------------------1.1(HTTP/1.1)
Method--------------------POST
Request-Body--------------------id=123
3.瞭解URL
上面整個都屬於URI,它包括協議、認證、地址、端口、路徑、參數、標識符等
4.瞭解正則表達式
\w 匹配單詞字符,等價於[A-Za-z0-9_]
\W 匹配非單詞字符
\s 匹配不可見字符,等價於[\f\n\r\t\v]
\S 匹配可見字符
\d 匹配數字,等價於[0-9]
\D 匹配非數字
* 表示匹配任意次
?表示匹配0次或1次
+ 表示至少匹配一次
^ 行匹配時表示開始
$ 行匹配時表示結尾
如果要匹配在正則表達式中有特殊含義的字符,則需要在字符前加反斜槓,如:
要匹配\w 則要寫\w,要匹配則要寫*
正則表達式默認貪婪匹配,加個?可以非貪婪匹配,如:.?
小括號代表一個分組,中括號代表要匹配的字符集,大括號表示匹配的次數範圍
5.URI
我們使用uri這個變量,主要是使用正則包含這個條件。只要在uri中包含我們的檢測值,
請求均可被該自定義策略阻斷。
6.URI-PATH/請求路徑
這裏需要注意的是如果是正則等於,在檢測值中需要注意開始的“/”也要加上。正則等於是精準匹配,
即uri-path必須要是我們的檢測值纔會被阻斷,包含檢測值是不會被阻斷的