文档章节

redis crackit安全事件分析

牛盾云安全
 牛盾云安全
发布于 2015/11/11 17:42
字数 748
阅读 32
收藏 0

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


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

 

如图开放在公网的redis6379端口的ip总数有63443个。无密码认证的IP43024个,在总数占比里达到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 ""


© 著作权归作者所有

共有 人打赏支持
牛盾云安全
粉丝 1
博文 3
码字总数 5943
作品 0
东城
私信 提问
Redis SSH 漏洞修复方法

一、前言 前段时间,在做内网影响程度评估的时候写了扫描利用小脚本, 扫描后统计发现,内网中60%开放了redis6379端口的主机处于可以被利用的危险状态,因为都是一些默认配置造成的 考虑到本...

苗雨顺
2016/08/26
58
0
Redis安全规范----check list

Redis安全规范—-check list. 1.信任的内网运行,尽量避免有公网访问 在/etc/redis/redis.conf中配置如下:bind 127.0.0.1 2.绑定redis监听的网络接口 如果服务器有多个IP,可限定redis serve...

Tar0
06/26
0
0
Redis 未授权访问缺陷可轻易导致系统被黑

Sebug 公布了 Redis 未授权访问缺陷的详细漏洞信息,这个 Redis 未授权访问缺陷可轻易导致系统被黑。详细内容请看下文: 漏洞概要 Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将Red...

奔跑的阿飞
2017/09/05
0
0
Redis 未授权访问缺陷可轻易导致系统被黑

Sebug 网站公布了 Redis 未授权访问缺陷的详细漏洞信息,这个 Redis 未授权访问缺陷可轻易导致系统被黑。详细内容请看下文: 漏洞概要 Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将...

oschina
2015/11/12
19K
29
态势感知攻击链分析-Redis未授权访问检测

      Redis未授权访问漏洞介绍   1、Redis应用介绍   Redis是key-value数据库,一般企业级使用场景为内部查询缓存。支持的value值包括string、list、set、zset和hash,为了保证效率...

嘶吼RoarTalk
09/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊flink的FsStateBackend

序 本文主要研究一下flink的FsStateBackend StateBackend flink-runtime_2.11-1.7.0-sources.jar!/org/apache/flink/runtime/state/StateBackend.java @PublicEvolvingpublic interface Sta......

go4it
34分钟前
1
0
webpack配置proxyTable时pathRewrite无效的解决方法

webpack配置接口地址代理 在项目开发中,接口联调的时候一般都是同域名下,且不存在跨域的情况下进行接口联调,但是当我们在本地启动服务器后,比如本地开发服务下是 http://localhost:8080 ...

前端小攻略
34分钟前
1
0
安装jenkins

1.下载 wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/2.155/jenkins.war 2.后续操作和 dubbo 安装类似: (1)复制一份空白的tomcat,重命名为:jenkins-tomcat (2)war包放入t...

狼王黄师傅
42分钟前
2
0
zookeeper配置与使用

一.登录官网下载 不要带后缀的,那是公侧版本,下稳定版,比如3.4.9 二.安装与使用 解压后bin里是启动程序 配置文件:在conf下 复制zoo_sample.cfg改名为为zoo.cfg,打开zoo修改文件 临时数据保存...

小兵胖胖
今天
4
0
spring源码阅读笔记(一)

ClassPathXmlApplicationContext 与 FileSystemXmlApplicationContext 用了这么久的框架,是时候搞一下源码了,一般最初接触spring 从以下步骤开始 创建一个bean类 并创建 ooxx.xml之类的spr...

NotFound403
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部