在過去的3.75年中,我的服務器受到了各種各樣的拒絕服務攻擊。

有一些針對Tor的DDoS攻擊的開源工具,例如Stinger-Tor

clearnet處理DDOS攻擊:

  • 過濾

https://www.hackerfactor.com/blog/index.php?/archives/762-Attacked-Over-Tor.html

https://www.hackerfactor.com/blog/index.php?/archives/777-Stopping-Tor-Attacks.html

https://www.hackerfactor.com/blog/index.php?/archives/896-Tor-0day-Finding-IP-Addresses.html

  • 間接服務

JS Cookice和SYN Cookie可以防止對服務的直接攻擊。

https://blog.torproject.org/stop-the-onion-denial

https://github.com/onionltd/EndGame

  • 增加可用資源

Tor主要使用OnionBalance作爲負載均衡器。

從漏洞到DDOS攻擊:

主要問題是tor守護程序的源代碼。特別是,它錯誤地計算了連接請求的可用連接數。

修復:

修改src/lib/net/socket.c中的最大值:

以及:

在torrc配置文件中,可以指定帶寬速率(BandwidthRate,BandwidthBurst,MaxAdvertisedBandwidth,PerConnBWRate和PerConnBWBurst),以及同時連接的最大數量(HiddenServiceMaxStreams)。當達到這些限制時,tor守護程序將告訴安全節點放慢速度或停止新連接(開始限制)。

結語:

減輕此DDOS攻擊造成的損害的步驟需要四個簡單的修復程序:

  1. 為您的服務器增加處理能力。
  2. 編輯torrc配置,並增加輸入節點的數量。
  3. 編輯源代碼,並根據實際情況設置tor守護程序的可用套接字數。
  4. 編輯torrc配置,並將tor守護程序的網絡帶寬設置為實際值。

本文主要參考於Tor 0day: Краш Tor-сети,感謝@DarkDotFail的分享。