记一次 挖矿机处理 rm: cannot remove ‘tomcat’: Permission denied
在某次登录个人的云服务时,发现出现挖矿机程序。
1.找出病毒
当发现服务器卡的时候,我们可以采用top命令,如下显示
我们注意到有个user为tomcat的用户 以及后的command后面为networkservice.这个命令很像我们的系统命令。
但是从CPU来看,占用很大。
2.确认病毒
我们可以用top命令 来查看几个占用资源很大的进程号。我们可以根据进程号来查找关联的其它的进程,可以通过以下命令:
systemctl status 27054
执行以上命令会出现该进程号相关联的进程。
为了获取绝对路径,使用:
ls -l /proc/{pid号}/exe
3.删除病毒
进入到/etc目录下,
我们可以看到有sysupdate、networkservice、sysguard三个文件,这三个文件都是二进制文件,这三个应该就是挖矿的主程序和守护程序。还有一个update.sh文件,这应该是对挖矿病毒升级用的。这个update.sh怎么找出来的呢,其实是通过定时程序里面的cron找出来的。
我们可以看到有sysupdate、networkservice、sysguard三个文件,这三个文件都是二进制文件,这三个应该就是挖矿的主程序和守护程序。还有一个update.sh文件,这应该是对挖矿病毒升级用的。这个update.sh怎么找出来的呢,其实是通过定时程序里面的cron找出来的。
config.json(挖矿配置)、sysupdate(XMR挖矿软件)、update.sh(本脚本)、networkservice(scanner 扫描并入侵其他的主机)、sysguard(watchdog 用于监控并保证病毒的正常运行以及更新)并保证他们以root权限运行。
如下图所示

这里我们使用命令lsattr -a 查
看文件下下边包含文件的属性,看到`./.有个'i'属性,代表不得任意更动文件或目录,正是此属性在作祟,因为 病毒使用了chattr +i的命令:
执行以下命令:
再执行一下:lsattr -a
这时再执行删除命令:rm -rf tomcat
发现原先不能删除的tomcat文件,此时可以删除了。
同样的道理 我们cd到/etc目录下 查看
sysupdate、networkservice、sysguard、update.sh和config.json几个文件
这时候,你可能会发现无法删除,因为病毒使用了chattr +i 命令,使用如下命令即可删除
这时候,你可能会发现无法删除,因为病毒使用了chattr +i 命令,使用如下命令即可删除
chattr -i sysupdate
rm -rf sysupdate
每个无法删除的文件,都执行如上命令,即可实现删除文件
最后还有一个地方就是删除/root/.ssh/authorized_keys
可能攻击者已经在这里配置了登陆,攻击者可以随便登陆你的服务器。
最后发现服务器没有那么卡了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架