查看單個文章
舊 2006-03-10, 06:38 PM   #5 (permalink)
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

Linux與Windows的安全性比較
Linux與Windows的安全性比較

安全問題對於IT管理員來說是需要長期關注的。主管們需要一套框架來對操作系統的安全性進行合理的評估,包括:基本安全、網路安全和傳輸協定,套用傳輸協定、發怖與操作、確信度、可信計算、開放標準。在本文中,我們將按照這七個類別比較微軟Windows和Linux的安全性。最終的定性結論是:目前為止,Linux提供了相對於Windows更好的安全效能,只有一個方面例外(確信度)。

  無論按照什麼標準對Windows和Linux進行評估,都存在一定的問題:每個操作系統都不止一個版本。微軟的操作系統有Windows98、Windows NT、 Windows 2000、 Windows 2003 Server和Windows CE,而Linux的發行版由於內核(關於2.2、2.4、2.6)的不同和軟體包的不同也有較大的差異。我們本文所使用的操作系統,都是目前的技術而不是那些"古老"的解決方案。

  用戶需要記住:Linux和Windows在設計上就存在哲學性的區別。Windows操作系統傾向於將更多的功能整合到操作系統內部,並將程序與內核相結合;而Linux不同於Windows,它的內核空間與用戶空間有明顯的界限。根據設計架構的不同,兩者都可以使操作系統更加安全。

  Linux和Windows安全性的基本改變

  對於用戶來說,Linux和Windows的不斷更新引發了兩者之間的競爭。用戶可以有自己喜歡的系統,同時也在關注競爭的發展。微軟的主動性似乎更高一些--這是由於業界"冷嘲熱諷"的"激勵"與Linux的不斷發展。微軟對Windows安全進行改觀,發怖Windows XP的Service Pack2。這一服務包增強了Windows的安全性,關閉了原先預設開放的許多服務,也提供了新的修正檔系統管理工具,例如:為了避免受到過多無用的訊息,警告服務和信使服務都被關閉。大多數情況下,關閉這些特性對於增強系統安全性是有好處的,不過很難在安全性與軟體的功能性、靈活性之間作出折衷。

  最顯著的表現是:微軟更加關注改進可用性的同時增強系統的安全性。比如:2003年許多針對微軟的漏洞攻擊程序都使用可執行文件作為電子郵件的附件(例如MyDoom)。Service Pack2包括一個附件執行服務,為Outlook/Exchange、 Windows Messenger和Internet Explorer提供了統一的環境。這樣就能降低用戶執行可執行文件時感染病毒或者蠕蟲的威脅性。另外,禁止資料頁的可執行性也會限制潛在的緩衝區溢位的威脅。不過,微軟在Service Pack2中並沒有修改Windows有問題的架構以及安全傳輸的部分,而是將這部分重擔交給了用戶。

  微軟的重點顯然是支持應用程式的安全性。Service Pack2中增強的許多方面都是以Outlook/Exchange和Internet Explorer作為對象的。例如:Internet Explorer中有一個智能的MIME檔案類型檢查,會對目標的內容檔案類型進行檢查,用戶可以獲悉該內容中是否存在潛在的有害程序。不過這一軟體是不是能將病毒與同事的電子資料表區分開來呢?

  Service Pack2的另一個新特性是能夠卸載瀏覽器的多餘插件,這需要終端用戶檢查並判斷需要卸載哪些插件。Outlook/Exchange可以預覽電子郵件消息,因此用戶可以在開啟之前就將電子郵件移除。另一個套用安全的增強,防火牆在網路傳輸協定棧之前啟動。對於軟體開發者來說,遠方程序使用中權限的改變,使得安全性差的程式碼難以工作正常。

  Service Pack2也為Windows用戶提供了許多華麗的新特性,但是問題仍然存在:這些特性會不會對管理員甚至是終端用戶造成負擔?是不是在增加了Windows操作系統程式碼安全性的同時讓系統變得更加複雜?

  開放來源碼、共享來源碼

  Linux和Windows對於程式碼透明度這一哲學問題上是完全不同的。Linux符合GNU通用公用許可證,用戶可以拷貝、複製並分發來源碼。Windows使用的是封閉來源碼,因此微軟的安全方法被稱為"通過隱藏來保證安全"。2001年,微軟為了回應客戶與共享來源碼計劃的要求,提供了對Windows來源碼的訪問權。現在,共享來源碼計劃有一百萬的參與者,可以訪問的來源碼包括Windows2000、WindowsXP、Windows Server2003、Windows CE 3.0、Windows CE 、C#/CLI實現和ASP.NET與Visual Studio.NET。共享來源碼計劃許可證的對象包括公司用戶、政府、合作者、學術機構與個人。

  微軟的共享來源碼計劃政策屬於"可看但不可修改",例外的情況是Windows CE共享來源碼許可證計劃。對於公司來說,可以將關於Windows CE的設備和解決方案推向市場。這是微軟共享來源碼計劃下,源設備製造商(OEM)、半導體提供商、系統整合商可以完全訪問Windows CE來源碼的唯一項目。所有許可證持有者都有對來源碼的完全訪問權,當然可以修改程式碼,但只有OEM才能發怖對關於WinCE設備的修改。所有其他的共享來源碼許可證持有者,如果要訪問該項目不允許的來源碼,需要向Redmond.Wash的微軟總部請示。

  某些用戶認為共享來源碼計劃對於偵錯程序會有說明 ,微軟要求編譯的時候必須在微軟總部,這不得不說是一個很大的限制。儘管微軟想盡力增加透明,如果無法編譯,就很難確定來源碼在真實的IT環境中是否能正常工作。限制用戶修改並編譯Windows的來源碼,降低了人們訪問Windows共享來源碼並尋找安全漏洞的熱情。

  資料中心和桌面下Linux的安全收益

  在未來的12個月裡,Linux將加強在資料中心的份額,並試圖衝擊微軟在桌面上的壟斷。這很大程度上是受益於Linux2.6版內核的新特性與新功能。有了Linux v2.6,安全框架現在已經模組化了。在這種模型下,Linux內核的所有方面都提供了細粒度的用戶訪問控制,而以前的版本的內核允許超級用戶完全控制。現在的實現仍然支持root完全訪問系統,但完全可以新增一個不遵循該模型的Liinux系統。

  Linux v2.6內核的一個主要變化,就是新增的Linux安全模組(LSM),用戶不需要打內核修正檔就能為Linux增加更多的安全機制。新版內核,在LSM上建立了多個訪問控制機制,其中包括美國國安局(NSA)的Securiy Enhanced Linux(SELinux)。由於國安局對操作系統安全與強制訪問控制的興趣,產生了SELinux。國安局的研究人員正在開發Linux的安全模組,可以支持2.6內核的檔案類型加強、關於腳色的訪問控制、多層次安全。SELinux使用了命為"域檔案類型強制"的安全模型,可以將應用程式互相隔離,同時也與基本的操作系統隔離,從而限制入侵後程序或者網路服務造成的影響。

  Linux的2.6內核中已經加入了對SELinux的細粒度布爾值標籤的支持,其他的廠商也開始利用國安局的SELinux。例如,Immunix提供了一些列產品,包括StackGuard和子域StackGuard模組,可以組態工作只使用某些系統使用。RedHat聲稱SELinux將在RedHat企業伺服器4.0的安全架構上起重要的作用。

  今天,Linux的內核中已經有一個功能強大、靈活的強制訪問控制子系統。這個系統強制隔離有機密和完整性要求的資料,因此任何潛在的破壞,即時是由超級用戶工作所造成的,都被Linux系統限制起來了。

  Linux v2.6還提供了對加密安全的支持,包括了IPSec使用的加密API。這樣,在網路和儲存於加密時就可以使用多種算法(例如:SHA-1、DES、三重DES、MD4、HMAC、EDE、和Blowfish)。Linux對IPSec IPv4和IPv6傳輸協定的支持是一個很大的進步。由於安全抽像到了傳輸協定層,用戶程序對潛在攻擊程序的脆弱性有所降低。密碼加密模組目前還不是Linux內核的一部分,如果Linux真的實現了這樣的特性,就可以阻止未簽名的模組被內核訪問。
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次