redis crackit 安全事件分析

2015-11-11 18:02:53 +08:00
 NewDefend

11 月 9 日早上 10 点多我们收到几台客户服务器的安全监控系统告警,发现几台系统公钥文件被篡改,随后进行安全事件分析处理。在分析过程中我们发现了某黑客组织利用 redis 设计缺陷的攻击痕迹。考虑到攻击方式简单但影响极大,我们对此次安全事件做了进一步分析,发现这是针对全球互联网的全网性入侵事件。如果您的 linux 服务器上运行的 redis 没有设置密码,很可能已经受到了此次安全事件影响。结果将导致: redis 数据丢失,服务器的 ssh 公钥被替换。

我们就此次安全事件预警式的针对全球 6379 端口的 redis 服务器做了扫描,结果如下图:

如图开放在公网的 redis 的 6379 端口的 ip 总数有 63443 个。无密码认证的 IP 有 43024 个,在总数占比里达到 67%。发现遭受到 redis crackit 事件影响的服务器达到 35024 ,在总数占比中达到 55%,在无密码认证的 redis 数量中占比达到 81%左右。

事件描述

很多使用者都是把 redis 下载到服务器直接运行使用,无 ACL ,无密码, root 运行,且绑定在 0.0.0.0:6379 ,暴露在公网。攻击者在未授权访问 Redis 的情况下通过 redis 的机制,可以将自己的公钥或者其他恶意程序写入目标服务器中,从而可以直接控制目标服务器。

还原攻击过程

寻找无验证的 redis 服务:

制作 SSH 密钥和公钥:

把公钥内容写入 foo.txt :

把 SSH 公钥写入 redis :

覆盖系统用户原来的 SSH 公钥:

通过 SSH 登入服务器:

修补加固建议

  1. 环境安全:
    • 无需外网访问的可以绑定本地回环
    • 需要对外的增加 ACL 进行网络访问控制
    • 可以借用 stunnel 等工具完成数据加密传输
  2. 给 redis 设定密码
  3. 创建单独的 nologin 系统账号给 redis 服务使用
  4. 禁用特定命令

    rename-command CONFIG ""

2934 次点击
所在节点    信息安全
5 条回复
LazyZhu
2015-11-11 18:40:33 +08:00
期待 MySQL crackit 安全事件分析...
chinafeng
2015-11-11 19:02:54 +08:00
图都是外链拦截...
Andy1999
2015-11-11 19:07:19 +08:00
谢谢 已黑某服务器练手了
GNiux
2015-11-11 20:57:01 +08:00
哪个黑客组织?
barbery
2015-11-11 22:30:33 +08:00
如果不开放外网 6379 端口就没这个事情了咯?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/235417

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX