0x01
看一條規(guī)則
alert tcp any any -> any any (content:"union";http_uri;nocase;content:"select":nocase;http_uri;)
下面這兩條會(huì)觸發(fā)哪一條?
http://foo.com?id=union select
http://foo.com?id=select union
實(shí)驗(yàn)結(jié)果是都會(huì)觸發(fā)房铭。
這個(gè)實(shí)驗(yàn)說明content如果不加distance之類的修飾符的話榆骚,多個(gè)content匹配是沒有順序的。
0x02
再看一條規(guī)則
alert tcp any any -> any any (content:"union";http_uri;nocase;content:"select":nocase;http_uri; pcre:"/union\s+(all\s+)?select\s+/Ui";)
還是這兩條規(guī)則:
http://foo.com?id=union select
http://foo.com?id=select union
實(shí)驗(yàn)結(jié)果是只會(huì)觸發(fā)第一條。
這說明,不同關(guān)鍵詞之間(比如content和pcre)是“邏輯與”的關(guān)系。
0x03
最后一條規(guī)則
alert tcp any any -> any any (content:"union";http_uri;nocase;content:"s3l3ct":nocase;http_uri; pcre:"/union\s+(all\s+)?select\s+/Ui";)
發(fā)現(xiàn)上面兩條都匹配不到了紧唱,說明所有關(guān)鍵詞之間都是“邏輯與”的關(guān)系。