1996年的Staog是Linux系統下的第一個病毒,它出自澳大利亞一個叫VLAD的組織(Windows 95下的第一個病毒程序Boza也系該組織所為)。Staog病毒是用匯編語言編寫,專門感染二進制文件,並通過三種方式去嘗試得到root權限。 Staog病毒並不會對系統有什麼實質性的損壞。它應該算是一個演示版。它向世人揭示了Linux可能被病毒感染的潛在危險。Linux系統上第二個被發現的病毒是Bliss病毒,它是一個不小心被釋放出來的實驗性病毒。與其它病毒不同的是,Bliss本身帶有免疫程序,只要在運行該程序時加上 “disinfect-files-please”選項,即可恢復系統。
如果說剛開始時Linux病毒向人們展示的僅僅是一個概念,那麼,在2001年發現的Ramen病毒,則已經開始引起很多人的擔心。Ramen病毒可以自動傳播,無需人工干預,所以和1988年曾使人們大受其苦的 Morris蠕蟲非常相似。它只感染Red Hat 6.2和7.0版使用匿名FTP服務的服務器,它通過兩個普通的漏洞RPC.statd和wu-FTP感染系統。
表面看來,這不是一個危險的病毒。它很容易被發現,且不會對服務器做出任何有破壞性的事情。但是當它開始掃描時,將消耗大量的網絡帶寬。
從1996年至今,新的Linux病毒屈指可數,這說明Linux是一個健壯的具有先天病毒免疫能力的操作系統。當然,出現這種情況,除了其自身設計優秀外,還有其它的原因。
首先,Linux早期的使用者一般都是專業人士,就算是今天,雖然其使用者激增,但典型的使用者仍為那些有著很好的電腦背景且願意幫助他人的人,Linux 高手更傾向於鼓勵新手支持這樣一種文化精神。正因為如此,Linux使用群中一種傾向就是以安全的經驗盡量避免感染病毒。其次,年輕,也是Linux很少受到病毒攻擊的原因之一。事實上,所有的操作系統(包括DOS和Windows)在其產生之初,也很少受到各種病毒的侵擾。
然而, 2001年3月,美國SANS學院的全球事故分析中心(Global Incident Analysis Center——GIAC)發現,一種新的針對使用Linux系統的計算機的蠕蟲病毒正通過互聯網迅速蔓延,它將有可能對用戶的電腦系統造成嚴重破壞。這種蠕蟲病毒被命名為“獅子”病毒,與Ramen蠕蟲病毒非常相似。但是,這種病毒的危險性更大,“獅子”病毒能通過電子郵件把一些密碼和配置文件發送到一個位於china.com的域名上。Dartmouth學院安全技術研究所工程師威廉·斯蒂恩斯說:“攻擊者在把這些文件發回去之後就可以通過第一次突破時的缺口再次進入整個系統。這就是它與Ramen蠕蟲病毒的不同之處。事實上,Ramen病毒是一種比較友善的病毒,它在侵入系統後會自動關閉其中的漏洞,而這個病毒卻讓那些漏洞敞開並開辟新的漏洞。以至於如果你的系統感染了這個病毒,我們不能百分之百確信這個系統有挽救的價值,更加合理的選擇很有可能是轉移你的數據並且重新格式化硬盤。”
一旦計算機被徹底感染,“獅子”病毒就會強迫電腦開始在互聯網上搜尋別的受害者。不過,感染“獅子”病毒的系統少於感染Ramen病毒的系統,但是它所造成的損失卻比後者大得多。
隨著Klez病毒在Linux平台上的傳染,防毒軟件廠商開始提醒我們微軟的操作系統不再是唯一易受病毒攻擊的操作系統了。即使Linux和其他一些主流 UNIX平台的用戶可能不是微軟捆綁應用軟件的大用戶,不可能通過這些軟件造成病毒的泛濫,Linux和UNIX仍然有它們自身並不引人注目的脆弱點。除了Klez以外,其他Linux/UNIX平台的主要威脅有:Lion.worm、OSF.8759病毒、Slapper、Scalper、 Linux.Svat和BoxPoison病毒,這些都很少被提及。
病毒的制造者是一些精通編寫代碼的黑客,他們遠比那些胡亂塗改網站卻對編寫病毒知之甚少的黑客要危險。一個被黑掉的網站可以很快修好,而病毒卻更加隱蔽,會帶來潛在的安全隱患,它會一直潛伏,直到給系統帶來不可挽回的損害。
另外,越多的Linux系統連接到局域網和廣域網,就會有越多受攻擊的可能,這是因為很多Linux病毒正在快速地擴散著。使用WINE的 Linux/UNIX系統特別容易受到病毒的攻擊。WINE是一個公開源代碼的兼容軟件包,能讓Linux平台運行Windows應用軟件。WINE系統特別容易遭受病毒的攻擊,因為它們會使無論是對Linux的還是對 Windows的病毒、蠕蟲和木馬都能對系統產生威脅。
Linux平台下的病毒分類
可執行文件型病毒:可執行文件型病毒是指能夠寄生在文件中的,以文件為主要感染對象的病毒。病毒制造者們無論使用什麼武器,匯編或者C,要感染ELF文件都是輕而易舉的事情。這方面的病毒如Lindose,當其發現一個ELF文件時,它將檢查被感染的機器類型是否為Intel 80386,如果是,則查找該文件中是否有一部分的大小大於 2,784字節(或十六進制AEO),如果滿足這些條件,病毒將用自身代碼覆蓋它並添加宿主文件的相應部分的代碼,同時將宿主文件的入口點指向病毒代碼部分。一個名為Alexander Bartolich的學生發表了一篇名為《如何編寫一個Linux的病毒》的文章,詳細描述了如何制作一個感染在Linux/i386的ELF可執行文件的寄生文件病毒。有了這樣具啟發性的、在網上發布的文檔,基於Linux的病毒數量只會增長的更快,特別是自Linux的應用越來越廣泛之後。
蠕蟲(worm)病毒:1988年Morris蠕蟲爆發後,Eugene H. Spafford 為了區分蠕蟲和病毒,給出了蠕蟲的技術角度的定義,“計算機蠕蟲可以獨立運行,並能把自身的一個包含所有功能的版本傳播到另外的計算機上。” (worm is a program that can run by itself and can propagate a fully working version of itself to other machines. )。在Linux平台下,蠕蟲病毒極為猖獗,像利用系統漏洞進行傳播的ramen,lion,Slapper……這些臭名遠播的家伙每一個都感染了大量的 Linux系統,造成了巨大的損失。它們就是開放原代碼世界的nimda,紅色代碼。在未來,這種蠕蟲病毒仍然會愈演愈烈,Linux系統應用越廣泛,蠕蟲的傳播程度和破壞能力也會隨之增加。
腳本病毒:目前出現比較多的是使用shell腳本語言編寫的病毒。此類病毒編寫較為簡單,但是破壞力同樣驚人。我們知道,Linux系統中有許多的以.sh結尾的腳本文件,而一個短短十數行的shell腳本就可以在短時間內遍歷整個硬盤中的所有腳本文件,進行感染。因此病毒制造者不需要具有很高深的知識,就可以輕易編寫出這樣的病毒,對系統進行破壞,其破壞性可以是刪除文件,破壞系統正常運行,甚至下載一個木馬到系統中等等。
後門程序:在廣義的病毒定義概念中,後門也已經納入了病毒的范疇。活躍在Windows系統中的後門這一入侵者的利器在Linux平台下同樣極為活躍。從增加系統超級用戶賬號的簡單後門,到利用系統服務加載,共享庫文件注射,rootkit工具包,甚至可裝載內核模塊(LKM),Linux平台下的後門技術發展非常成熟,隱蔽性強,難以清除。是Linux系統管理員極為頭疼的問題。
病毒、蠕蟲和木馬基本上意味著自動化的黑客行為,也許被病毒攻擊比被黑客攻擊更可能發生。直接的黑客攻擊目標一般是服務器,而病毒是等機會的麻煩制造者。如果你的網絡包含了Linux系統,特別危險的是服務器,不要在作出反應之前等待尋找Linux病毒、蠕蟲和木馬是否存在。做一些調查然後選擇一個適合你系統的防毒產品,它們能幫你防止病毒的傳播。至於Linux平台病毒在未來的發展,一切皆有可能。
Windows下的病毒發展史,也有可能在Linux上重演,這取決於Linux的發展。