Linux主机被入侵系列2:Linux Redis自动化挖矿感染蠕虫过程及修复

22 篇文章 0 订阅
19 篇文章 1 订阅

整个入侵流程大概是包含以下几个环节:

  1. 扫描开放6379端口的Linux服务器(后续感染扫描网段为1.0.0.0/16到224.255.0.0/16)

  2. 通过redis-cli尝试连接Redis并执行预置在.dat文件里的利用命令将Redis的数据文件修改为/var/spool/cron/root,然后通过在Redis中插入数据,将下载执行脚本的动作写入crontab任务

  3. 通过脚本实现以上的相关行为,完成植入并启动挖矿程序

  4. 再编译安装pnscan,继续扫描感染下一个目标

攻击脚本的周到考虑:

  1. 为了增加成功性,一些环境的预处理:

    1. 关闭SELINUX

    2. 增加8.8.8.8的DNS

    3. 清空tmp目录

    4. 清空系统缓存

    5. 修改系统资源限制

  2. 痕迹清除

    1. 利用trap预置动作好在脚本执行完成后删除相关文件和脚本自身

    2. 重复清除相关登录等日志和命令执行历史

  3. 同行预防

    1. 利用iptables避免Redis服务开放在公网上从而导致再次被入侵

    2. 清除同行可能遗留的入侵行为,kill相关进程

  4. 系统兼容性

    1. 判断操作系统,针对性的执行相关命令,安装依赖包,最大限度的提高pnscan编译安装的成功率

    2. 关闭SELINUX,通过setenforce和修改/etc/sysconfig/selinux两种手段实现

    3. 写入Crontab里的下载并执行脚本的任务,通过curl、wget、lynx三种方式实现

    4. Pnscan扫描增加操作系统判断,减少没有必要的感染尝试

  5. 特征去除,存活延续

    1. Pnscan采用安装编译的方式,既提高在不同系统下的兼容性,也避免形成固定的MD5特征

    2. 利用https://transfer.sh中转,每一次感染均生成新的连接,避免固定链接形成固定特征

    3. 下载到系统的相关文件均采用随机生成的文件名

病毒清理和系统恢复

我们主要参考脚本的相关行为进行对应的行为恢复和删除即可:

  1. 关闭SELINUX,根据系统原环境和业务需要重新开启SELINUX

  2. 清空了/var/spool/cron,根据原先备份清空恢复

  3. 修改/etc/resolv.conf增加DNS服务8.8.8.8,如无影响可不处理,或者删除

  4. 修改了系统资源限制(/etc/security/limits.conf),可根据备份情况恢复

  5. 增加了对6379端口的Iptables规则,如果不影响业务,建议保留

  6. Kill了相关进程,检查是否包含业务所需进程,根据情况恢复

  7.  安装了相关包,具体列表见上文,可根据情况删除或者如无影响可保留

  8. 编译安装了pnscan,可删除/usr/local/bin/pnscan

  9. 清除了相关日志和tmp目录,对系统无影响,可忽略

  10. 启动了挖矿进程和pnscan扫描感染,进程:.gpg、pnscan,直接kill

 

还包含了一些中间文件,虽然脚本包含相关删除操作,但建议还是全局查找确认:

.mxff0、.x112、.gpg、.dat、.cmd、.r.xx.xx.o/l、tmp.xxxx

 

Redis服务加固

  1. 导致入侵的主要原因是Redis未授权访问问题,所以如果要扼制入侵的入口,需要针对Redis服务进行加固,避免黑客通过该途径进行入侵植入挖矿蠕虫。

  2. 如无必要,修改bind项,不要将Redis绑定在0.0.0.0上,避免Redis服务开放在外网,可以通过iptables或者腾讯云用户可以通过安全组限制访问来源

  3. 在不影响业务的情况,不要以root启动Redis服务,同时建议修改默认的6379端口,大部分针对Redis未授权问题的入侵都是针对默认端口进行的

  4.  配置AUTH,增加密码校验,这样即使开放在公网上,如果非弱口令的情况,黑客也无法访问Redis服务进行相关操作

  5. 使用rename-command CONFIG "RENAME_CONFIG"重命名相关命令,这样黑客即使在连接上未授权问题的Redis服务,在不知道命令的情况下只能获取相关数据,而无法进一步利用

摘抄自:https://mp.weixin.qq.com/s/inazTPN5mHJYnt2QDliv8w

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值