<原文刊於 ITHome 2004 資安特刊>
近幾年來,企業資訊安全的危機,來自於蠕蟲的攻擊,佔了相當大的一部份。SQL Slammer、Blaster、Sasser 這些蠕蟲,利用攻擊這些在軟體本身上的弱點,造成全球數十億美元的損失。事實上,根據美國電腦危機處理中心(CERT/CC)的研究報告指出,超過99% 的資訊安全事件,都是針對已知弱點所造成的破壞。顯示企業安全的成敗除了被動式的防禦,主動預防式的弱點管理之有效執行,才能解決問題的根源。
弱點管理與企業安全
從2002年至2004年間,CERT/CC接獲回報的弱點數,每年將近四千個,平均一天超過十個以上的新弱點,在企業內有限的人力之下,如何能在 利用弱點的蠕蟲產生之前及時修補,將是企業的挑戰。尤其目前弱點公布至蠕蟲流行的時間已從1999年的288天,至2004年的十天反應時間,如何能從企 業內部眾多的數位資產裡,找出弱點的所在,從何處著手來做好弱點管理,考驗著資安人的智慧與能力。
弱點管理從何管起?
在2001年,SANS機構與FBI集合了資安專家的意見,共同公佈了一份文件,以”Stop the Break-Ins!”為標題,列出了十項網路上最危急的重大弱點,提供企業在面對成千上萬個弱點時,能夠有優先順序的準則,先致力於最危險的弱點修補。 而後在2002年增加為二十項,並從2003年起分為Windows Top 10及Unix Top 10。而事實證明,SANS/FBI每年公佈的前二十項最重要的弱點,這些弱點也是後來這些蠕蟲如Blaster, Slammer, Code Red, 或是 NIMDA所利用的弱點。
最近的一份報告(2004年10月)公佈的前二十項重大弱點如下:
Windows平台的前十大弱點:
• W1 Web Servers & Services
• W2 Workstation Service
• W3 Windows Remote Access Services
• W4 Microsoft SQL Server (MSSQL)
• W5 Windows Authentication
• W6 Web Browsers
• W7 File-Sharing Applications
• W8 LSAS Exposures
• W9 Mail Client
• W10 Instant Messaging
UNIX平台的前十大弱點:
• U1 BIND Domain Name System
• U2 Web Server
• U3 Authentication
• U4 Version Control Systems
• U5 Mail Transport Service
• U6 Simple Network Management Protocol (SNMP)
• U7 Open Secure Sockets Layer (SSL)
• U8 Misconfiguration of Enterprise Services NIS/NFS
• U9 Databases
• U10 Kernel
在這份新的清單內,值得注意的是,W10 Instant Messaging 是第一次進入排行榜。隨著IM軟體使用者的大幅增加,在IM上的弱點也逐漸被發掘,不管是在 MSN,Yahoo Messenger或者AOL上,都存在著弱點,類型包含了檔案傳送時或ActiveX Controls上的緩衝區溢位,雖然這些IM主要為一般使用者使用,但可能造成企業內部員工的機密資料外洩,或是使得員工無法工作,降低生產力,造成企 業損失。另外W8 LSAS Exposure的弱點也因Sasser的流行,加入了Top 20。
優先修補的對象
雖然了解了弱點修補的項目,但企業內龐大的資產數量,如何確認何者應為優先修補的對象?雖然各個企業對於資產重要性的定義或有出入,但以下幾個類別,可以列為工作的重點:
1. 具有外部連線的主機
很多企業在設計網路架構時,內部與外部網路,常常並沒有分開,所以這些有外部連線的主機,常常為第一攻擊目標,也是駭客進入內部網路的大門。所以應列修補的重點。
2. 伺服器
常用的郵件、檔案、DNS、Domain Controller等伺服器,關係著企業的正常運作與否,因此需要優先防護,以免於不管是來自內部(蠕蟲、病毒、Insider...)或外部(駭客、Script Kiddies...)的攻擊。
3. 資料庫
儲存著企業的重要資料及機密。
4. 重要系統
交易系統、ERP、人事資料系統等公司日常營運所使用的系統。
5. 防火牆及網路設備
防火牆為企業安全防護的城牆,當然應隨時檢視其自身之安全。而網路設備例如Router、Switch等設備,若受攻擊,則企業的網路也立刻受到影響。
6. 其他重要人事之主機
CEO、財務、人事管理者所使用的電腦裡常存有企業的重要機密資料,也應列為檢測重點。
弱點管理的工作,無法一次修補所有的資產,有系統的做好資產清查,分門別類,了解資產的重要等級,針對這些重要的資產,優先做處理,才能使得努力有所成效。
Top 20 弱點的影響
SANS/FBI的這些弱點,究竟對企業會造成那些的危害,可分為以下幾類:
1. 系統完全被非法擁有
利用這些弱點,攻擊者可以得到系統管理者的權限。竊取系統內的重要資料或更進一步利用這些主機發動DDoS攻擊。
2. 資訊或檔案的外洩
攻擊者無法獲得完全的權限,但可以讀取更改資訊及檔案,造成資料的完整性、隱私性、可用性受到破壞。
3. 執行任意程式碼
利用這些弱點,攻擊者可以在主機上執行任何的程式碼,通常此種攻擊若有系統權限或配合提升權限的方法,可以進一步達到完全擁有主機的目的。
4. 阻斷式攻擊
攻擊者攻擊這些弱點,使得主機上的服務中斷,無法提供正常的運作。
5. 感染及散播病毒
由於軟體本身上的弱點,造成執行了惡意的程式碼或病毒程式。
6. 散發Spam信件
利用Email服務上的弱點,大量散發郵件。
弱點檢測的方法與工具
針對這二十項弱點,企業內部的IT人員,該如何來檢測數位資產上是否有這些弱點?在SANS 網站上公佈的最新文件裡,有詳細的列出了每一個弱點的影響系統版本、如何檢測、如何免除危險,以及相對應之CVE/CAN編號。然而,從2001年公佈的 Top 10一直演進到目前版本的Top20,事實上其包含的項目,己成數倍增長。最新公佈的這一份文件,所涵蓋的相關弱點相當的多,其列出之相關CVE/CAN 編號,超過五百個項目,若是完全以人工來找尋這些弱點,則是工程相當浩大的任務。因此目前市面上有相對應的弱點評估/管理系統,提供針對SANS/FBI Top 20項目而做的檢測。
SANS網站上所列舉的弱點評估/管理系統如下:
- Foundstone Enterprise Vulnerability Management System (www.foundstone.com)
- eEye Retina Network Security Scanner (www.eeye.com/retina)
- Preventsys (www.preventsys.com)
- Qualys (www.qualys.com)
- Sara (www-arc.com/sara)
其他還有一些非針對SANS/FBI Top 20的弱點掃描系統,
- Nessus (www.nessus.org)
- SAINT (www.saintcorporation.com)
- Nmap (www.insecure.org)
修補方法與建議
在找尋到這些弱點之後,IT人員又該如何來進行修補?一般的修補工作,可以分為以下幾種類型:
1. 上相對應的Patch或更新版本
針對系統或服務,廠商都會提供Patch檔,針對這些弱點做修補,這一類型的修補工作,佔相當大的比率,執行時應注意的是對於重要的上線系統,應該先做測試,評估其是否有其他的不良影響。
2. 參考廠商或專家提供的Best Practices建議,更改設定
一般的廠商及專家會提供最佳設定的建議給使用者,例如Apache、IIS Server這些都有安全設定的建議,使用者應該參考這些建議,補強預設Configuration的不足。
3. 關掉不必要的服務
沒有再使用的服務,應該直接將其移除或關閉。常見的情況為預設安裝作業系統時,一併裝設了很多沒有在使用的服務而不自覺。這些沒有在使用的服務,往往也疏於管理更新。
4. 使用Host-based Firewall跟IDS
這些防禦機制,如果正確的設定,可以有效的防止攻擊者使用這些弱點。
5. 最小權限原則(Least Privilege)
合理定義每個使用者的權限,避免過度的權限給予攻擊者機會。
安全了嗎?
修補了SANS/FBI Top 20,事實上即可消彌目前常見的重大資安事件。以US-CERT公布當前最常發生的重大資安事件為例 (2005/03/14, http://www.us-cert.gov/current/current_activity.html) 這些目前流行的資安事件,都在Top 20建議的修補範圍之內。下表列出其與弱點之關聯:
| 事件名稱 | 對應SANS/FBI Top 20之弱點 | 說明 |
| W32/MyDoom Revisited | W6, W9 | 利用Email Client 自動瀏覽的功能或使用者打開不安全的附件達到感染及傳送病毒的目的。其新變種也利用IE IFRAME的弱點進行攻擊。 |
| MySQL UDF Worm | W5 | 這一個蠕蟲並未利用任何MySQL的弱點,而是利用其安裝在Windows平台時簡易的密碼或無密碼設定的弱點。 |
| Santy Worm | W1, U2 | 利用phpBB佈告欄程式的弱點,達到控制Web Server的目的。 |
| W32/Sober Revisited | W9 | 利用Email Client 自動瀏覽的功能或使用者打開不安全的附件達到感染及傳送病毒的目的。 |
| W32/Bagle Revisited | W9 | 利用Email Client 自動瀏覽的功能或使用者打開不安全的附件達到感染及傳送病毒的目的。 |
由上表顯示,目前流行的這些蠕蟲與病毒,其實也都被涵括在這個Top 20的項目內,只要能持續修補這些重點項目,則已經能夠阻擋這些常見的攻擊活動。
持續的有效進行弱點管理
來自於網路上的威脅雖然日新月異,但其實也不完全是無跡可尋。面對成千上萬個弱點,其實只要能夠掌握住重點,則這些修補工作就能具有效益,而不是花了很多的精力在修補一些不會對企業造成任何危害的弱點。畢竟企業內部弱點修補的工作是永無止境的。
義大利的經濟學家Vilfredo Pareto在1906年提出的20-80理論,事實上也可應用在弱點管理的工作上。百分之20的弱點,會為企業帶來百分之80的風險。找出那些百分之 20的弱點,優先修補這些弱點,可立即大幅降低企業風險。而這些所謂的百分之20的弱點在那裡?SANS/FBI Top 20,即是一個相當重要的指標。
“Protecting the Right Assets • From the Right Threats • With the Right Measures”,在做弱點管理時,使用正確的弱點管理系統為你做正確的評估,以SANS/FBI Top 20為方向找出正確的威脅,如此,企業才能保障資產的安全。
