問題發(fā)現(xiàn):
docker最近總是莫名其妙的下載鏡像啟動容器,且并沒有其他鏡像是需要下載ubuntu作為底層包的。有意思的是每隔兩個(gè)小時(shí)左右啟動一個(gè)容器,沒有將cpu資源完全消耗,保持可用。

開始排查
命令查看陌生容器的日志 docker logs -f containerId
,發(fā)現(xiàn)典型kinsing挖礦病毒 !

last 命令查看登錄記錄
last命令 last 列出當(dāng)前和曾經(jīng)登入系統(tǒng)的用戶信息> 它默認(rèn)讀取的是/var/log/wtmp文件的信息> 輸出的內(nèi)容包括:用戶名、終端位置、登錄源信息、開始時(shí)間、結(jié)束時(shí)間、持續(xù)時(shí)間。> 注意最后一行輸出的是wtmp文件起始記錄的時(shí)間。> 當(dāng)然也可以通過 last -f 參數(shù)指定讀取文件,可以是/var/log/btmp、/var/run/utmp
[root@ls ~]# last
root pts/0 112.***.24.78 Fri Mar 4 20:14 still logged in
root pts/0 106.***.60.63 Fri Mar 4 19:00 - 19:02(00:02)
root pts/0 113.***.202.122Fri Mar 4 17:16 - 17:17(00:01)
root pts/0 117.***.117.234 Fri Mar 4 16:47 - 16:51(00:04)
IP 查詢,如若未發(fā)現(xiàn)異常,推斷應(yīng)該是:攻擊者清除了登錄記錄日志導(dǎo)致的。
last -f btmp 查看記錄錯(cuò)誤的登錄嘗試日志
btmp 文件 /var/log/btmp 用于記錄錯(cuò)誤的登錄嘗試> /var/log/btmp 文件過大形成原因:可能存在暴力破解登錄所致> 文件過大的解決方法:
- 初步清理該文件 echo > /var/log/btmp
- 更換遠(yuǎn)程登錄端口
- lastb 查看具體信息,查找出現(xiàn)次數(shù)較多的,封IP
# 查找惡意登錄的前十個(gè)IP,查詢其歸屬地如下:
[root@centos log]# lastb | awk '{ print $3}' | awk '{++S[$NF]} END {for(a in S) print a, S[a]}' | sort -rk2 |head
177.124.99.182 99 巴西圣卡塔琳娜
163.44.197.129 98 泰國曼谷
155.94.194.111 98 美國 加利福尼亞
154.83.17.188 98 美國 加利福尼亞
202.159.24.66 97 印度尼西亞 大雅加達(dá) 雅加達(dá)
185.110.243.137 97土耳其
181.199.122.86 97 厄瓜多爾
178.128.215.16 97 新加坡
103.84.236.222 97 印度 北阿坎德
179.43.156.214 96 瑞士 Zurich
# 查看Linux 文件系統(tǒng)磁盤的使用情況
df -h
#封禁ip
[root@centos ~]# iptables -I INPUT -s ***.***.***.***-j DROP
再查看一下 root 用戶執(zhí)行的命令的歷史記錄
一般病毒會挾持root權(quán)限,如果沒被清除記錄,可以用此命令查詢記錄> 初步判斷應(yīng)該是被字典暴力破解從外部攻入。
[root@ls log]# history 500
查看是否存在奇怪的定時(shí)任務(wù)
#這種病毒一般都會有定時(shí)任務(wù)存在
cd /var/spool/cron
#在此目錄下,ll 一下可以看到定時(shí)任務(wù)列表,cat 看一下,存在陌生定時(shí)任務(wù),將他刪除
top 命令查看CPU 占用
[root@ls log]# top

可以發(fā)現(xiàn) CPU 占用極高,其中 PID 921605這個(gè)進(jìn)程 CPU 占用率極大。關(guān)鍵詞:kdevtmpfsi, 看來我是中了兩個(gè)挖礦病毒啊 ??
解決:
PS:通過
ps -ef
命令查出kdevtmpfsi
進(jìn)程號,直接 kill -9 進(jìn)程號并刪除 /tmp/kdevtmpfsi 執(zhí)行文件。但沒有過1分鐘進(jìn)程又運(yùn)行了,這時(shí)就能想到,kdevtmpfsi
有守護(hù)程序或者有計(jì)劃任務(wù)。通過crontab -l
查看是否有可疑的計(jì)劃任務(wù)。
#查看 kdevtmpfsi 進(jìn)程
[root@centos ~]# ps -ef | grep kdevtmpfsi
root 921603 4101736 0 14:20 ? 00:00:00 [kdevtmpfsi] <defunct>
root 921605 4101736 89 14:20 ? 00:26:08 /tmp/kdevtmpfsi
root 2049891 837107 0 14:49 pts/0 00:00:00 grep --color=auto kdevtmpfsi
[root@centos ~]# crontab -l #查找可疑定時(shí)
no crontab for root
[root@centos ~]# systemctl status 837107 #根據(jù)第一步知道 kdevtmpfsi 進(jìn)程號是 837107,使用 systemctl status 837107 發(fā)現(xiàn) kdevtmpfsi 有守護(hù)進(jìn)程
● session-22.scope - Session 22 of user root
Loaded: loaded (/run/systemd/transient/session-22.scope; transient)
Transient: yes
Active: active (running) since Tue 2022-06-28 14:18:33 CST; 31min ago
Tasks: 9
Memory: 368.0M
CGroup: /user.slice/user-0.slice/session-22.scope
├─ 836189 sshd: root [priv]
├─ 836969 sshd: root@pts/0,pts/1
├─ 837107 -bash
├─ 837202 -bash
├─ 839365 top
├─2055827 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;uptime;echo finalshell_separator;cat /proc/net/dev;echo finalshell_separator;df;echo finalshell_separ>
├─2055858 sleep 1
├─2056021 systemctl status 837107
└─2056026 less
?
Jun 28 14:18:33 centos systemd[1]: Started Session 22 of user root.
?
至此,我們已經(jīng)找到了病毒的相關(guān)進(jìn)程,kill 掉 kdevtmpfsi 守護(hù)進(jìn)程
kill -9 PID
,再killall -9 kdevtmpfsi
挖礦病毒,最后刪除 kdevtmpfsi 執(zhí)行程序rm -f /tmp/kdevtmpfsi
。
事后檢查&預(yù)防
檢查 root 用戶 .ssh 目錄下 authorized_keys 是否被配置了后門的 ssh 的 key

修改SSH端口
vim /etc/ssh/sshd_config
開啟防火墻,只開放必須開放的端口,或者綁定ip訪問

補(bǔ)充
登錄相關(guān)
last命令,對應(yīng)的日志文件/var/log/wtmp; 成功登錄用戶
lastb命令,對應(yīng)的日志文件/var/log/btmp; 嘗試登錄信息
lastlog命令,對應(yīng)的日志文件/var/log/lastlog; 顯示最近登錄信息
清除登陸系統(tǒng)成功的記錄
[root@localhost root]#echo > /var/log/wtmp//此文件默認(rèn)打開時(shí)亂碼,可查到ip等信息
[root@localhost root]#last//此時(shí)即查不到用戶登錄信息
清除登陸系統(tǒng)失敗的記錄
[root@localhost root]# echo > /var/log/btmp//此文件默認(rèn)打開時(shí)亂碼,可查到登陸失敗信息
[root@localhost root]#lastb//查不到登陸失敗信息
Bash歷史相關(guān)
<空格>command //在執(zhí)行命令時(shí),指定Bash不保存執(zhí)行歷史
history -r //清除當(dāng)前登錄session的歷史
history -cw //清除所有歷史
清除歷史執(zhí)行命令
[root@localhost root]# history -c //清空歷史執(zhí)行命令
[root@localhost root]# echo > ./.bash_history//或清空用戶目錄下的這個(gè)文件即可
參考:【2022-03-04】記一次服務(wù)器被挖礦的處理過程Linux 服務(wù)器上有挖礦病毒 kdevtmpfsi 如何處理?# 學(xué)習(xí)計(jì)劃安排
我一共劃分了六個(gè)階段,但并不是說你得學(xué)完全部才能上手工作,對于一些初級崗位,學(xué)到第三四個(gè)階段就足矣~
這里我整合并且整理成了一份【282G】的網(wǎng)絡(luò)安全從零基礎(chǔ)入門到進(jìn)階資料包,需要的小伙伴可以掃描下方CSDN官方合作二維碼免費(fèi)領(lǐng)取哦,無償分享?。?!
如果你對網(wǎng)絡(luò)安全入門感興趣,那么你需要的話可以
點(diǎn)擊這里??網(wǎng)絡(luò)安全重磅福利:入門&進(jìn)階全套282G學(xué)習(xí)資源包免費(fèi)分享!文章來源:http://www.zghlxwxcb.cn/news/detail-829125.html
①網(wǎng)絡(luò)安全學(xué)習(xí)路線
②上百份滲透測試電子書
③安全攻防357頁筆記
④50份安全攻防面試指南
⑤安全紅隊(duì)滲透工具包
⑥HW護(hù)網(wǎng)行動經(jīng)驗(yàn)總結(jié)
⑦100個(gè)漏洞實(shí)戰(zhàn)案例
⑧安全大廠內(nèi)部視頻資源
⑨歷年CTF奪旗賽題解析文章來源地址http://www.zghlxwxcb.cn/news/detail-829125.html

到了這里,關(guān)于記一次服務(wù)器被挖礦的處理解決的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!