Linux LiveCD 評估系統的安全性
除了要讓系統更加安全之外,還有一些工具可以用來判斷系統抵擋各種攻擊的能力,例如:使用諸如 blockall 之類的防火墻工具,您可以限制所有到達的 TCP 通信;使用諸如 floppyfw 之類的工具,您可以在一張軟盤中實現防火墻。Labrea 是一個“粘蜜罐”,可以限定蠕蟲和端口掃描攻擊,從而消除它們的影響。還有很多入侵檢測系統(IDS),例如非常流行的 Snort 和 logsnorter。報文嗅探器,例如 ethereal、dsniff、driftnet、urlsnarf 和 msgsnarf,可以幫助過濾未用的通信,例如會浪費帶寬的 IM 消息。無線工具,例如 airsnarf、airsnort 和 kismet,可以幫助評估無線網絡的情況。有些成功的工具,例如 chntpw(可以重置 Windows 系統上的密碼)和 pwl9x(可以攻擊 Windows 9x 密碼文件),以及 allwords2(一個 27 MB 英文字典)可以促使大家采用更長的包含數字的非標準密碼。如果您認為這已經涉及了所有的方面,那么就請試一下缺陷評估工具,例如 hydra、nessus 和 nmap。嘿!大部分工具都只能在 Linux 上運行!
現在 Linux 不是什么問題,畢竟它是免費的,我可以在自己家的系統上運行。但是誰愿意花上一個周末的時間來安裝和配置系統呢?起碼我不愿意。如果我希望測試工作時所使用的機器又該如何呢?我需要獲得授權才能在上面安裝 Linux 嗎?這里有一個非常簡單的解決方案。就是這里。歡迎進入 LiveCD 上的安全評估工具世界。
關于 LiveCD
LiveCD 是一個保存在可啟動的 CD-ROM 上的操作系統(以及其他軟件),從這上面可以啟動 OS,而不用再進行漫長的安裝過程。大部分都是基于 Linux 內核的(但是也有一些 LiveCD 是為其他操作系統準備的)。它在工作時將這些文件放到一個 RAM 磁盤上(這樣就減少了應用程序可以使用的 RAM 數量,從而會降低系統的性能,但是不要忘了,我們的目標是評估系統的安全性)。一旦取出 LinveCD 并重新啟動系統之后,原始的系統就恢復了。有些 LiveCD 上還提供了一個安裝工具,使用它可以將系統安裝到硬盤或 USB 磁盤中;大部分這種 LiveCD 都可以訪問內部/外部硬盤、磁盤和閃存上的信息。
syslinux 用來啟動基于 Linux 的 LiveCD,以及 Linux 軟盤。對于 PC 來說,可啟動 CD 通常遵守 El Torito 規范,這會將磁盤上的某個文件(可能是隱藏的)當作一個軟盤映像來使用。很多 LiveCD 都使用了一個壓縮的文件系統映像,其中通常提供了 cloop 壓縮 loopback 驅動器來有效地雙倍利用存儲能力。
市場上有一些模擬器,可以用來試驗 LiveCD,而不用將其刻錄到 CD 上并在計算機上啟動。支持最廣泛的 i386 模擬器是 VMWare;其他模擬器還有 Qemu、PearPC 和 Bochs,它們都可以用來模擬 x86 和/或 PowerPC® 平臺;但是根據它們所采用的模擬方法不同,它們的速度要比一些商業化的版本慢。另外一個商業版本的模擬器是 VirtualPC。
現在讓我們來看一看部分 LiveCD 的安全工具。
Auditor
Auditor 安全工具是基于 Knoppix 的。由于不用安裝,我們只需要將 CD 放到 CD-ROM 中幾分鐘就可以開始使用分析平臺了。
Auditor 的主要開發者 Max Moser 指出 LiveCD 環境的菜單結構是它的最大優點。即使用戶不清楚工具的名字,也可以使用正確的工具。除了大約 300 個工具之外,Auditor 安全包還包含了一些有關標準配置和密碼的培訓信息,以及各種不同地區和語言的單詞列表,大約有 6400 萬條。CD 中還包含了一些輔助工具,例如 Web 瀏覽器、文本編輯器以及一些可以用來創建分析報告的圖形工具。
您可以使用 auditor-hdinstall 腳本將 Auditor 安裝到硬盤上。您應該有 2 GB 的硬盤空間。安裝程序不會為您創建分區,因此要確保提前進行分區和格式化。
LiveCD 的自動配置腳本可以簡化對各種硬件的使用。Moser 指出無線工具(例如 Wellenreiter 和 Kismet)都可以使用自動硬件識別工具進行配置,這樣就避免了在使用無線網卡時所需要的那些煩人的配置任務。
圖 1. Auditor 工具

Whoppix
與 Auditor 類似,WhiteHat Knoppix 也是一個穿透測試(pengtest)工具。Whoppix 的誕生是由于其開發者 Muts 被要求對一個大型組織進行一次內部穿透測試。他解釋說,“Pentest 的指導原則是不允許我將其安裝在自己的筆記本上,也不能修改組織內部的任何客戶機的配置,就像在本地計算機上安裝軟件一樣。”
Whoppix 是一個穿透測試的天堂。其中包含了很多有用的工具,以及大量知識庫(黑客用來獲得對您的系統的訪問權限的方法)。盡管 Muts 并不非常喜歡 CD 中的很多文檔,但是他打包時所采用的方法卻是惟一的。Muts 并沒有對這些工具進行簡單的解釋,而是與其他幾個非常活躍的成員一起為這些工具提供了幾個很小的 flash 演示視頻圖像,這樣即使一個新手也可以明白如何攻擊一個未經仔細配置的 msql 數據庫。
到版本 2.6 SP1 為止,Whoppix 都是使用缺省的 knoppix 內核。新的版本(目前尚未發布)采用了一個定制的 2.6.11.5 版本的內核,其中提供了對 WiFi 更好的支持(Orinoco 補丁)。
盡管您可以將 Whoppix 安裝到硬盤上,但是 Muts 并沒有對此提供強有力的支持。他的想法是提供一個可移植的 pentest 平臺,您可以直接利用這個平臺,而不用再經歷懶惰的黑客計算機的設置過程。“我的長期目標之一是為這些工具編寫文檔,并可能會出版一本叫做 'Whoppix hack ' 的書籍(非常類似于 'knoppix hacks'),” Muts 說。 “我正在尋找 Whoppix 的一些通用幫助,這既包括技術層面的,也包括其他的。如果有人愿意在這些文檔上為我提供一些幫助,那真是太好了。”
圖 2. Whoppix 工具

Knoppix-STD
#p#
這個發行版本也是一個定制過的 Knoppix 版本,它重點關注信息安全工具,因此就得名 STD(Security Tools Distribution)。 Knoppix-STD 目前由 Mark Cumming 進行維護,從最初他就是一名非常活躍的貢獻者。 Cumming 這樣解釋 Knoppix-STD 的目標以及它與其他類似項目的區別:“隨著所有的工具都開源之后,有很多工具所做的都是同樣的事情;安全 CD 也不例外。從頭開始,STD 的設計就不是用戶友好的;這就是說,我們并不會迎合大眾化的口味。實際的情況是我們使用 Linux 作為實現最終目的的一種手段;STD 是關于安全性工具的一套方案,而不是一個 Linux,盡管我們有很多 Linux 的愛好者。STD 試圖盡量遠離喧囂聲。我們并非沒有 xwindows,但是如果有一種簡單的終端方法可以實現所需要的功能,那么我們就使用這種方法;我們不會僅僅是出于興趣就開發一個 GUI。我們并不關心要確保這是實現某種功能所特有的唯一工具;實際上,我們計劃包含目前可以使用的所有工具。”
STD 已經為那些對安全性感興趣的人們建立了一個教學工具,這意味著其中包括很多的文檔。每個工具集都有自己的文檔目錄。您可以在 /usr/bin 中每個相關的工具集目錄中訪問這些工具。您會發現“粘蜜罐”、防火墻、IDS 以及一些網絡工具可幫助您更好地映射異構網絡。
“現在我們正在建立一個開發團隊機構來繼續發展 STD 項目。我們試圖從 ‘一個人做所有的事情’ 這種模式轉換到一種更加開放的開發環境中,它可以組織成幾個單獨的小組,每個小組都具有自己的組長。這樣開發一個 LiveCD 就可以利用開發和編譯 LiveCD 發行版的自然特性了。我們也不需要有實際硬件和帶寬基礎設施來支持 CVS 等。” Cumming 解釋說。他承諾說將來的版本會與現有的版本有顯著的區別,并對 WiFi 提供更好的支持。“將來,我們將開發對少量無線網卡的支持。我們需要對那些只購買了 9.99 美元最便宜網卡的用戶提供支持,這種支持的份量占據了我們開發的大部分時間。” Cumming 說。
您也可以將 STD 安裝到硬盤上,這可以使用普通的 Knoppix hd-install 腳本實現,默認是包含這個腳本的。STD 進行了很大的嘗試來幫助用戶修正問題,但是當很多新用戶選擇 RedHat 桌面系統來直接替換 Knoppix 之后,他們就失去了官方支持。
STD 論壇非常活躍,如果您希望深入了解 Knoppix-STD,這是個好地方。
圖 3. Whoppix 中的缺陷測試

PHLAK
PHLAK(Professional Hacker Linux Assault Kit)是 Morphix 的一個派生版本。根據 Morphix 的模塊化特性,用戶可以使用很小的模塊來添加自己的工具/設置,而不用換出整張 CD。Morphix 的所有開發特性在 PHLAK 中都可以使用。
“我們也可以在 PHLAK 中添加一些教育內容。用戶可以瀏覽文檔來學習有關安全性的內容,以及如何使用這些工具,”Shawn Hawkins 解釋說,他是 PHLAK 的開發人員之一,同時也是 Web 管理員。/usr/share/doc 下面的文檔大概有 118 MB。這里存放著有關各種安全工具的信息,分為 13 類,包括分析、認證、審計、掃描和隧道。還有有關緩沖區溢出、防火墻、入侵檢測等更多內容。“我們在 0.2-1 中所添加的另一個東西是 XPde,我們稱之為 'sneaky',原因非常顯然(使用了一個偽 Linux 發行版)。當然,我們還添加了一些自己的東西,整個主題,其他工具,等等,” Hawkins 說。
目前正在開發的 0.3 版本采用了新的 Morphix 基礎和 2.6 版本的內核。Hawkins 還許諾說要提供更好的無線支持,Morphix 的新硬盤安裝程序、更多文檔以及一些新的安全工具。
您可以使用 Morphix 0.5Pre4 中提供的新安裝程序腳本將 PHLAK 安裝到硬盤中。它已經為滿足 PHLAK 的要求進行了一些修改,大約會拷貝 1.5 到 2.0 GB 的數據。
在長期運行過程中,您可能期望使用一個精簡版本的 PHLAK,它可以安裝在一個 128 MB 或 256 MB 的 USB 閃存上。Hawkins 還討論了有關在將來的 PHLAK 發行版本中包含一個新文件系統 unionfs 的問題,這個文件系統讓那些從 CD 引導的用戶可以對文件系統進行寫操作。雖然這不會將用戶的信息保存到 CD 上,但是可以使用 apt-get 進行升級,更新 nessus 插件,以及需要對這個文件系統具有寫權限的任何事情。
圖 4. PHLAK 中的文檔

結束語
盡管所有人都同意對系統或網絡進行安全評估是一個關鍵問題,但進行徹底的評估是一件非常耗時的任務,可能應該與其他測試(例如性能測試)一起進行;迅速檢查系統缺陷的能力也是一個非常有用的工具,這 4 種 LiveCD 形式的安全評估包可以解決這一問題。
【編輯推薦】
- 使用Linux系統的Live CD進行安全審核
- SuSE LINUX 9.1 Personal Edition Live CD-ROM SSH Server默認帳戶漏洞
- 全面深入講解Fedora Live CD使用方法
- 分析描述打造創建Fedora Live CD
- 用Live cd 修復Grub具體實現說明
- 構建Fedora Live CD