Ossec
有沒有人在 OSSEC 中使用過任何自定義解碼器?
我在 RHEL 6 伺服器上執行 OSSEC HIDS 軟體版本 2.8.3。我們一直在實驗室中使用 DNS 伺服器對此進行測試,以跟踪進入我們的 RPZ 和惡意軟體區域的查詢。DNS 伺服器已安裝 OSSEC 代理。為了讓它工作,我們必須使用一個定制的書面解碼器。除了那些“開箱即用”安裝的解碼器之外,還有其他人對 OSSEC 和自定義解碼器有任何經驗嗎?我主要是想獲得關於其他系統管理員正在使用 OSSEC 做什麼的創造性想法,這些想法在我們的生產環境中也可能有用。
例如,有沒有人成功編寫/使用自定義解碼器來檢測 Linux 的 USB 儲存?
更新:我一直在研究自定義解碼器和檢測 USB 設備何時插入伺服器的規則。這是我想要匹配的日誌行:
Feb 3 10:23:08 testsys kernel: usb 1-1.2: New USB device found, idVendor=0781, idProduct=5575
我在 OSSCE 中的解碼器規則:
<decoder name="usb-storage"> <program_name>kernel</program_name> </decoder> <decoder name="usb-storage-attached"> <parent>usb-storage</parent> <regex offset="after_parent">^USB \S+: New</regex> <order>extra_data</order> </decoder>
我在 OSSEC 的規則:
<group name="syslog,"> <!-- USB Storage Detection Log Types --> <!-- level=0 for not generating alerts by default --> <rule id="310201" level="0"> <decoded_as>usb-storage</decoded_as> <description>Looking for unknown USB attached storage</description> </rule> <!-- USB Storage Detection Event Chains --> <!-- Fire an alert (level=8) if the log line contains "New USB device found" --> <rule id="310202" level="8"> <if_sid>310201</if_sid> <match>^New USB device found</match> <description>Attached USB Storage</description> </rule> </group>
iptables使用核心作為program_name:
<decoder name="iptables"> <program_name>^kernel</program_name> </decoder>
我們可以使用iptables作為父級(而不是核心)。此外,id欄位用於方便創建規則。所以,你需要這個解碼器:
<decoder name="usb-storage-attached"> <parent>iptables</parent> <regex offset="after_parent">^(usb) </regex> <order>id</order> </decoder>
規則可以是:
<rule id="310201" level="0"> <decoded_as>iptables</decoded_as> <id>usb</id> <description>USB messages grouped.</description> </rule> <rule id="310202" level="1"> <if_sid>310201</if_sid> <match>New USB device found</match> <description>Attached USB Storage</description> </rule>
現在,您可以將規則 310201 用於與 USB 相關的所有內容。規則 310202 就是您想要的規則:
Feb 3 10:23:08 testsys kernel: usb 1-1.2: New USB device found, idVendor=0781, idProduct=5575 **Phase 1: Completed pre-decoding. full event: 'Feb 3 10:23:08 testsys kernel: usb 1-1.2: New USB device found, idVendor=0781, idProduct=5575' hostname: 'testsys' program_name: 'kernel' log: 'usb 1-1.2: New USB device found, idVendor=0781, idProduct=5575' **Phase 2: Completed decoding. decoder: 'iptables' id: 'usb' **Phase 3: Completed filtering (rules). Rule id: '310202' Level: '1' Description: 'Attached USB Storage' **Alert to be generated.