FreeBSD abck入侵监测
发表于:2007-07-01来源:作者:点击数:
标签:
0.名稱 abck - Process intrusion attempts found in the system log 1.描述 abck 是用來分析入侵嚐試的互動式工具,並且判斷該程式做了些什麼. decide what, if anything, to do about them 該程式透過讀取 /var/log/messages 來尋找可能的入侵證據. abck能
0.名稱
abck - Process intrusion attempts found in the system log
1.描述
abck 是用來分析入侵嚐試的互動式工具,並且判斷該程式做了些什麼.
decide what, if anything, to do about them
該程式透過讀取 /var/log/messages 來尋找可能的入侵證據.
abck能夠處理數種常見的入侵紀錄,同時也能夠容易的延伸去處理其他狀況.
abck分析入侵紀錄是屬於名稱或是IP位址,若是一個IP位址,
會嘗試將其透過DNS反解找出其FQDN.
若無法找到合法的反解,他會嘗試去找到關於該IP的權威性資料.
每一個符合的入侵嘗試紀錄都會被呈現給使用者.
使用者可以透過whois資料庫來查詢相關負責人.
此外還能夠過abck設定當發生入侵紀錄時,自動發信給對方相關人員
(abuse@domain 和 root@domain)及本機的root.
該信件會包含所有有關該機器的資訊,及附加入侵的log紀錄.
通常狀況下,一個入侵者會嘗試數種方式入侵,因此會產生複合的log紀錄.
舉例來說:若一個入侵者透過port scan程式掃描.abck會記錄這個紀錄
同時,可以透過 -i 及 -l 參數來讓abck忽略來自某些IP或是hostname
的入侵嘗試.
2.語法
abck [-dehilmsv]
3.安裝
路徑:/usr/ports/sysutils/abck/
4.參數
-d n 只往前追溯n天的紀錄.
-e string 只處理不包含此字串的攻擊紀錄.
-h 顯示求助資訊.
-i 不忽略~/.abck_ignored檔案中定義的那些IP或是/Hostname.
此參數與 -l 互有獨占性.若兩參數同時出現,較後的那個參數會被執行.
-l 列出那些被紀錄的忽略紀錄.當程式結束後列出所有被忽略的IP及hostname.
此參數與 -l 互有獨占性.若兩參數同時出現,較後的那個參數會被執行.
-m string 只處理包含此字串的攻擊紀錄.
-s 不實際處理那些符合的紀錄,只是列出來.
-v 顯示abck版本資訊.
5.紀錄過程
當每一筆入侵嘗試紀錄被發現之後,會被呈現到指定的使用者.
類似 Matching log entry found in /var/log/messages
Who Gets Message For:
? [horseplay.edu]
按下@#Enter@#鍵來接受預設投訴的信件位址(此例為horseplay.edu) .
電子郵件因此被送到 @#abuse@horseplay.edu@#及@#root@horseplay.edu@#
及自己本機的root. 然後abck會繼續處理下一筆記錄.
f 假裝忘卻此筆記錄,不予處理,下次仍會發出警告.
l 將預設的抱怨信函送往領域往左移動一個子網域.
如: 原先為 mlc.edu.tw 變為 xxx.mlc.edu.tw
q 立即離開此程式.(將不會有相關紀錄留下)
r 將預設的抱怨信函送往領域往右移動一個網域.
當目的網域少於兩個領域時,abck會禁止使用者往右移動一個領域.
s 忽略此紀錄.下次abck再次啟動時,此紀錄仍會被呈現.
w 執行@#whois@#查詢.
Any other string 用此字串取代原先要通知的領域.
6.如何紀錄
abck如何決定某一筆記錄是攻擊?
abck掃描系統的log紀錄,搜尋兩個關鍵字"refused"及"unauthorized"
若他找到兩個關鍵字中的其中一個,他會呈現該筆記錄給使用者進行處理.
除了上述兩個關鍵字之外,你也可以增加其他"觸發字"(關鍵字).
假若你有一個紀錄:
Jul 27 00:27:35 eskimo .netd[56691]: Intruder saddle.horseplay.edu foiled
你想要讓abck能夠偵測,你必須要做兩個步驟:
1.你需要一個獨特的關鍵字,只有在此類似紀錄會出現的關鍵字.如: foiled
2.你必須要判斷哪個field,包含ip位址或是hostname.
第一個field為標示為:0 ,此例為7
說明: Jul 27 00:27:35 eskimo inetd[56691]: Intruder saddle.horseplay.edu foiled
(1) (2) (3) (4) (5) (6) (7) (8)
要讓abck了解這種形式的紀錄,只要增將這些資訊到程式的AttackKeys資料.
此資料為 Python dictionary 形式,所以格式為:
"關鍵字" : field編號
7.相關檔案
~/.abck_history - 使用者abck紀錄.
~/.abck_ignored - 預設想要忽略的IP或是Hostname,每一筆資料一行.
也可以用區段表示,如 192.168.3 表示忽略192.168.3.0/24
同樣地,myschool.edu 會忽略 *.myschool.edu 的領域.
8.其他
在執行abck前,你必須先行安裝python,(/usr/ports/languages/python/)
當然了,FreeBSD在安裝abck前會先行檢查是否有安裝.
若無,會順手安裝python的.
此外,dig及whois程式也是abck所需要的.
泡泡:這個程式感覺上,有些問題存在.試了數次關於abck python script執行都有些問題.
確切來說, 在 abck 送出相關警告訊息會有錯誤.
與 Tim Daneliuk 商討後..仍然沒有很完善的處理方式.
9.版權
abck 由 TundraWare 所有.
相關版權及使用說明,
10.作者
Tim Daneliuk <>
11.參考資料
abck(1)
原文转自:http://www.ltesting.net