DDoS攻擊防範
到目前為止,進行DDoS攻擊的防禦還是比較困難的。這種攻擊的特點是它利用了TCPIP協議的漏洞,除非不用TCPIP,才有可能完全抵禦住DDoS攻擊。
即使難於防範,也不是完全沒有辦法,我們必須在以下幾個方面防範DDoS。

1主機上防範
1.1使用網路和主機掃描工具檢測脆弱性
DDoS能夠成功的關鍵是在Internet上尋找到大量安全防禦措施薄弱的電腦。因此,經常使用安全檢測工具檢測網路和主機,找出目前存在的安全隱患並給出相應的應對措施,可以減少甚至避免主機被駭客利用成為傀儡機的可能性。安全掃描工具能夠檢測並刪除主機上被駭客安裝的進行DDoS攻擊的軟體。安全掃描工具應該隨著攻擊方式的演變而升級。
1.2採用NIDS和嗅探器
當系統收到未知位址的可疑流量時,NIDS(Network Intrusion Detection Systems,網路入侵檢測系統)會發出報警信號, 提醒系統管理員及時採取應對措施,如切斷連接或反向跟蹤等。NIDS的安全策略或規則應該是最新的,並包含當前最新攻擊技術的特徵描述。
嗅探器(sniffer)可用來在網路級識別網路攻擊行為並成為NIDS原始檢測資訊的來源。例如,當駭客修改IP 包的資料部分,使其包含某些隱蔽資訊,嗅探器就可以探測到這些資訊並將此資訊提供給有關人員進行分析, 成為採取阻斷、分流惡意流量或追查駭客的依據。
1.3及時更新系統補丁
現有的作業系統都有很多漏洞,這很容易讓駭客找到後門,所以及時下載和更新系統補丁也是抵禦駭客很重要的一點。

2網路設備上防範
單機上防禦主要是減少被作為傀儡機的可能,在路由器上採取防範措施才是抵禦DDoS的關鍵,這裏以Cisco路由器為例分析一下阻止攻擊的方法:
2.1檢查每一個經過路由器的資料包
在路由器的CEF(Cisco Express Forwarding)表裏,某資料包所到達網路介面的所有路由項中,如果沒有該資料包源IP位址的路由,路由器將丟棄該數據包。例如,路由器接收到一個源IP位址為a.b.c.d的資料包,如果CEF路由表中沒有為IP地址a.b.c.d提供任何路由(即反向資料包傳輸時所需的路由),則路由器會丟棄它。
2.2設置SYN資料包流量速率
許多DDoS攻擊採用SYN洪水攻擊的形式,所以有必要在路由器上限制SYN資料包流量速率。採用這種方法時必須在進行測量時確保網路的正常工作以避免出現較大誤差。
rate-limit output access-group 153 45000000 100000 100000 conform-action
transmit exceed-action drop
rate-limit output access-group 152 1000000 100000 100000 conform-action
transmit exceed-action drop
access-list 152 permit tcp any host eq www
access-list 153 permit tcp any host eq www established
2.3在邊界路由器上部署策略
網路管理員可以在邊界路由器上部署過濾策略:

ISP端邊界路由器應該只接受源位址屬於用戶端網路的通信,而用戶端網路則應該只接受源位址未被用戶端網路過濾的通信。
ISP端邊界路由器的訪問控制列表:
access-list 190 permit ip 用戶端網路 用戶端網路遮罩 any
access-list 190 deny ip any any [log]
interface 內部網路介面 網路介面號
ip access-group 190 in
用戶端邊界路由器的訪問控制列表:
access-list 187 deny ip 用戶端網路 用戶端網路遮罩 any
access-list 187 permit ip any any
access-list 188 permit ip 用戶端網路 用戶端網路遮罩 any
access-list 188 deny ip any any
interface 外部網路介面 網路介面號
ip access-group 187 in
ip access-group 188 out
2.4使用CAR限制ICMP資料包流量速率
CAR(Control Access Rate),可以用來限制包的流量速率,是實現QoS(Quality of Service,服務品質)一種工具。可以用它來限制ICMP包來防止DDoS。
rate-limit output access-group 2020 3000000 512000 786000 conform-action
transmit exceed-action drop
access-list 2020 permit icmp any any echo-reply
2.5用ACL過濾RFC 1918中列出的所有位址
ACL(Acess Control List,訪問控制列表),是路由器過濾特定目標位址、源位址、協議的包的工具,可以用它來過濾掉RFC 1918中列出的所有位址,即私有IP位址(10.0.0.08,172.16.0.012, 192.168.0.016)。
ip access-group 101 in
access-list 101 deny ip 10.0.0.0 0.255.255.255 any
access-list 101 deny ip 192.168.0.0 0.0.255.255 any
access-list 101 deny ip 172.16.0.0 0.15.255.255 any
access-list 101 permit ip any any
2.6搜集證據
可以為路由器建立log server,建議使用SUN工作站或Linux等高速電腦捕獲資料包。常用的資料包捕獲工具包括TCPDump和snoop等。基本語法為:
tcpdump -i interface -s 1500 -w capture_file
snoop -d interface -o capture_file -s 1500