一、Linux病毒簡介
隨著Linux應用的日益廣泛,有大量的網絡服務器使用Linux操作系統。由於Linux的桌面應用和Windows相比還有一定的差距,所以在企業應用中往往是Linux和Windows操作系統共存形成異構網絡。在服務器端大多使用Linux和Unix的,桌面端使用Windows XP、Vista。Linux操作系統一直被認為是Windows系統的勁敵,因為它不僅安全、穩定、成本低,而且很少發現有病毒傳播。但是,隨著越來越多的服務器、工作站和個人電腦使用Linux軟件,電腦病毒制造者也開始攻擊這一系統。對於Linux系統無論是服務器,還是工作站的安全性和權限控制都是比較強大的,這主要得力於其優秀的技術設計,不僅使它的作業系統難以宕機,而且也使其難以被濫用。Unix經過20多年的發展和完善,已經變得非常堅固,而Linux基本上繼承了它的優點。在Linux裡,如果不是超級用戶,那麼惡意感染系統文件的程序將很難得逞。當然,這並不是說Linux就無懈可擊,病毒從本質上來說是一種二進制的可執行的程序。速客一號(Slammer)、沖擊波(Blast)、霸王蟲(Sobig)、 米蟲(Mimail)、勞拉(Win32.Xorala)病毒等惡性程序雖然不會損壞Linux服務器,但是卻會傳播給訪問它的Windows系統平台的計算機。
Linux平台下的病毒分類:
1、可執行文件型病毒:可執行文件型病毒是指能夠寄生在文件中的,以文件為主要感染對象的病毒。病毒制造者們無論使用什麼武器,匯編或者C,要感染ELF文件都是輕而易舉的事情。這方面的病毒有Lindose。
2、蠕蟲(worm)病毒:1988年Morris蠕蟲爆發後,Eugene H. Spafford 為了區分蠕蟲和病毒,給出了蠕蟲的技術角度的定義,“計算機蠕蟲可以獨立運行,並能把自身的一個包含所有功能的版本傳播到另外的計算機上。”在Linux平台下,蠕蟲病毒極為猖獗,像利用系統漏洞進行傳播的ramen,lion,Slapper等,這些病毒都感染了大量的Linux系統,造成了巨大的損失。
3、腳本病毒:目前出現比較多的是使用shell腳本語言編寫的病毒。此類病毒編寫較為簡單,但是破壞力同樣驚人。我們知道,Linux系統中有許多的以.sh結尾的腳本文件,而一個短短十數行的shell腳本就可以在短時間內遍歷整個硬盤中的所有腳本文件,進行感染。
4、後門程序:在廣義的病毒定義概念中,後門也已經納入了病毒的范疇。活躍在Windows系統中的後門這一入侵者的利器在Linux平台下同樣極為活躍。從增加系統超級用戶賬號的簡單後門,到利用系統服務加載,共享庫文件注射,rootkit工具包,甚至可裝載內核模塊(LKM),Linux平台下的後門技術發展非常成熟,隱蔽性強,難以清除。是Linux系統管理員極為頭疼的問題。
二、Linux 服務器病毒防范策略
綜合以上介紹,可以看到總體來說計算機病毒對Linux系統存在較小的危險。但是由於各種原因在企業應用中往往是Linux和Windows操作系統共存形成異構網絡。在服務器端大多使用Linux和Unix的,桌面端使用Windows 。所以為Linux的防范病毒策略分成幾個部分:
可執行文件型病毒、蠕蟲(worm)病毒、腳本病毒的防范通過安裝GPL查殺病毒軟件基本可以防范。服務器端可以使用avast! for Linux/Unix Servers它是工作在命令行下的,運行時可以較少占用系統資源。工作站用戶可以選擇avast! Linux Home Edition,可以運行在任何X-Windows環境下面,比如KDE或Gnome等。對於後門程序防范可以采用LIDS(http://www.lids.org/ )和Chkrootkit(http://www.chkrootkit.org/ ),LIDS是Linux內核補丁和系統管理員工具(lidsadm),它加強了Linus內核。可以保護dev/目錄下的重要文件。而Chkrootkit可以檢測系統的日志和文件,查看是否有惡意程序侵入系統,並且尋找關聯到不同惡意程序的信號。最新版本的Chkrootkit0.48可以檢測出sniffers、Trojans、worms、rootkit等59種。代理服務器squid是一款非常優秀的代理服務器軟件,但是並沒有專門的病毒過濾功能。可以考慮使用德國開放源碼愛好者開發的一款基於Linux的病毒過濾代理服務器——HAVP(http://www.server-side.de/ )。HAVP病毒過濾代理服務器軟件既可以獨立使用,也可以與Squid串聯使用,增強Squid代理服務器的病毒過濾功能。提供郵件服務是Linux服務器中重要應用。可以使用ClamAV(http://www.clamwin.com/ ),ClamAV 全名是 Clam AntiVirus,它跟Liunx一樣強調公開程序代碼、免費授權等觀念,ClamAV 目前可以偵測超過40,000 種病毒、蠕蟲、木馬程序,並且隨時更新數據庫,有一組分布在世界各地的病毒專家,24小時更新及維護病毒數據庫,任何人發現可疑病毒也可以隨時跟她們取得 聯系,立刻更新病毒碼,在極短的時間內,網絡上采用ClamAV的郵件服務器就完成最新的防護動作。
另外在Linux服務器上推薦使用命令行防病毒工具,雖然Linux桌面應用發展很快,但是命令行(shell)在Linux中依然有很強的生命力。即使在X Window下,系統管理員經常也要與命令行打交道,使用鍵盤次數要明顯高於鼠標。對於Linux系統管理員來說,在命令行下操作的重要性是不言而喻的。因為啟動X—Window管理器將會消耗大量系統資源。
三、安裝配置
Linux 平台:包括所有 Linux 分發版本 (只限 x86 平台) 帶 GLIBC 版本 2.1 或者更高的並且已安裝pthreads庫 ,486 處理器 (Pentium 或者建議更高的) ,32 MB RAM (建議 64 MB )系統要求:100兆硬盤空間。
說明:可以使用命令查看 glibc 版本:rpm -qa | grep glibc,glibc 版本必須比大等於 2.1.4-25 。Glibc 是提供系統調用和基本函數的 C 庫,比如open, malloc, printf等等。所有動態連接的程序都要用到它。Linux下最常用的多線程支持庫為Pthread庫,它是glibc庫的組成部分。
avast! for Linux/Unix Servers 官方網址:http://www.avast.com/cns/company.html ,是著名的捷克殺毒軟件。
主要特點:
擁有 avast! 殺毒內核的avast! for Linux/Unix 殺毒套裝是專為 UNIX-like 作業系統而設的.此套裝由命令行掃描器,相當於守護程序的常駐掃描器,和訪問常駐掃描器的客戶端組成.
殺毒內核 avast! For Linux 的殺毒內核跟 Windows 系統的是完全一樣的, 那就是說,Linux 版本包含所有Windows殺毒內核的尖端功能. 最新版本的 avast! 殺毒內核擁有突出的查殺效能, 而且性能相當高,它可以檢測出100%的流行病毒(已經在用戶之間傳播的病毒).還有出色的檢測木馬病毒功能和極低的誤報率. 此內核通過 ICSA 實驗室認證; 而且經常參加 Virus Bulletin 雜志的測試, 屢次獲得 VB100 獎項. 像Windows版本的 avast! 一樣 , avast! 的 Linux 殺毒引擎有突出的解壓功能. 它可以掃描, MAPI, CAB, ACE, CHM, 7ZIP 和 NTFS 流. 而且還可以掃描以下的壓縮文檔: ARJ, ZIP, MIME (+ 所有組合格式), DBX (Outlook Express 壓縮檔), RAR, TAR, GZIP, BZIP2, ZOO, ARC, LHA/LHX, TNEF (winmail.dat), CPIO, RPM, ISO, 和 SIS. 另外它還支持一些可執行壓縮器 (例如 PKLite, Diet, UPX, AsPack, PeShield, PeProtect, FSG 和 MEW).
自動更新 病毒防護的另外一個關鍵是病毒數據庫的更新. 當前版本並未采用增量式更新. 當病毒定義文件被更改整個 VPS 文件需要被新文件取替.
命令行掃描器 經驗豐富的用戶欣賞典型的從命令行控制的手動掃描器, . 它允許掃描指定目錄裡面的文件和本地及遠程卷. 當然命令行掃描器還可掃描通過網絡掛載的卷. 程序是非常靈活的; 它可以接收大量參數指令. 它還能夠創建大量供分析用的報告文件. 掃描器能夠在 STDIN/STDOUT 模式運作,把它用作管道過濾器. 這個模式主要是在shell腳本上使用的.
後台掃描器 殺毒daemon在後台運作.第三方應用程序可通過UNIX sockets訪問殺毒daemon.Daemon可在指定用戶的指定目錄內使用.安裝套裝包括安裝訪問殺毒daemon的客戶端.
1. 軟件下載安裝
#wget http://files.avast.com/files/linux/libavastengine-4.7.1-1.i586.rpm
#rpm –ivh libavastengine-4.7.1-1.i586.rpm
#wget http://files.avast.com/files/linux/avast4server-3.0.1-1.i586.rpm
#rpm –ivh avast4server-3.0.1-1.i586.rpm
注意安裝順序,默認軟件包安裝在/var/lib/avast4 目錄下。另外注意: 程序需要一個有效的注冊號才能正常運作,可在http://www.avast.com/cns/linux-server-demo-license.php 請求獲得。
2. 查看avast手冊頁
avast是命令行下工作軟件,軟件提供請詳細的手冊頁面。使用前請詳細閱讀。avast的手冊頁面如圖1 。
圖1 avast的手冊頁面
首先把獲得許可證文件拷貝到:/var/lib/avast4 目錄。
#cp License.dat /var/lib/avast4
Avast安裝後會產生兩個工具:
-病毒庫守護進程 (名稱是 "avastcmd")
-病毒掃描程序 (名稱是 "avastd")
病毒庫守護進程"avastcmd"在Redhat Linux 下的啟動、停止、重新啟動、重新加載配置文件、查看狀態的命令如下:
/etc/init.d/avastd [start|stop|restart|reload|status]
在Slackware linux下的啟動、停止、重新啟動、重新加載配置文件、查看狀態的命令如下:
/etc/rc.d/rc.avastd [start|stop|restart|reload|status]
在Freebsd操作系統下的啟動、停止、重新啟動、重新加載配置文件、查看狀態的命令如下: