Redis CrackIT 入侵事件引发Linux 沦陷
▲针对全球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官网并未对此提供补丁,到目前为止看到的利用过程是基于redis提供的正常功能,而且这一问题早在去年九月就作为远程代码执行RCE的技术问题做了公开发布,并只得到小范围传播。
还原攻击过程
寻找无验证的redis服务:
容易遭受攻击的环境是用户自建的运行了 Redis 服务的 Linux 主机,并在公网上开放了 6379 的 Redis 端口。目前云服务供应商青云已经提供相应解决方案:
●以非 root 权限启动 Redis
●增加 Redis 密码验证
●禁止公网开放 Redis 端口, 例如可以在青云防火墙上禁用 6379 Redis 的端口
●检查 authorized_keys 是否非法
比较直接有效的修补加固建议是
从环境安全角度进行无需外网访问的可以绑定本地回环,同时需要对外的增加ACL进行网络访问控制。另外还可以借用stunnel等工具完成数据加密传输。
给redis设定密码、创建单独的nologin系统账号给redis服务使用、禁用特定命令等有效措施也可以亡羊补牢。
Redis CrackIT 入侵事件引发Linux 沦陷的更多相关文章
- redis crackit入侵事件总结
今天发现服务器有异常进程/opt/yam/yam,上网搜了搜,是由于redis未授权引起的入侵,查了些资料,这里做下总结. 1. 现象 有以下其一现象就要注意是否被入侵 crontab -l 可以看到 ...
- 我的 Redis 被入侵了
好吧,我也做了回标题党,像我这么细心的同学,怎么可能让服务器被入侵呢? 其实是这样的,昨天我和一个朋友聊天,他说他自己有一台云服务器运行了 Redis 数据库,有一天突然发现数据库里的数据全没了,只剩 ...
- Redis Crackit漏洞防护
Redis Crackit漏洞利用和防护 注意:本文只是阐述该漏洞的利用方式和如何预防.根据职业道德和<中华人民共和国计算机信息系统安全保护条例>,如果发现的别人的漏洞,千万不要轻易入侵, ...
- Redis Crackit漏洞利用和防护
注意:本文只是阐述该漏洞的利用方式和如何预防.根据职业道德和<中华人民共和国计算机信息系统安全保护条例>,如果发现的别人的漏洞,千万不要轻易入侵,这个是明确的违法的哦!!! 目前Redis ...
- (转)裸奔的后果!一次ssh被篡改的入侵事件
裸奔的后果!一次ssh被篡改的入侵事件 原文:http://blog.51cto.com/phenixikki/1546669 通常服务器安全问题在规模较小的公司常常被忽略,没有负责安全的专员,尤其是 ...
- Redis实现之事件
事件 Redis服务器是一个事件驱动程序,服务器需要处理以下两类事情: 文件事件(file event):Redis服务器通过套接字与客户端(或者其他Redis服务器)进行连接,而文件事件就是服务器对 ...
- Redis介绍以及安装(Linux)
Redis介绍以及安装(Linux) redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的 ...
- Linux Redis 重启数据丢失解决方案,Linux重启后Redis数据丢失解决方
Linux Redis 重启数据丢失解决方案,Linux重启后Redis数据丢失解决方案 >>>>>>>>>>>>>> ...
- Redis集群搭建方案(Linux)
Redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串). list(链表).set(集合)和zset(有序 ...
随机推荐
- GPU显存释放
一.当程序没有运行,但GPU仍被占用, 可通过nvidia-smi查看,被占用的pid是什么 或通过sudo fuser -v /dev/nvidia* #查找占用GPU资源的PID 然后采用kill ...
- 0009SpringBoot静态资源访问路径
访问静态资源: 静态资源需要放在哪些路径下才能被访问呢: 通过WebMvcAutoConfiguration.java中 addResourceHandlers()方法查找绑定的路径,一个是通过web ...
- ln -s /usr/local/jdk1.8.0_201/bin/java /bin/java
ln -s /usr/local/jdk1.8.0_201/bin/java /bin/java
- 一步一步学会preload和prefetch
preload和prefetch是什么? 我们常说的preload和prefetch,是link标签rel里新增的两种值,用于让浏览器提前加载指定的资源,它们会先被缓存(属于http cache缓存) ...
- 解决每次执行Java等命令时都要重新source /etc/profile后才能执行,否则找不到命令
linux mint 我们通常将环境变量设置在/etc/profile这个文件中,这个文件是全局的. /etc/profile:在登录时,操作系 统定制用户环境时使用的第一个文件 ,此文件为系统的每个 ...
- [ES2019] Represent Collision-free String Constants as Symbols in JavaScript
ES2019 introduces the Symbol.prototype.description property. In this lesson, we'll learn why this pr ...
- 请问如何上传带图片的word
Chrome+IE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧?Chrome高版本提供了可以将单张图片转换在BASE64字符串的功能.但是无法 ...
- https 非对称加密
- Codeforces Educational Codeforces Round 67
目录 Contest Info Solutions A. Stickers and Toys B. Letters Shop C. Vasya And Array D. Subarray Sortin ...
- redis系列(二):数据操作
1.string类型 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中 ...