DDOS CC攻擊技術對抗案例
這是一個真實的客戶案例。這個客戶是我的一個包月客戶。每月給我3000塊。然後我負責客戶的伺服器安全。
客戶的伺服器一開始的時候經常遭受黑客入侵。黑客入侵到系統中之後,就刪除伺服器裡面的數據。這樣幾次之後,客戶受不了了,就找到了我,讓我給他做安防。就這樣,我們開始了合作。
首先,我做的是對客戶業務的了解。客戶在伺服器上面運營了一個網站。開的埠是80埠。由於客戶的網站只做展示用,就沒有加ssl。這樣可以給用戶更好的體驗。我首先查看了一下客戶伺服器打開的埠,使用的命令是"netstat -ano"。看過之後,我寫了一個shell腳本,封住了所有不需要外網訪問的埠(使用的是iptables)。然後又給客戶的伺服器做了滲透測試+木馬病毒查殺。伺服器的問題搞定之後。客戶的網站又重新上線了。
在接下來的幾天里,我每天都會查看幾次伺服器。通過查看訪問日誌,發現黑客在對網站程序進行滲透。由於客戶的網站採用是wordpress系統,並保持著不斷的更新,所以我並不擔心網站會被攻破。就這樣持續了幾天之後,黑客發現攻擊伺服器是徒勞的之後,變換了攻擊的方式。
黑客採用的新的攻擊方式是DDOS攻擊。這種攻擊如果採用抗的方式的話,代價非常高。讓客戶破費顯然是不對的。於是經過一番冥思苦想之後。我建議客戶採用了CDN。由於CDN的成本非常低,同時又隱藏了IP地址。這樣客戶遭受的DDOS攻擊問題就解決了。後來,我通過查看客戶域名的dns解析量,判斷出黑客依然在進行DDOS攻擊。就在我覺得可以放鬆一下的時候,新的攻擊又出現了。
黑客新的攻擊方式是CC攻擊。說實在的,CC攻擊並不難防禦,直接丟包即可,而且由於是tcp連接,採用netfilter防護起來並不困難。但是問題的關鍵是伺服器已經採用了CDN。伺服器端看到的來源IP地址並不是肉雞的IP地址。沒辦法,只能採用tcpdump抓包分析。看看能不能找到方法。經過抓包分析,發現HTTP中有個X-Forwarded-For欄位,CDN採用這個欄位來傳遞客戶端的真實IP地址。於是,新的防護措施就出來了。我首先是在nginx的配置中通過X-Forwarded-For來顯示每個相同X-Forwarded-For值的並發量。同時,使用iptables來限制tcp鏈接數超過一定值的IP地址。後面這種方式雖然會帶來一定程度的誤殺,但是影響並不大。最後,CC攻擊總算是防住了。
這次對抗目前就暫告一段落了。後面如果有新的事件。我會第一時間發到我的企鵝號上。
點擊展開全文
TAG:科路達網站開發 |