2021-05-12 14:32:11
如何在 Linux 上安裝和使用惡意軟體檢測工具 LMD 及防毒引擎 ClamAV
惡意軟體是指任何旨在干擾或破壞計算系統正常執行的軟體程式。雖然最臭名昭著的幾種惡意軟體如病毒、間諜軟體和廣告軟體,但它們企圖引起的危害不一:有的是竊取私密資訊,有的是刪除個人資料,有的則介於兩者之間;而惡意軟體的另一個常見用途就是控制系統,然後利用該系統發動殭屍網路,形成所謂的拒絕服務(DoS)攻擊或分散式拒絕服務(DDoS)攻擊。
換句話說,我們萬萬不可抱有這種想法“因為我並不儲存任何敏感資料或重要資料,所以不需要保護自己的系統遠離惡意軟體”,因為那些資料並不是惡意軟體的唯一目標。
由於這個原因,我們將在本文中介紹在RHEL 7.0/6.x(x是版本號)、CentOS 7.0/6.x和Fedora 21-12中,如何安裝並設定Linux惡意軟體檢測工具(又叫MalDet,或簡稱LMD)和ClamAV(反病毒引擎)。
這是採用GPL v2許可證發布的一款惡意軟體掃描工具,專門為主機託管環境而設計。然而,你很快就會認識到,無論自己面對哪種環境,都會得益於MalDet。
完全開源的殺病毒軟體ClamAV http://www.linuxidc.com/Linux/2013-08/88981.htm
Linux下安裝 Comodo Antivirus 防毒軟體 http://www.linuxidc.com/Linux/2012-05/60681.htm
Linux構建ClamAV 防毒 http://www.linuxidc.com/Linux/2013-09/90021.htm
將LMD安裝到RHEL/CentOS 7.0/6.x和Fedora 21-12上
LMD無法從線上軟體庫獲得,而是以打包檔案的形式從專案官方網站分發。打包檔案含有最新版本的原始碼,總是可以從下列連結處獲得,可使用下列命令來下載:
# wget http://www.rfxn.com/downloads/maldetect-current.tar.gz
然後,我們需要解壓該打包檔案,並進入提取/解壓內容的目錄。由於當前版本是1.4.2,目錄為maldetect-1.4.2。我們會在該目錄中找到安裝指令碼install.sh。
# tar -xvf maldetect-current.tar.gz
# ls -l | grep maldetect
下載Linux惡意軟體檢測工具
如果我們檢查安裝指令碼,該指令碼長度只有75行(包括注釋),就會發現,它不僅安裝該工具,還執行預檢測,看看預設安裝目錄(/usr/local/maldetect)有無存在。要是不存在,指令碼就會先建立安裝目錄,然後執行下一步。
最後,安裝完成後,只要將cron.daily指令碼(參閱上圖)放入到/etc/cron.daily,就可以排定通過cron(計劃任務)的每天執行。這個幫助指令碼具有諸多功能,包括清空舊的臨時資料,檢查新的LMD版本,掃描預設Apache和Web控制面板(比如CPanel和DirectAdmin等)預設資料目錄。
話雖如此,還是按平常那樣執行安裝指令碼:
# ./install.sh
在Linux中安裝Linux惡意軟體檢測工具
設定Linux惡意軟體檢測工具
設定LDM的工作通過/usr/local/maldetect/conf.maldet來處理,所以選項都進行了充分的注釋,以便設定起來相當容易。萬一你哪裡卡住了,還可以參閱/usr/local/src/maldetect-1.4.2/README,了解進一步的指示。
在組態檔中,你會找到用方括號括起來的下列部分:
- EMAIL ALERTS(郵件提醒)
- QUARANTINE OPTIONS(隔離選項)
- SCAN OPTIONS(掃描選項)
- STATISTICAL ANALYSIS(統計分析)
- MONITORING OPTIONS(監控選項)
這每個部分都含有幾個變數,表明LMD會如何執行、有哪些功能特性可以使用。
- 如果你想收到通知惡意軟體檢測結果的電子郵件,就設定email_alert=1。為了簡潔起見,我們只將郵件轉發到本地系統使用者,但是你同樣可以探究其他選項,比如將郵件提醒傳送到外部使用者。
- 如果你之前已設定了email_alert=1,設定email_subj=”Your subject here”和email_addr=username@localhost。
- 至於quar_hits,即針對惡意軟體襲擊的預設隔離操作(0 =僅僅提醒,1 = 轉而隔離並提醒),你告訴LMD在檢測到惡意軟體後執行什麼操作。
- quar_clean將讓你決定想不想清理基於字串的惡意軟體注入。牢記一點:就本身而言,字串特徵是“連續的位元組序列,有可能與惡意軟體家族的許多變種匹配。”
- quar_susp,即針對遭到襲擊的使用者採取的預設暫停操作,讓你可以禁用其所屬檔案已被確認為遭到襲擊的帳戶。
- clamav_scan=1將告訴LMD試圖檢測有無存在ClamAV二進位制程式碼,並用作預設掃描器引擎。這可以獲得最多快出四倍的掃描效能和出色的十六進位制分析。這個選項只使用ClamAV作為掃描器引擎,LMD特徵仍是檢測威脅的基礎。
重要提示:
請注意:quar_clean和quar_susp需要quar_hits被啟用(=1)。
總之,在/usr/local/maldetect/conf.maldet中,有這些變數的行應該看起來如下:
email_alert=1
email_addr=gacanepa@localhost
email_subj="Malware alerts for $HOSTNAME - $(date +%Y-%m-%d)"
quar_hits=1
quar_clean=1
quar_susp=1
clam_av=1
將ClamAV安裝到RHEL/CentOS 7.0/6.x和Fedora 21-12上
想安裝ClamAV以便充分利用clamav_scan設定,請遵循這些步驟:
建立軟體庫檔案/etc/yum.repos.d/dag.repo:
[dag]
name=Dag RPM RepositoryforRedHatEnterpriseLinux
baseurl=http://apt.sw.be/RedHat/el$releasever/en/$basearch/dag/
gpgcheck=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
enabled=1
然後執行命令:
# yum update && yum install clamd
注意:這些只是安裝ClamAV的基本指令,以便將它與LMD整合起來。我們在ClamAV設定方面不作詳細介紹,因為正如前面所述,LMD特徵仍是檢測和清除威脅的基礎。
測試Linux惡意軟體檢測工具
現在就可以檢測我們剛剛安裝的LMD / ClamAV了。不是使用實際的惡意軟體,我們將使用EICAR測試檔案(http://www.eicar.org/86-0-Intended-use.html),這些檔案可從EICAR網站下載獲得。
# cd /var/www/html
# wget http://www.eicar.org/download/eicar.com
# wget http://www.eicar.org/download/eicar.com.txt
# wget http://www.eicar.org/download/eicar_com.zip
# wget http://www.eicar.org/download/eicarcom2.zip
這時候,你可以等待下一個cron任務執行,也可以自行手動執行maldet。我們將採用第二種方法:
# maldet --scan-all /var/www/
LMD還接受萬用字元,所以如果你只想掃描某種型別的檔案(比如說zip檔案),就可以這麼做:
# maldet --scan-all /var/www/*.zip
掃描Linux中的惡意軟體
掃描完成後,你可以查閱LMD傳送過來的電子郵件,也可以用下列命令檢視報告:
# maldet --report 021015-1051.3559
Linux惡意軟體掃描報告
其中021015-1051.3559是SCANID(SCANID與你的實際結果會略有不同)。
重要提示:請注意:由於eicar.com檔案下載了兩次(因而導致eicar.com和eicar.com.1),LMD發現了5次襲擊。
如果你檢查隔離資料夾(我只留下了一個檔案,刪除了其餘檔案),我們會看到下列結果:
# ls –l
Linux惡意軟體檢測工具隔離檔案
你然後可以用下列命令刪除所有隔離的檔案:
# rm -rf /usr/local/maldetect/quarantine/*
萬一那樣,
# maldet --clean SCANID
最後的考慮因素
由於maldet需要與cron整合起來,你就需要在root的crontab中設定下列變數(以root使用者的身份鍵入crontab –e,並按確認鍵),也許你會注意到LMD並沒有每天正確執行:
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
SHELL=/bin/bash
這將有助於提供必要的偵錯資訊。
結束語
我們在本文中討論了如何安裝並設定Linux惡意軟體檢測工具和ClamAV這個功能強大的搭檔。借助這兩種工具,檢測惡意軟體應該是相當輕鬆的任務。
不過,你要幫自己一個忙,熟悉之前解釋的README檔案,那樣你就能確信自己的系統得到了全面支援和妥善管理。
要是你有什麼評論或問題,歡迎隨時留言。
相關文章