PHP 文件包含简单利用
Abstract: 文件包含简单应用
Table of Contents
文件目录
1 | action |
服务器部署环境
打开首页,收集信息。
直接包含
本地包含
点击 php include
,进入第一关,源码已显示出来。
程序未对输入参数 action
做任何处理,修改 action=../../../../../../Windows/system.ini
,观察页面变化。
可以看到已读取到 system.ini
。返回首页查看图片地址,
图片马和 news.php
在同一目录下。修改 action
的值,读取图片马。
用蚁剑连接,连接成功。
远程包含
注意:需设置 php.ini
文件中 allow_url_include=On
。
由源码可知,未对传入参数做任何处理所以可以使用远程包含。在自己搭建的服务器上存放一个图片马,修改 action
的值。
尝试用蚁剑连接,
限制路径
打开 php include 1
可以看出来,对包含的文件做了限制路径的操作。这时远程文件包含无法使用。修改 action
的值。
用蚁剑连接,
限制后缀
打开php include 2
,
本地包含
注意:需要把 magic_quote_gpc=Off
用 burpsuite
抓包,
点击 Forward
。
查看本地文件,
显示结果
远程包含
蚁剑连接
限制路径和限制后缀结合
限制路径后无法使用远程包含
打开 php include 3
使用 %00
截断,
显示 news.jpg
蚁剑连接
XP 系统文件路径长度截断
action2
可以截断
action3
不能截断