二月上旬, 美國知名網站 Yahoo! 等遭受連串的網路攻擊, 多數網站用戶無法正常連上Yahoo! 網站的時間, 甚至使用超過 12 小時, 以致演變成一件全球都知道的熱門新聞, 連美國總統都親自出來宣示, 美國政府有必要正視這一連串的破壞事件, 並發動深入的追查以及邀請相關的產學研究人員, 試圖共商未來對於類似事件的因應與預防之道。
這次的網路攻擊事件, 基本上是阻斷服務 (Denial-of-Service, 簡稱 DoS)的一種變形, 由於這次是透過網路分散來源的技巧, 所以特別稱作 DDoS ( Distributed DoS) 攻擊。
許多人會問說, 什麼是 DoS 攻擊 ? 簡單地說, DoS 攻擊的做法, 就是利用網路系統資源有限( Memory/disk space, network bandwidth 等), 加上部分網路系統或者相關通信協定等, 在設計或實作上的漏洞, 在一段期間內透過大量且密集的封包傳送, 達到使被攻擊的網站無法處理, 以致許多正常想要連上該網站的用戶, 都被阻絕在外, 連不上該網站. 網站本身, 大致上可能都還是好好的, 只是來不及處理這一些惡意的不速之客。
這次的 DDoS 攻擊, 從技術上來看, 大致的做法是分成幾個不同的階段, 並透過不同的網站來進行, 底下我們大略簡單介紹一下, 概略的示意流程. 參考Fig.1,其中列出 4 種主機系統, 攻擊者經過精心策劃, 分階段進行:
Client (攻擊者所在的系統,簡稱C)
Host (攻擊者發號施令的監控系統; 攻擊者可以直接控制,簡稱H)
Broadcaster (放大攻擊直接來源; 被殖入攻擊程式者,簡稱B)
Target (被攻擊者,簡稱T)
第一階段, 攻擊者從自己的系統(標定為 Client者) 出發, 先從網路上, 找到幾個管理鬆散的網站, 入侵系統管理帳號 (root, super user 許多 unix 系統等), 使用的技巧大致包括 DNS searching, www server searching 以及 host/port scanning 等技巧. 利用許多已知系統的安全漏洞, 入侵系統取得管理者權限. 並在這幾個系統上, 建立灘頭堡, 變成往後攻擊, 發號施令與監看成果的主機 (標定為 Host者) 。
第二階段, 透過同樣的 DNS searching, www server searching, port scanning 等技巧, 攻擊者再次在網路各地找尋更多有安全漏洞的網站, 目標包括各式的 Unix, Windows 等系統, 然後再殖入一些特定的網路服務程式 (Daemon), 潛藏在該系統中, 伺機等候前述攻擊者所在的 Host, 發動網路攻擊的命令。
這一些機器, 也就成為潛在的放大攻擊者(標定為 Broadcaster) .要命的是, 這些特定的攻擊程式, 往往都被設計成具有將封包放大的特異功能, 且通常也同時隱藏封包的真實來源, 而偽裝成其他來源, 以誤導系統防護與追查的方向。

DoS 的總類很多, 而且從學理技術上看, 對於各類DoS 攻擊, 基本上幾乎是沒有解法的. (按: 這裡指的是, 沒有一種系統可以做到, 只要自己做好一些防護, 就可以完全不受任何外來的攻擊.) 乍聽之下, 這樣的訊息的確很讓人沮喪, 如此一來, 網路還能用嗎 ? 其實, 大體上也不用如此悲觀, 網路使用也是現實社會的一種延伸, 法律還是最實際的一道防線. 透過科技與法律的結合, 大部分的網路上的行為也都可以做到和現實社會一樣, 大家活動在一定的規範之中。
其次, 前面的情節描述之中, 也透漏一些訊息, 這類的 DoS 攻擊, 牽涉其中的許多諸如 Host, Broadcaster 等網路系統, 間接做了幫兇, 如果這些管理或使用者, 平時能注意自己所使用及管理的網路系統, 是否有出現奇怪的情況, 一發現有異常, 就趕緊追查並啟動補救措施, 通常就能大大地減低這類情形出現的機會。
從過去經驗的了解, 學校單位幾乎是這類情況, 最大可能的來源, 普遍也最缺乏危機意識與應變能力(或措施). 因此對於許多網路系統以及個人系統的實際負責與使用人, 這裡有一些建議:
router 設 ACL, IP accounting, 與流量統計分析
保護 router 本身, 以及內部網路, 防止偽裝成其他來源的封包送出, 阻斷並追蹤可能的攻擊來源。
DNS 的防護
阻擋有心人士, 透過 DNS, 進行系統性的攻擊. 詳請可參考底下,
http://dnsrd.nctu.edu.tw/FAQ/FAQ-acl.html
http://dnsrd.nctu.edu.tw/DNS-Named-Conf/named.conf-c
http://dnsrd.nctu.edu.tw/Tech/dns-hcrc-880903.txt
個別 server 的防護 ( WWW, e-mail, DNS, … 等)
保護 server host本身 , 阻斷並追蹤可能的攻擊來源
重要 server 設 ACL ( tcp_wrapper ), 限制可login 對象
各 server 關掉不必要的 service port
重要的 server, 定期進行必要的 system patch
適時與相關人士 (E-mail 與電話) 密切聯絡與配合
確實建立系統管理者的 contact address, 並儘速處理問題.
發現問題, 或接收到來自其他地方的訊息, 應儘速檢視並視情況, 聯絡相關的網路系統人員處理。 ( 所謂
[url=mailto:postmaster@nctu.edu.tw]postmaster@nctu.edu.tw[/url]
,
[url=mailto:abuse@nctu.edu.tw]abuse@nctu.edu.tw[/url]
等)
只要大家能按照上述的建議, 切實執行, 相信在多數的情況之下, 網路系統安全,都不應該會出現有重大的問題, 大家也就可以在愉快的情形下, 使用各種網路服務。
參考資料
CERT 相關網站,
http://www.cert.org/
ZDNet 關於 DDoS 事件的報導,
http://www.zdnet.com
BIND 相關網站,
http://www.isc.org/view.cgi?/products/BIND/index.phtml
TCP wrapper 相關程式
http://www.cert.org/advisories/CA-99-01-Trojan-TCP-Wrappers.html
這次的網路攻擊事件, 基本上是阻斷服務 (Denial-of-Service, 簡稱 DoS)的一種變形, 由於這次是透過網路分散來源的技巧, 所以特別稱作 DDoS ( Distributed DoS) 攻擊。
許多人會問說, 什麼是 DoS 攻擊 ? 簡單地說, DoS 攻擊的做法, 就是利用網路系統資源有限( Memory/disk space, network bandwidth 等), 加上部分網路系統或者相關通信協定等, 在設計或實作上的漏洞, 在一段期間內透過大量且密集的封包傳送, 達到使被攻擊的網站無法處理, 以致許多正常想要連上該網站的用戶, 都被阻絕在外, 連不上該網站. 網站本身, 大致上可能都還是好好的, 只是來不及處理這一些惡意的不速之客。
這次的 DDoS 攻擊, 從技術上來看, 大致的做法是分成幾個不同的階段, 並透過不同的網站來進行, 底下我們大略簡單介紹一下, 概略的示意流程. 參考Fig.1,其中列出 4 種主機系統, 攻擊者經過精心策劃, 分階段進行:
Client (攻擊者所在的系統,簡稱C)
Host (攻擊者發號施令的監控系統; 攻擊者可以直接控制,簡稱H)
Broadcaster (放大攻擊直接來源; 被殖入攻擊程式者,簡稱B)
Target (被攻擊者,簡稱T)
第一階段, 攻擊者從自己的系統(標定為 Client者) 出發, 先從網路上, 找到幾個管理鬆散的網站, 入侵系統管理帳號 (root, super user 許多 unix 系統等), 使用的技巧大致包括 DNS searching, www server searching 以及 host/port scanning 等技巧. 利用許多已知系統的安全漏洞, 入侵系統取得管理者權限. 並在這幾個系統上, 建立灘頭堡, 變成往後攻擊, 發號施令與監看成果的主機 (標定為 Host者) 。
第二階段, 透過同樣的 DNS searching, www server searching, port scanning 等技巧, 攻擊者再次在網路各地找尋更多有安全漏洞的網站, 目標包括各式的 Unix, Windows 等系統, 然後再殖入一些特定的網路服務程式 (Daemon), 潛藏在該系統中, 伺機等候前述攻擊者所在的 Host, 發動網路攻擊的命令。
這一些機器, 也就成為潛在的放大攻擊者(標定為 Broadcaster) .要命的是, 這些特定的攻擊程式, 往往都被設計成具有將封包放大的特異功能, 且通常也同時隱藏封包的真實來源, 而偽裝成其他來源, 以誤導系統防護與追查的方向。

DoS 的總類很多, 而且從學理技術上看, 對於各類DoS 攻擊, 基本上幾乎是沒有解法的. (按: 這裡指的是, 沒有一種系統可以做到, 只要自己做好一些防護, 就可以完全不受任何外來的攻擊.) 乍聽之下, 這樣的訊息的確很讓人沮喪, 如此一來, 網路還能用嗎 ? 其實, 大體上也不用如此悲觀, 網路使用也是現實社會的一種延伸, 法律還是最實際的一道防線. 透過科技與法律的結合, 大部分的網路上的行為也都可以做到和現實社會一樣, 大家活動在一定的規範之中。
其次, 前面的情節描述之中, 也透漏一些訊息, 這類的 DoS 攻擊, 牽涉其中的許多諸如 Host, Broadcaster 等網路系統, 間接做了幫兇, 如果這些管理或使用者, 平時能注意自己所使用及管理的網路系統, 是否有出現奇怪的情況, 一發現有異常, 就趕緊追查並啟動補救措施, 通常就能大大地減低這類情形出現的機會。
從過去經驗的了解, 學校單位幾乎是這類情況, 最大可能的來源, 普遍也最缺乏危機意識與應變能力(或措施). 因此對於許多網路系統以及個人系統的實際負責與使用人, 這裡有一些建議:
router 設 ACL, IP accounting, 與流量統計分析
保護 router 本身, 以及內部網路, 防止偽裝成其他來源的封包送出, 阻斷並追蹤可能的攻擊來源。
DNS 的防護
阻擋有心人士, 透過 DNS, 進行系統性的攻擊. 詳請可參考底下,
http://dnsrd.nctu.edu.tw/FAQ/FAQ-acl.html
http://dnsrd.nctu.edu.tw/DNS-Named-Conf/named.conf-c
http://dnsrd.nctu.edu.tw/Tech/dns-hcrc-880903.txt
個別 server 的防護 ( WWW, e-mail, DNS, … 等)
保護 server host本身 , 阻斷並追蹤可能的攻擊來源
重要 server 設 ACL ( tcp_wrapper ), 限制可login 對象
各 server 關掉不必要的 service port
重要的 server, 定期進行必要的 system patch
適時與相關人士 (E-mail 與電話) 密切聯絡與配合
確實建立系統管理者的 contact address, 並儘速處理問題.
發現問題, 或接收到來自其他地方的訊息, 應儘速檢視並視情況, 聯絡相關的網路系統人員處理。 ( 所謂
[url=mailto:postmaster@nctu.edu.tw]postmaster@nctu.edu.tw[/url]
,
[url=mailto:abuse@nctu.edu.tw]abuse@nctu.edu.tw[/url]
等)
只要大家能按照上述的建議, 切實執行, 相信在多數的情況之下, 網路系統安全,都不應該會出現有重大的問題, 大家也就可以在愉快的情形下, 使用各種網路服務。
參考資料
CERT 相關網站,
http://www.cert.org/
ZDNet 關於 DDoS 事件的報導,
http://www.zdnet.com
BIND 相關網站,
http://www.isc.org/view.cgi?/products/BIND/index.phtml
TCP wrapper 相關程式
http://www.cert.org/advisories/CA-99-01-Trojan-TCP-Wrappers.html
回复Comments
{commenttime}{commentauthor}
{CommentUrl}
{commentcontent}