【文件操作】---文件包含漏洞全解---day31
【文件操作】---文件包含漏洞全解---day31
一、文件操作安全思维导图
二、文件包含各个脚本代码
1、ASP,PHP,JSP,ASPX等
<!-- #include file="1.asp" -->
<!-- #include file="top.aspx" -->
<c:import url="http://thief.one/1.jsp">
<jsp:include page="head.jsp"/>
<%@ include file="head.jsp"%>
<?php Include<(test.php')?>
2、原理
①源码:
②测试:
在同一目录下,防止一个1.txt的文件
浏览器中访问。
3、本地包含
①无限制
可以包含盘符中的任意文件
②有限制
把上面的测试代码注释掉
把最下面的两行取消注释。可以看到.html,
有限制的话那么就需要绕过,可以用上面的%00截断
但是%00截断所要求的条件比较苛刻。
在得知部署网站的操作系统之后
可以采用长度截断。
4、远程包含
我们可以在phpinfo中看一下是开启了远程包含。
可以在远程整一个后门代码。
如果遇到了有限制的,就采取上面的加%20 %23 或者? 来绕过。
三、各种伪协议流玩法
1、查看当前网站脚本语言是否支持某种协议
上面是php的一些协议的具体写法。
https://www.cnblogs.com/endust/p/11804767.html
2、php://filter参数
3、php://input
执行效果
4、file://
5、data://
6、CTF实战
大小写判断操作系统
然后通过读取index.php
或者执行命令,ls,查看文件。
四、ekucms演示
这个只能本地文件包含
思路是在日至文件中写入后门代码,然后再用菜刀连。
分类:
XiaoDiSec
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?