BUU 文件包含漏洞-[ACTF2020 新生赛]Include

本文介绍了如何利用文件包含漏洞解题,重点讲解了php://filter和php://input两种方法。通过base64编码避免PHP语法识别,并通过POST方式上传代码。在解题过程中,注意大小写绕过和关键字过滤。同时,文章提到了stristr()函数在过滤中的应用,强调了在文件包含题中的解题思路和策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、题目

 

 

 

 

这里看两个页面的源代码都没有线索

回到题目Include

加之url里有 /?file=flag.php

容易想到文件包含漏洞

二、解题

1.  php:// 用来访问输入输出流,有两个常用的子协议

(1)php://filter 用来过滤筛选文件

php语法文件被include成功时,可直接执行命令,而非php语法文件被include失败时,会直接输出源码内容

 因此我们可以先通过base64编码的方法传入include()函数,这样在不会被识别为php语法文件的情况下可以输出内容

(2) php://input

将要执行的php代码·直接用POST方式上传

一般用BP抓包配合操作

url中构造/?file=php://input 

在Repeater里面空一行写php代码就可以运行

2.  这里用 hackbar 操作

load url,在Using wrappers里面找php://filter那一串

构造payload 

/?file=php://filter/read=convert base64-encode/source=flag.php

因为我们在payload里面base64编码过一次,所以把这一串解码后得到flag

三、总结

 1. 文件包含题里面,如果直接构造url关键字容易被过滤,如这道题根页面源代码里面用了stristr()函数检测

 这时可以考虑大小写绕过或者其他方法

2. 题目一般都和考点有关,多联想联想

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值