我们提供安全,免费的手游软件下载!
在ctf比赛中,常常会遇到一类类型的题目,围绕着include函数展开。
这类题目通常不提供文件上传点,因此传统的方法无法使用。裸文件包含是一种应对这类题目的解题手法。
对于docker环境下的日志文件包含的方法由于环境变化较大,因此不太适用。
相较于日志文件包含,我们可以考虑使用pear包管理系统来实现文件包含和命令执行。
PEAR(PHP Extension and Application Repository)是一个用于安装和管理PHP扩展和库的包管理系统,经常使用pear命令来进行各种操作。不过在Docker任意版本镜像中,pcel/pear都会被默认安装,安装的路径在/usr/local/lib/php。
了解pearcmd.php,默认路径是/usr/local/lib/php/pearcmd.php。 调用的readPHPArgv()方法来获取参数。
泄露url编码产生的尖括号。可以使用burp抓包并手动修改回原始字符。
构造的请求里的尖括号被url编码。我们可以使用burp抓包,然后直接修改回原来的符号。
实现利用pearcmd.php文件的文件包含特性生成包含一句话木马的配置文件,通过这种方式来实现远程控制。
文件包含pearcmd.php并传入参数列表实现命令执行,最终实现漏洞利用。
通过包含文件生成的一句话木马文件,我们可以实现远程命令执行。整个过程的主要步骤为:文件包含pearcmd.php,get请求传入参数列表(如config-create模式、一句话木马和生成文件的位置),并通过文件包含生成的一句话木马文件实现命令执行。
热门资讯