Linux系統(tǒng)病毒防治
作者:李晨光
1996年出現(xiàn)的Staog是Linux系統(tǒng)下的第一個(gè)病毒,它出自澳大利亞一個(gè)叫VLAD的組織。Staog病毒是用匯編語言編寫,專門感染二進(jìn)制文件,并通過三種方式去嘗試得到root權(quán)限。Staog病毒并不會(huì)對(duì)系統(tǒng)有什么實(shí)質(zhì)性的損壞,它應(yīng)該算是一個(gè)演示版,但它向世人揭示了Linux可能被病毒感染的潛在危險(xiǎn)。Linux系統(tǒng)上第二個(gè)被發(fā)現(xiàn)的病毒是Bliss病毒,它是一個(gè)不小心被釋放出來的實(shí)驗(yàn)性病毒。與其它病毒不同的是,Bliss本身帶有免疫程序,只要在運(yùn)行該程序時(shí)加上“disinfect-files-please”選項(xiàng),即可恢復(fù)系統(tǒng)。
一、Linux病毒的歷史
1996年出現(xiàn)的Staog是Linux系統(tǒng)下的第一個(gè)病毒,它出自澳大利亞一個(gè)叫VLAD的組織。Staog病毒是用匯編語言編寫,專門感染二進(jìn)制文件,并通過三種方式去嘗試得到root權(quán)限。Staog病毒并不會(huì)對(duì)系統(tǒng)有什么實(shí)質(zhì)性的損壞,它應(yīng)該算是一個(gè)演示版,但它向世人揭示了Linux可能被病毒感染的潛在危險(xiǎn)。Linux系統(tǒng)上第二個(gè)被發(fā)現(xiàn)的病毒是Bliss病毒,它是一個(gè)不小心被釋放出來的實(shí)驗(yàn)性病毒。與其它病毒不同的是,Bliss本身帶有免疫程序,只要在運(yùn)行該程序時(shí)加上“disinfect-files-please”選項(xiàng),即可恢復(fù)系統(tǒng)。
如果說剛開始時(shí)Linux病毒向人們展示的僅僅是一個(gè)概念,那么,在2001年發(fā)現(xiàn)的Ramen病毒,則已經(jīng)開始引起很多人的擔(dān)心。Ramen病毒可以自動(dòng)傳播,無需人工干預(yù),所以和1988年曾使人們大受其苦的Morris蠕蟲非常相似。它只感染Red Hat 6.2和7.0版使用匿名FTP服務(wù)的服務(wù)器,它通過兩個(gè)普通的漏洞RPC.statd和wu-FTP感染系統(tǒng)。表面看來,這不是一個(gè)危險(xiǎn)的病毒,它很容易被發(fā)現(xiàn),且不會(huì)對(duì)服務(wù)器做出任何有破壞性的事情。但是當(dāng)它開始掃描時(shí),將消耗大量的網(wǎng)絡(luò)帶寬。從1996年至今,新的Linux病毒屈指可數(shù),這說明Linux是一個(gè)健壯的、具有先天病毒免疫能力的操作系統(tǒng)。當(dāng)然,除了其自身設(shè)計(jì)優(yōu)秀外,還有其它的原因。首先,Linux早期的使用者一般都是專業(yè)人士,就算是今天,雖然其使用者激增,但典型的使用者仍為那些有著很好的電腦背景且愿意幫助他人的人,Linux高手更傾向于鼓勵(lì)新手支持這樣一種文化精神。
正因?yàn)槿绱耍琇inux使用群中一種傾向就是以安全的經(jīng)驗(yàn)盡量避免感染病毒。其次,年輕也是Linux很少受到病毒攻擊的原因之一。事實(shí)上,所有的操作系統(tǒng)(包括DOS和Windows)在其產(chǎn)生之初,也很少受到各種病毒的侵?jǐn)_。然而,2001年3月,美國(guó)SANS學(xué)院的全球事故分析中心(Global Incident Analysis Center——GIAC)發(fā)現(xiàn),一種新的、針對(duì)使用Linux系統(tǒng)計(jì)算機(jī)的蠕蟲病毒正通過互聯(lián)網(wǎng)迅速蔓延,它將有可能對(duì)用戶的電腦系統(tǒng)造成嚴(yán)重破壞。這種蠕蟲病毒被命名為L(zhǎng)ion病毒,與Ramen蠕蟲病毒非常相似。但是,這種病毒的危險(xiǎn)性更大,Lion病毒能通過電子郵件把一些密碼和配置文件發(fā)送到一個(gè)位于china.com的域名上。
Dartmouth學(xué)院安全技術(shù)研究所工程師威廉·斯蒂恩斯說:“攻擊者在把這些文件發(fā)回去之后就可以通過第一次突破時(shí)的缺口再次進(jìn)入整個(gè)系統(tǒng)。這就是它與Ramen蠕蟲病毒的不同之處。事實(shí)上,Ramen病毒是一種比較友善的病毒,它在侵入系統(tǒng)后會(huì)自動(dòng)關(guān)閉其中的漏洞。而這個(gè)病毒卻讓那些漏洞敞開,并開辟新的漏洞。以至于如果你的系統(tǒng)感染了這個(gè)病毒,我們不能百分之百確信這個(gè)系統(tǒng)有挽救的價(jià)值。更加合理的選擇很有可能是轉(zhuǎn)移數(shù)據(jù),并且重新格式化硬盤。”一旦計(jì)算機(jī)被徹底感染,Lion病毒就會(huì)強(qiáng)迫電腦開始在互聯(lián)網(wǎng)上搜尋別的受害者。不過,感染Lion病毒的系統(tǒng)少于感染Ramen病毒的系統(tǒng),但是它所造成的損失卻比后者大得多。
二、Linux平臺(tái)下的病毒分類
Linux操作系統(tǒng)一直被認(rèn)為是Windows系統(tǒng)的勁敵,因?yàn)樗粌H安全、穩(wěn)定、成本低,而且很少發(fā)現(xiàn)有病毒傳播。但是,隨著越來越多的服務(wù)器、工作站和個(gè)人電腦使用Linux軟件,電腦病毒制造者也開始攻擊這一系統(tǒng)。對(duì)于Linux系統(tǒng)無論是服務(wù)器,還是工作站的安全性和權(quán)限控制都是比較強(qiáng)大的,這主要得力于其優(yōu)秀的技術(shù)設(shè)計(jì),不僅使它的操作系統(tǒng)難以宕機(jī),而且也使其難以被濫用。Unix經(jīng)過20多年的發(fā)展和完善,已經(jīng)變得非常堅(jiān)固,而Linux基本上繼承了它的優(yōu)點(diǎn)。在Linux里,如果不是超級(jí)用戶,那么惡意感染系統(tǒng)文件的程序?qū)⒑茈y得逞。當(dāng)然,這并不是說Linux就無懈可擊,病毒從本質(zhì)上來說是一種二進(jìn)制的可執(zhí)行的程序。像速客一號(hào)(Slammer)、沖擊波(Blast)、霸王蟲(Sobig)、 米蟲(Mimail)、勞拉(Win32.Xorala)病毒等惡性程序雖然不會(huì)損壞Linux服務(wù)器,但是卻會(huì)傳播給訪問它的Windows系統(tǒng)平臺(tái)的計(jì)算機(jī)。
Linux平臺(tái)下的病毒分類大體如下:
◆ 可執(zhí)行文件型病毒
可執(zhí)行文件型病毒是指能夠寄生在文件中的、以文件為主要感染對(duì)象的病毒。病毒制造者們無論使用什么武器,不管是匯編語言或C語言,要感染ELF文件都是輕而易舉的事情。這方面的病毒有Lindose。
◆ 蠕蟲(Worm)病毒
1988年Morris蠕蟲爆發(fā)后,Eugene H. Spafford為了區(qū)分蠕蟲和病毒,給出了蠕蟲的技術(shù)角度的定義——計(jì)算機(jī)蠕蟲可以獨(dú)立運(yùn)行,并能把自身的一個(gè)包含所有功能的版本傳播到另外的計(jì)算機(jī)上。在Linux平臺(tái)下,蠕蟲病毒極為猖獗,像利用系統(tǒng)漏洞進(jìn)行傳播的Ramen、Lion和Slapper等,這些病毒都感染了大量的Linux系統(tǒng),造成了巨大的損失。
◆ 腳本病毒
目前出現(xiàn)比較多的是使用Shell腳本語言編寫的病毒。此類病毒編寫較為簡(jiǎn)單,但是破壞力同樣驚人。我們知道,Linux系統(tǒng)中有許多的以.sh結(jié)尾的腳本文件,而一個(gè)短短十?dāng)?shù)行的Shell腳本就可以在短時(shí)間內(nèi)遍歷整個(gè)硬盤中的所有腳本文件,進(jìn)行感染。
◆ 后門程序
在廣義的病毒定義概念中,后門也已經(jīng)納入了病毒的范疇。活躍在Windows系統(tǒng)中的后門這一入侵者的利器在Linux平臺(tái)下同樣極為活躍。從增加系統(tǒng)超級(jí)用戶賬號(hào)的簡(jiǎn)單后門,到利用系統(tǒng)服務(wù)加載、共享庫(kù)文件注射、rootkit工具包,甚至可裝載內(nèi)核模塊(LKM),Linux平臺(tái)下的后門技術(shù)發(fā)展非常成熟,隱蔽性強(qiáng),難以清除。這是Linux系統(tǒng)管理員極為頭疼的問題。
三、Linux病毒的防治
綜合以上介紹可以看到,總體來說計(jì)算機(jī)病毒對(duì)Linux系統(tǒng)的危害較小。但是由于各種原因在企業(yè)應(yīng)用中往往是Linux和Windows操作系統(tǒng)共存形成異構(gòu)網(wǎng)絡(luò),在服務(wù)器端大多使用Linux和Unix,在桌面端使用Windows,所以Linux的防范病毒策略分成針對(duì)Linux本身(服務(wù)器和使用其作為桌面的計(jì)算機(jī))防范策略和針對(duì)使用Linux服務(wù)器后端的Windows系統(tǒng)的病毒防范策略兩個(gè)部分,Linux下的防病毒軟件也分成基于開放源代碼的和商業(yè)軟件兩部分。
◆ 針對(duì)Linux本身做病毒防范策略(服務(wù)器和使用其作為桌面的計(jì)算機(jī))
對(duì)可執(zhí)行文件型病毒、蠕蟲(Worm)病毒、腳本病毒的防范,通過安裝GPL查殺病毒軟件基本可以防范。服務(wù)器端可以使用AntiVir(http://www.hbedv.com/)查殺病毒。它是工作在命令行下的,運(yùn)行時(shí)可以較少占用系統(tǒng)資源。桌面用戶可以選擇Tkantivir(http://www.sebastian-geiges.de/tkantivir/),它是用Tcl/Tk編寫的,可以運(yùn)行在任何X-Window環(huán)境下面,比如KDE或GNOME等。
對(duì)于后門程序防范,可以采用
LIDS(http://www.lids.org/)和Chkrootkit(http://www.chkrootkit.org/)。LIDS是Linux內(nèi)核補(bǔ)丁和系統(tǒng)管理員工具(Lidsadm),它加強(qiáng)了Linux內(nèi)核,可以保護(hù)dev/目錄下的重要文件。而Chkrootkit可以檢測(cè)系統(tǒng)的日志和文件,查看是否有惡意程序侵入系統(tǒng),并且尋找關(guān)聯(lián)到不同惡意程序的信號(hào)。最新版本的Chkrootkit0.45可以檢測(cè)出sniffers、Trojans、worms、rootkit等100種病毒。
此外,對(duì)于Linux服務(wù)器來說運(yùn)行的軟件大都是開源軟件,而且都在不停升級(jí),穩(wěn)定版和測(cè)試版交替出現(xiàn)。在www.apache.org等網(wǎng)站上,最新的ChangeLog中都寫有“Bug Fix”、“Security Bug Fix”等字樣。所以,Linux系統(tǒng)管理員要經(jīng)常關(guān)注相關(guān)網(wǎng)站的Bug Fix和升級(jí),及時(shí)升級(jí)或添加補(bǔ)丁,千萬不要報(bào)僥幸心理。這里套用一句名言:“你的服務(wù)器永遠(yuǎn)可能在第二天被黑客接管。”
◆ 針對(duì)使用Linux服務(wù)器后端的Windows系統(tǒng)的病毒防范策略
許多企業(yè)使用代理服務(wù)器接人互聯(lián)網(wǎng),用戶的Windows系統(tǒng)在進(jìn)行HTTP網(wǎng)頁瀏覽和文件下載時(shí)容易被感染病毒,所以可以在代理服務(wù)器上加掛一個(gè)病毒過濾器,對(duì)用戶瀏覽的HTTP網(wǎng)頁進(jìn)行病毒檢測(cè),發(fā)現(xiàn)有用戶瀏覽網(wǎng)頁感染病毒的狀況即由代理服務(wù)器進(jìn)行阻斷,丟棄帶有病毒的請(qǐng)求,將不安全的進(jìn)程阻止在代理服務(wù)器內(nèi),禁止帶有病毒的數(shù)據(jù)向客戶端計(jì)算機(jī)傳播。Squid是一款非常優(yōu)秀的代理服務(wù)器軟件,但是沒有專門的病毒過濾功能。可以考慮使用德國(guó)開放源碼愛好者開發(fā)的一款基于Linux的病毒過濾代理服務(wù)器--HAVP(http://www.server-side.de/)。
HAVP病毒過濾代理服務(wù)器軟件既可以獨(dú)立使用,也可以與Squid串聯(lián)使用,增強(qiáng)Squid代理服務(wù)器的病毒過濾功能。
提供郵件服務(wù)是Linux服務(wù)器中重要應(yīng)用,可以使用ClamAV(http://www.clamwin.com/)防范病毒。ClamAV全名是Clam AntiVirus,它跟Liunx一樣強(qiáng)調(diào)公開程序代碼、免費(fèi)授權(quán)等觀念。ClamAV目前可以偵測(cè)超過8萬種病毒、蠕蟲和木馬程序,并且隨時(shí)更新數(shù)據(jù)庫(kù)。其分布在世界各地的病毒專家24小時(shí)更新及維護(hù)病毒數(shù)據(jù)庫(kù),任何人發(fā)現(xiàn)可疑病毒也可以隨時(shí)跟他們聯(lián)系,立刻更新病毒碼。這樣在極短的時(shí)間內(nèi),網(wǎng)絡(luò)上采用ClamAV的郵件服務(wù)器就能完成最新的防護(hù)。
以上主要介紹了基于開放源代碼的軟件,商業(yè)防毒軟件商Trend Micro、Network Associates、Data Fellows和Sophos也都有各自的Linux版病毒檢測(cè)器。另外,隨著Linux在中國(guó)的發(fā)展許多我們熟悉的國(guó)內(nèi)軟件廠商(瑞星等)也推出了相應(yīng)的Linux病毒防范軟件。
【編輯推薦】
責(zé)任編輯:趙寧寧
來源:
李晨光 的BLOG