Chinaunix首页 | 论坛 | 博客
  • 博客访问: 453830
  • 博文数量: 153
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1575
  • 用 户 组: 普通用户
  • 注册时间: 2016-12-20 17:02
文章分类

全部博文(153)

文章存档

2017年(111)

2016年(42)

我的朋友

分类: 网络与安全

2017-02-03 16:55:20

Redis CSRF漏洞分析

近日有网友暴漏了Redis的CSRF漏洞,同时Redis作者在最新发布的3.2.7也进行了修复,本文将对CSRF攻击及如何安全使用Redis进行介绍。阿里云云数据库Redis版强制需要密码访问,不受该漏洞影响,而对于自建Redis用户可以根据后续的一个建议措施进行修复。

CSRF介绍

CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。

上图为CSRF攻击的一个简单模型用户访问恶意网站B,恶意网站B返回给用户的HTTP信息中要求用户访问网站A,而由于用户和网站A之间可能已经有信任关系导致这个请求就像用户真实发送的一样会被执行。

Redis CSRF攻击模型


根据上面CSRF的原理恶意网站可以让用户发送一个HTTP请求给Redis,由于Redis支持文本协议,而在接下协议过程中如果碰到非法的协议并不会断开链接,这个时候攻击者可以通过在正常的HTTP请求之后携带Redis命令从而在Redis上执行命令,而如果用户和Redis之间是没有密码验证的则可以正常执行Redis命令并对数据进行加密勒索,就像之前Mongodb赎金事件一样。

内核修复

Redis作者在3.2.7版本对该问题进行了一个修复,解决方案是对于POST和Host:的关键字进行特殊处理记录日志并断开该链接避免后续Redis合法请求的执行。

Redis安全风险

更早之前Redis暴露了一个安全漏洞,黑客在一条条件下可以拿到Redis服务的root权限,这些安全漏洞发生的原因主要是因为用户对于Redis的安全机制了解比较少,还有用户缺少Redis相关的运维经验,同时由于Redis也没有提供更丰富的安全防护机制。提供了更安全的Redis服务,对于云上的Redis服务建议使用云数据库Redis服务,接下去我们将对云数据Redis安全的要点进行介绍。

阿里云Redis安全规范

内网访问,避免公网访问

阿里云Redis只提供可信任的内网访问,用户不能通过公网访问到阿里云Redis

物理网络隔离

阿里云Redis物理机网络和用户网络物理隔离,用户虚拟机无法直接访问后端物理机网络

VPC网络隔离

对于阿里云用户如果使用专有云VPC网络,则能够保证只有同一个VPC网络下的服务可以互相访问

白名单

阿里云Redis支持白名单设置,目前未在控制台开放,后续用户可以在控制台设置可以访问的用户白名单

密码访问

阿里云Redis对于经典网络的实例强制开启密码鉴权,用户可以通过设置复杂的密码避免密码被攻破

访问权限隔离

阿里云Redis后端每个实例进行权限和访问目录的隔离,每个实例都只能访问自己实例的路径,避免实例之间的互相影响

禁用危险命令

阿里云Redis禁用了一些危险的系统管理命令config,save等,用户如果需要进行参赛修改需要通过控制台二次验证之后才能修改,同时也避免了直接操作后端的配置文件及管理命令


阅读全文直接点击:
阅读(1923) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~