Snort

suricata TLS 規則不忽略我的“通過”條目

  • January 30, 2016

我正在使用此規則跳過已知 SSL 證書上的 suricata tls 處理:

pass tls any any <> any any (msg:"known good mydomain cert"; tls.fingerprint:"40:.(trimmed for serverfault).:8b"; sid:1000000; rev:1) 

即便如此,它也會進入正常的 tls 日誌記錄。

Jan 29 19:59:38 ip-10-11-12-13 suricata[17331]: {"timestamp":"2016-01-29T19:59:38.285296+0000","flow_id":139920047174784,"in_iface":"eth0","event_type":"tls","src_ip":"10.13.13.13","src_port":49479,"dest_ip":"10.11.12.13","dest_port":8443,"proto":"TCP","tls":{"subject":"C=U...CN=*.mydomain.com","issuerdn":"C=US...","fingerprint":"40:.(trimmed for serverfault).:8b","version":"TLS 1.2"}}

我先local.rules列出了我的列表,並且我沒有更改操作順序,因此pass應該首先處理消息。

發生這種情況是因為在配置中設置了“tls:extended:yes”嗎?我的意思是,它記錄了所有TLS 會話,所以pass沒關係?如果是這種情況,我該如何/應該記錄未知/不匹配的 TLS 流量?

(我把它放在snort標籤中是因為沒有suricata標籤而且我無法創建標籤。我認為 suricata 與 snort 有關。)

TLS 日誌記錄和規則是完全獨立的。Pass 僅確保沒有針對此會話評估其他規則。

記錄是無條件的。通過規則不會影響它。

但是,在 Suricata 3.0 中,您還可以將 TLS 記錄添加到警報日誌中。要啟用此功能,請取消註釋 eve-log 警報類型下的 ’tls: yes’:

outputs:
 - eve-log:
     enabled: yes
     filetype: regular #regular|syslog|unix_dgram|unix_stream|redis
     filename: eve.json
     types:
       - alert:
           tls: yes               # enable dumping of tls fields

然後,如果指紋不是您要查找的內容,您可能會有一個匹配的規則。例如

alert tls any any -> any any (tls.fingerprint:!"26:ca:ea:1d:99:11:d0:14:98:ad:17:47:4a:8d:fa:94:c5:1f:53:1c"; sid:1;)

注意!在 tls.fingerprint 之前。

這將為您提供也包含 TLS 記錄的警報記錄。例如

{"tls":{"version":"SSLv3","fingerprint":"dc:60:87:01:82:5a:1e:5d:77:99:f1:c7:8a:d1:f2:11:37:f4:58:ad","issuerdn":"C=US, O=GTE Corporation, OU=GTE CyberTrust Solutions, Inc., CN=GTE CyberTrust Global Root","subject":"C=US, O=Akamai Technologies, Inc., CN=a248.e.akamai.net"},"alert":{"severity":3,"category":"","signature":"","rev":0,"signature_id":1,"gid":1,"action":"allowed"},"proto":"TCP","timestamp":"2009-11-14T19:28:41.698996+0100","flow_id":105716361672640,"pcap_cnt":1032789,"event_type":"alert","src_ip":"63.80.4.42","src_port":443,"dest_ip":"192.168.2.7","dest_port":1997}

然後,您可以禁用 yaml 中的正常 TLS 日誌記錄。

這種方法的一個問題是它實際上只適用於否定單個指紋。

引用自:https://serverfault.com/questions/752761