DenyHosts
外觀
開發者 | Phil Schwartz |
---|---|
目前版本 | 2.6(2006年12月7日 | )
原始碼庫 | |
程式語言 | Python |
作業系統 | Linux, FreeBSD |
類型 | 安全、主機入侵預防系統 |
許可協定 | GPL |
網站 | denyhosts.sf.net |
DenyHosts是針對SSH伺服器的一個基於紀錄檔的入侵預防安全工具,是用Python編寫的。其通過監測身分驗證登入紀錄檔中失敗的登入嘗試,封鎖這些登入者的IP位址,從而預防對SSH伺服器的暴力破解。DenyHosts是由Phil Schwartz開發的,他也是Kodos正規表示式除錯器的開發者。
原理
[編輯]DenyHosts通過監測身分驗證登入紀錄檔的末尾,來取得近期失敗的登入嘗試資訊。DenyHosts記錄了有關登入者IP位址的資訊,並將失敗的登入嘗試次數與使用者指定的閾值進行比較。如果失敗的登入嘗試次數太多,DenyHosts假定發生了字典式攻擊,並通過將IP位址添加到伺服器上的/etc/hosts.deny
,封鎖相關IP,防止其進一步的攻擊。DenyHosts 2.0及以上的版本支援集中同步,從而可以阻止攻擊過多台電腦的慣犯。
從多台電腦,DenyHosts 2.0 及以上支援集中同步,所以重複的罪犯將被阻止。denyhosts.net網站從執行了該軟體的電腦上收集統計資訊。
DenyHosts僅對使用IPv4的連接有效。它在IPv6下不起作用。
DenyHosts可以手動執行,可以作為一個守護行程,也可以作為一個cron任務。
漏洞
[編輯]Daniel B. Cid撰寫了一篇論文,表示DenyHosts以及類似的應用Fail2ban和BlockHosts,容易受到遠端紀錄檔注入的攻擊[1]。這個問題在2.6版中被修復[2]。
參見
[編輯]- Fail2ban,一個類似的程式,防止對SSH以及其他服務的暴力破解攻擊
- OSSEC
- TCP Wrapper
參考文獻
[編輯]- Carla Schroder, Linux Networking Cookbook, O'Reilly, 2007, pp. 223–226, ISBN 0-596-10248-8
- Ken Leyba, Protect your server with Deny Hosts(頁面存檔備份,存於網際網路檔案館), 2008-01-28, 自由軟體雜誌 issue 21
- Daniel Bachfeld, 24 July 2009, Protecting SSH from brute force attacks. DenyHosts(頁面存檔備份,存於網際網路檔案館), H-online