網(wǎng)站或許環(huán)境,Linode東京高配的VPS,CentOS系統(tǒng),LNMP情況,跑的Discuz X 2.5,會(huì)見(jiàn)量不小。
開(kāi)始先用下面這樣的呼吁查找
find . -name "*.php" -print0 | xargs -0 grep -rn 'shell_exec'
webshell常用函數(shù)都查了一遍,并沒(méi)有發(fā)明可疑文件。
可是伴侶告之,網(wǎng)站最近二天都被竄悔改,,不按時(shí)呈現(xiàn)彈窗,然后過(guò)不久又消失。
以此判定,作惡的人必然會(huì)會(huì)見(jiàn)到webshell,通過(guò)webshell修改網(wǎng)站上的文件 。
萬(wàn)幸,處事器上保存了或許三天的Nginx日志。
把日志文件整理了下,執(zhí)行下面的呼吁
cat *.log|grep "POST"|grep 200 | awk '{print $7}' |grep -o -E '.*.php' | sort -n | uniq -c
功效如下圖:

這個(gè)呼吁的浸染是把日志里被POST方法請(qǐng)求的文件全部列出來(lái)。
從webshell風(fēng)行起來(lái)開(kāi)始,險(xiǎn)些所有的webshell都以POST方法來(lái)提交操縱請(qǐng)求,目標(biāo)就是把參數(shù)在日志里埋沒(méi)掉,因?yàn)榉彩侨罩静⒉粫?huì)記錄POST參數(shù)。
可是物極必反,這一思路形成主流后反而給查抄提供了利便。
上面列出的這些文件險(xiǎn)些都查抄了一遍,多余的就不多說(shuō)了,最后問(wèn)題確定在/source/archiver/common/footer.php這個(gè)文件上,文件內(nèi)容如下圖:

這個(gè)include一下就袒露了。
先到日志里查一下請(qǐng)求這個(gè)文件用的GET參數(shù),如下圖:

順勢(shì)找到/uc_server/data/tmp/upload753178.jpg這個(gè)文件 。
打開(kāi)后,在最后發(fā)明:

到這里,一切豁然開(kāi)朗,這是菜刀的后門(mén)。
跋文:
從日志來(lái)看,三四天以來(lái)差不多天天會(huì)有一次行動(dòng),而每次用完菜刀,會(huì)到百度去搜索某一個(gè)要害詞,而排第一的正是這個(gè)網(wǎng)站,然后再通過(guò)百度鏈接來(lái)會(huì)見(jiàn)網(wǎng)站。可以看出,作惡者的目標(biāo)是想挾制網(wǎng)站的百度等搜索引擎流量 ,這樣搞一通下來(lái),正是在做測(cè)試。可是挾制代碼有問(wèn)題,因?yàn)槊看纬鰪棿暗臅r(shí)候,直接打開(kāi)網(wǎng)站也會(huì)彈,也正是因?yàn)檫@樣,每次呈現(xiàn)彈窗不久就又被作惡者去除。最后的結(jié)論是,1)木馬好久前就已經(jīng)上傳,可是日志已經(jīng)不在,無(wú)法確定是怎么傳上來(lái)的;2)此刻搞彈窗的人并不是傳馬的人,很有大概是買(mǎi)來(lái)的。