Snort規則中的邏輯關系

0x01

看一條規則
alert tcp any any -> any any (content:"union";http_uri;nocase;content:"select":nocase;http_uri;)
下面這兩條會觸發哪一條?
http://foo.com?id=union select
http://foo.com?id=select union
實驗結果是都會觸發。
這個實驗說明content如果不加distance之類的修飾符的話,多個content匹配是沒有順序的。

0x02

再看一條規則
alert tcp any any -> any any (content:"union";http_uri;nocase;content:"select":nocase;http_uri; pcre:"/union\s+(all\s+)?select\s+/Ui";)
還是這兩條規則:
http://foo.com?id=union select
http://foo.com?id=select union
實驗結果是只會觸發第一條。
這說明,不同關鍵詞之間(比如content和pcre)是“邏輯與”的關系。

0x03

最后一條規則
alert tcp any any -> any any (content:"union";http_uri;nocase;content:"s3l3ct":nocase;http_uri; pcre:"/union\s+(all\s+)?select\s+/Ui";)
發現上面兩條都匹配不到了,說明所有關鍵詞之間都是“邏輯與”的關系。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,992評論 19 139
  • sqlmap用戶手冊 說明:本文為轉載,對原文中一些明顯的拼寫錯誤進行修正,并標注對自己有用的信息。 ======...
    wind_飄閱讀 2,114評論 0 5
  • http://192.168.136.131/sqlmap/mysql/get_int.php?id=1 當給sq...
    xuningbo閱讀 10,434評論 2 22
  • Snort規則被分成兩個邏輯部分:規則頭和規則選項。規則頭包含規則的動作,協議,源和目標ip地址與網絡掩碼,以及源...
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,778評論 18 399