惡意軟件是指任何旨在干擾或破壞計(jì)算系統(tǒng)正常運(yùn)行的軟件程序刷钢。雖然最臭名昭著的幾種惡意軟件有病毒仰税、間諜軟件和廣告軟件倦畅,但它們企圖引起的危害不一:有的是竊取私密信息蹂季,有的是刪除個(gè)人數(shù)據(jù),有的則介于兩者之間;而惡意軟件的另一個(gè)常見用途就是控制系統(tǒng)落追,然后利用該系統(tǒng)發(fā)動(dòng)僵尸網(wǎng)絡(luò)盈滴,形成所謂的拒絕服務(wù)(DoS)攻擊或分布式拒絕服務(wù)(DDoS)攻擊。
Linux惡意軟件檢測(cè)工具
換句話說(shuō)轿钠,我們?nèi)f萬(wàn)不可抱有這種想法“因?yàn)槲也⒉淮鎯?chǔ)任何敏感數(shù)據(jù)或重要數(shù)據(jù)巢钓,所以不需要保護(hù)自己的系統(tǒng)遠(yuǎn)離惡意軟件”,因?yàn)槟切?shù)據(jù)并不是惡意軟件的唯一目標(biāo)谣膳。
由于這個(gè)原因竿报,我們將在本文中介紹在RHEL 7.0/6.x(x是版本號(hào))、CentOS 7.0/6.x和Fedora 21-12中继谚,如何安裝并配置Linux惡意軟件檢測(cè)工具(又叫MalDet,或簡(jiǎn)稱LMD)和ClamAV(反病毒引擎)阵幸。
這是采用GPL v2許可證發(fā)布的一款惡意軟件掃描工具花履,專門為主機(jī)托管環(huán)境而設(shè)計(jì)糙申。然而菩收,你很快就會(huì)認(rèn)識(shí)到,無(wú)論自己面對(duì)哪種環(huán)境跪者,都會(huì)得益于MalDet荠割。
將LMD安裝到RHEL/CentOS 7.0/6.x和Fedora 21-12上
LMD無(wú)法從在線軟件庫(kù)獲得妹卿,而是以打包文件的形式從項(xiàng)目官方網(wǎng)站分發(fā)。打包文件含有最新版本的源代碼蔑鹦,總是可以從下列鏈接處獲得夺克,可使用下列命令來(lái)下載:
wget http://www.rfxn.com/downloads/maldetect-current.tar.gz
然后,我們需要解壓該打包文件嚎朽,并進(jìn)入提取/解壓內(nèi)容的目錄铺纽。由于當(dāng)前版本是1.4.2,目錄為maldetect-1.4.2哟忍。我們會(huì)在該目錄中找到安裝腳本install.sh狡门。
tar -xvf maldetect-current.tar.gz
ls -l | grep maldetect</pre>
下載Linux惡意軟件檢測(cè)工具
如果我們檢查安裝腳本陷寝,該腳本長(zhǎng)度只有75行(包括注釋),就會(huì)發(fā)現(xiàn)其馏,它不僅安裝該工具凤跑,還執(zhí)行預(yù)檢測(cè),看看默認(rèn)安裝目錄(/usr/local/maldetect)有無(wú)存在叛复。要是不存在仔引,腳本就會(huì)先創(chuàng)建安裝目錄,然后執(zhí)行下一步致扯。
最后肤寝,安裝完成后,只要將cron.daily腳本(參閱上圖)放入到/etc/cron.daily抖僵,就可以排定通過(guò)cron(計(jì)劃任務(wù))的每天執(zhí)行鲤看。這個(gè)幫助腳本具有諸多功能,包括清空舊的臨時(shí)數(shù)據(jù)耍群,檢查新的LMD版本义桂,掃描默認(rèn)Apache和Web控制面板(比如CPanel和DirectAdmin等)默認(rèn)數(shù)據(jù)目錄。
話雖如此蹈垢,還是按平常那樣運(yùn)行安裝腳本:
./install.sh</pre>
在Linux中安裝Linux惡意軟件檢測(cè)工具
配置Linux惡意軟件檢測(cè)工具
配置LDM的工作通過(guò)/usr/local/maldetect/conf.maldet來(lái)處理慷吊,所以選項(xiàng)都進(jìn)行了充分的注釋,以便配置起來(lái)相當(dāng)容易曹抬。萬(wàn)一你哪里卡住了溉瓶,還可以參閱/usr/local/src/maldetect-1.4.2/README,了解進(jìn)一步的指示谤民。
在配置文件中堰酿,你會(huì)找到用方括號(hào)括起來(lái)的下列部分:
?EMAIL ALERTS(郵件提醒)
?QUARANTINE OPTIONS(隔離選項(xiàng))
?SCAN OPTIONS(掃描選項(xiàng))
?STATISTICAL ANALYSIS(統(tǒng)計(jì)分析)
?MONITORING OPTIONS(監(jiān)控選項(xiàng))</pre>
這每個(gè)部分都含有幾個(gè)變量,表明LMD會(huì)如何運(yùn)行张足、有哪些功能特性可以使用触创。
?如果你想收到通知惡意軟件檢測(cè)結(jié)果的電子郵件,就設(shè)置email_alert=1为牍。為了簡(jiǎn)潔起見哼绑,我們只將郵件轉(zhuǎn)發(fā)到本地系統(tǒng)用戶,但是你同樣可以探究其他選項(xiàng)碉咆,比如將郵件提醒發(fā)送到外部用戶抖韩。
?如果你之前已設(shè)置了email_alert=1,設(shè)置email_subj=”Your subject here”和email_addr=username@localhost吟逝。
?至于quar_hits帽蝶,即針對(duì)惡意軟件襲擊的默認(rèn)隔離操作(0 =僅僅提醒,1 = 轉(zhuǎn)而隔離并提醒),你告訴LMD在檢測(cè)到惡意軟件后執(zhí)行什么操作励稳。
?quar_clean將讓你決定想不想清理基于字符串的惡意軟件注入佃乘。牢記一點(diǎn):就本身而言,字符串特征是“連續(xù)的字節(jié)序列驹尼,有可能與惡意軟件家族的許多變種匹配趣避。”
?quar_susp新翎,即針對(duì)遭到襲擊的用戶采取的默認(rèn)暫停操作程帕,讓你可以禁用其所屬文件已被確認(rèn)為遭到襲擊的帳戶。
?clamav_scan=1將告訴LMD試圖檢測(cè)有無(wú)存在ClamAV二進(jìn)制代碼地啰,并用作默認(rèn)掃描器引擎愁拭。這可以獲得最多快出四倍的掃描性能和出色的十六進(jìn)制分析。這個(gè)選項(xiàng)只使用ClamAV作為掃描器引擎亏吝,LMD特征仍是檢測(cè)威脅的基礎(chǔ)岭埠。
重要提示:
請(qǐng)注意:quar_clean和quar_susp需要quar_hits被啟用(=1)。
總之蔚鸥,在/usr/local/maldetect/conf.maldet中惜论,有這些變量的行應(yīng)該看起來(lái)如下:
email_alert=1
email_addr=gacanepa@localhost
email_subj="Malware alerts for(date +%Y-%m-%d)"
quar_hits=1
quar_clean=1
quar_susp=1
clam_av=1</pre>
將ClamAV安裝到RHEL/CentOS 7.0/6.x和Fedora 21-12上
想安裝ClamAV以便充分利用clamav_scan設(shè)置,請(qǐng)遵循這些步驟:
創(chuàng)建軟件庫(kù)文件/etc/yum.repos.d/dag.repo:
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/elbasearch/dag/
gpgcheck=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
enabled=1</pre>
然后運(yùn)行命令:
yum update && yum install clamd</pre>
注意:這些只是安裝ClamAV的基本指令止喷,以便將它與LMD整合起來(lái)馆类。我們?cè)贑lamAV設(shè)置方面不作詳細(xì)介紹,因?yàn)檎缜懊嫠龅琇MD特征仍是檢測(cè)和清除威脅的基礎(chǔ)乾巧。
測(cè)試Linux惡意軟件檢測(cè)工具
現(xiàn)在就可以檢測(cè)我們剛剛安裝的LMD / ClamAV了。不是使用實(shí)際的惡意軟件预愤,我們將使用EICAR測(cè)試文件(http://www.eicar.org/86-0-Intended-use.html)卧抗,這些文件可從EICAR網(wǎng)站下載獲得。
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</pre>
這時(shí)候鳖粟,你可以等待下一個(gè)cron任務(wù)運(yùn)行,也可以自行手動(dòng)執(zhí)行maldet拙绊。我們將采用第二種方法:
maldet --scan-all /var/www/</pre>
LMD還接受通配符向图,所以如果你只想掃描某種類型的文件(比如說(shuō)zip文件),就可以這么做:
maldet --scan-all /var/www/*.zip</pre>
掃描Linux中的惡意軟件
掃描完成后标沪,你可以查閱LMD發(fā)送過(guò)來(lái)的電子郵件榄攀,也可以用下列命令查看報(bào)告:
maldet --report 021015-1051.3559
Linux惡意軟件掃描報(bào)告
其中021015-1051.3559是SCANID(SCANID與你的實(shí)際結(jié)果會(huì)略有不同)。
重要提示:請(qǐng)注意:由于eicar.com文件下載了兩次(因而導(dǎo)致eicar.com和eicar.com.1)金句,LMD發(fā)現(xiàn)了5次襲擊檩赢。
如果你檢查隔離文件夾(我只留下了一個(gè)文件,刪除了其余文件)违寞,我們會(huì)看到下列結(jié)果:
ls –l
Linux惡意軟件檢測(cè)工具隔離文件
你然后可以用下列命令刪除所有隔離的文件:
rm -rf /usr/local/maldetect/quarantine/*</pre>
萬(wàn)一那樣贞瞒,
maldet --clean SCANID</pre>
最后的考慮因素
由于maldet需要與cron整合起來(lái)偶房,你就需要在root的crontab中設(shè)置下列變量(以root用戶的身份鍵入crontab –e,并按回車鍵)军浆,也許你會(huì)注意到LMD并沒(méi)有每天正確運(yùn)行:
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
SHELL=/bin/bash</pre>
這將有助于提供必要的調(diào)試信息棕洋。