2009年11月30日

防火牆-iptables與密碼攻擊(5)

因為總是有人安全防護做的不好,所以就變成了跳板,cracker就拿這些跳板吃飽沒事情就是進行網路的port scan或者密碼猜測(使用類似字典檔)的工作,反正對craker來說,這些資源不用錢,找到新的機器還可以打包一下賣錢orz
當然在進行密碼攻擊之前他們會先對機器做一些port scan,找出可以猜測密碼的服務,比方說pop3或者ssh。
對pop3可利用string的配合,當大量出現Authentication的錯誤字串的時候判定為密碼攻擊(比方猜錯十次)。
但是ssh因為加密了,如何辨識這樣的錯誤呢?只好繞路,以ssh retry的次數(在sshd_config加入MaxAuthTries,給定次數),接著追蹤syn封包進入的次數,最大iptables能在一段時間內容忍MaxAuthTries*the number of syns,兩者的乘積,比方說四次的syn連線,每次只能猜測密碼四次,如果在短時間內發生就是密碼攻擊
iptables -A INPUT -p tcp --syn --dport 22 -m recent --name ssh --update --second 600 --hitcount 4 -j DROP
iptables -A INPUT -p tcp --syn --dport 22 -m recent --name ssh --set
不過這樣的方式也有缺點,比方說如果你在十分鐘內建立了四個ssh連線就會達到連線的上限,這可能會為操作上帶來一些麻煩 ,除了程式設計師之外:P對一般的管理者比較沒關係Orz

沒有留言: