记录一次被暴力破解ssh,注入“Shib”挖矿恶意进程到防护加固的实践

最近,在维护阿里云上的一台服务器时,我发现系统负载异常高,远远超过了正常运行的范围。通过top命令查看,我发现一个名为Shib的进程一直占用了百分之300多CPU 资源。由于常在币圈混的我就觉得这个进程名称非常特别进入了查杀状态

这篇文章将分享我如何发现这个恶意进程,并一步步解决问题,最终加强服务器安全以防止类似情况的再次发生。

1. 初步发现异常

检查它的启动命令时,我发现它连接到了一个外部的挖矿服务器。

ps aux | grep Shib

进程信息显示:

root 29806 363 0.2 93520 20452 ? Sl Nov05 43453:14 ./Shib -a gr -o stratum+ssl://1123.某挖矿地址:443 -u SHIB:0x031e5116606050737eec2df246a0d99e6e57e6bb.kk#igf7-a271 -p x

通过对该进程的命令行分析,我意识到它正与一个远程挖矿服务器(1123.某挖矿地址:443)建立连接,利用服务器资源进行加密货币挖矿,显然这是一种恶意软件。

2. 暂时性解决方案:防止黑客连接

在明确了服务器被感染之后,我的首要任务是防止黑客通过该进程进一步控制服务器。由于服务器的 SSH 服务是通过密码验证的,我担心在处理过程中黑客可能会再次利用密码登录到服务器。为了避免这一风险,我立刻采取了以下措施:

通过阿里云的安全组功能,临时开启了 IP 白名单,确保只有我信任的 IP 地址可以访问服务器。这一步骤可以有效防止黑客继续进行远程连接。

3. 查杀恶意进程并清理文件

接下来,我开始着手清除Shib恶意进程及其相关文件。首先,我用kill命令强制停止了该进程:

kill -9 29806

然后,通过find命令在整个系统中查找该进程的可执行文件:

find / -name "Shib" 2>/dev/null

找到文件路径后,我将其删除:

rm -f /root/Shib

此外,我还检查了是否存在与此恶意软件相关的定时任务或启动项。通过查看crontab和/etc/init.d/等位置,我确保系统中没有被设置为自启动的恶意程序。

4. 更改 SSH 登录方式

在排查过程中,我意识到继续使用密码登录存在较大的安全隐患。为此,我决定关闭密码登录,改用密钥登录 SSH。

首先,编辑 SSH 配置文件/etc/ssh/sshd_config,禁用 root 密码登录并强制使用密钥认证:

PermitRootLogin without-password

PasswordAuthentication no

大家有什么更靠谱的想法也可以留言大家相互学习

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容