服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Redis - 超过8000不安全Redis暴露在云端

超过8000不安全Redis暴露在云端

2020-04-28 21:13FreeBuf佚名 Redis

研究人员在云端发现约8000个不安全的Redis,这些Redis未使用TLS加密且未设密码保护。

研究人员在云端发现约8000个不安全的Redis,这些Redis未使用TLS加密且未设密码保护。Redis设计之初是在受信任环境中使用,如果允许其在互联网或物联网中使用,攻击者会利用不安全的Redis服务器来发起攻击,例如SQL注入,跨站攻击,恶意文件上传、远程代码执行等。

什么是Redis?

 

Redis全称为Remote Dictionary Server,是一种开源内存数据存储结构,常用在数据库,数据缓存等。由于Redis驻留在内存中,它可以为需要处理大量请求的程序提供毫秒级的响应,例如实时聊天,金融服务,医疗保健和游戏等。

据报道,2018年Redis上运行着9亿个容器,其拥有广泛的用户群,官方镜像已被下载超过10亿次,同时被GitHub,Craigslist和Twitter等公司使用。Redis还可部署在云中,利用缓存节省云存储空间。

Redis分析

 

利用Shodan发现全球部署了8000多个不安全的Redis。其中一些部署在公共云中,如AWS、Azure和Google云。下图只列出超过50个不安全Redis的云:

超过8000不安全Redis暴露在云端

全球分布:

超过8000不安全Redis暴露在云端

Redis官方文档中指出:

 

Redis旨在受信任环境中的供受信任客户端访问。将Redis直接暴露在互联网中或让不受信任的客户端直接访问会使Redis处于危险之中。

默认情况下,Redis监听6379端口。与SMTP协议相似,此协议通信不加密,虽然有TLS加密选项但不是Redis的默认设置,用户需要手动启用TLS。在Redis启用TLS时,攻击者无法嗅探传输数据。但是启用TLS无法阻止Redis服务器未授权访问。可在在redis.conf中配置requirepass来启用身份验证,也可以通过CONFIG SET requirepass password命令来启动。身份验证密码会以明文形式存储,所有可以看到配置信息的人都可以获得密码。但是即使设置了身份验证,未启用TLS时攻击者仍可以通过嗅探获得密码。

超过8000不安全Redis暴露在云端

为了限制用户执行关键命令,Redis使用了两种方法:禁用命令或将命令重命名。Redis用户可以将命令重命名为空字符来完全禁用命令。

超过8000不安全Redis暴露在云端

当不安全的Redis服务器处于暴露状态时,攻击者可能会使用以下命令:

DEBUG SEGFAULT

此命令可访问无效内存,导致Redis崩溃。攻击者可利用该命令进行拒绝服务攻击,关闭正在运行的Redis。

EVAL

此命令可在服务器执行LUA脚本。Redis已经利用LUA沙盒对某些功能进行了限制,不加载关键库阻止远程执行,禁用诸如loadfile和dofile之类的功能,确保不会被读取任意文件。

GET/SET

攻击者可利用该命令检索或修改数据。

FLUSHALL

此命令能够清空或删除所有数据库中所有key,导致数据丢失,如果Redis上数据未正确备份,还可能导致服务出错。

MONITOR

此命令显示服务器处理的请求,攻击者可利用它来嗅探流量,寻找目标中的重要文件。

超过8000不安全Redis暴露在云端

安全建议

 

为确保Redis安全,建议采取以下措施:

1、确定Redis部署位置,确定访问人员权限设置。

2、确保环境安全配置正确,不允许其他部署干扰Redis。

3、同时启用TLS与密码身份验证。

4、密切注意命令执行情况,如DEBUG SEGFAULT和MONITOR。

5、正确网络分段。 防止Redis应暴露在其他不受信任的环境中。

6、不要在前端开发中使用Redis。

延伸 · 阅读

精彩推荐
  • Redisredis缓存存储Session原理机制

    redis缓存存储Session原理机制

    这篇文章主要为大家介绍了redis缓存存储Session原理机制详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...

    程序媛张小妍9252021-11-25
  • RedisRedis集群的5种使用方式,各自优缺点分析

    Redis集群的5种使用方式,各自优缺点分析

    Redis 多副本,采用主从(replication)部署结构,相较于单副本而言最大的特点就是主从实例间数据实时同步,并且提供数据持久化和备份策略。...

    优知学院4082021-08-10
  • Redis关于Redis数据库入门详细介绍

    关于Redis数据库入门详细介绍

    大家好,本篇文章主要讲的是关于Redis数据库入门详细介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览...

    沃尔码6982022-01-24
  • RedisRedis 6.X Cluster 集群搭建

    Redis 6.X Cluster 集群搭建

    码哥带大家完成在 CentOS 7 中安装 Redis 6.x 教程。在学习 Redis Cluster 集群之前,我们需要先搭建一套集群环境。机器有限,实现目标是一台机器上搭建 6 个节...

    码哥字节15752021-04-07
  • Redis详解三分钟快速搭建分布式高可用的Redis集群

    详解三分钟快速搭建分布式高可用的Redis集群

    这篇文章主要介绍了详解三分钟快速搭建分布式高可用的Redis集群,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,...

    万猫学社4502021-07-25
  • Redis如何使用Redis锁处理并发问题详解

    如何使用Redis锁处理并发问题详解

    这篇文章主要给大家介绍了关于如何使用Redis锁处理并发问题的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Redis具有一定的参考学习...

    haofly4522019-11-26
  • RedisRedis Template实现分布式锁的实例代码

    Redis Template实现分布式锁的实例代码

    这篇文章主要介绍了Redis Template实现分布式锁,需要的朋友可以参考下 ...

    晴天小哥哥2592019-11-18
  • Redis《面试八股文》之 Redis十六卷

    《面试八股文》之 Redis十六卷

    redis 作为我们最常用的内存数据库,很多地方你都能够发现它的身影,比如说登录信息的存储,分布式锁的使用,其经常被我们当做缓存去使用。...

    moon聊技术8182021-07-26