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 不能截断
