文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

CTFHub-Web-文件上传

2023-09-05 11:28

关注

目录

知识点

一、无验证

二、前端验证

三、.htaccess

1、题目简介

2、解题思路

3、解题:上传htaccess文件==》上传符合我们重新后规则的文件==》蚁剑连接

四、MIME绕过

1、知识点

2、解题思路

 五、文件头检查

六、00截断

1、知识点:PHP 5.2 00截断上传的原理

2、题目简介

3、解题步骤

七、双写后缀

1、题目简介

2、解题步骤


知识点

文件上传漏洞的前提条件:

(1)、可以成功上传木马;

(2)、上传成功的木马能够解析;

(3)、我们知道上传之后文件的路径;

当php文件被过滤,可以尝试图片马;

文件上传的防御:

(1)、上传后的文件重新命名;

(2)、不进行解析;

(2)、重新生成文件。

一、无验证

这里对文件没有限制,所以我们直接上传一句话木马

上传成功后给出相对路径,所以直接拿出蚁剑或者菜刀进行连接

连接成功后,查看目录,获取flag

 

拿下flag: ctfhub{5a9ca5dff20570539153fad1}

二、前端验证

绕过方法:改后缀找漏网,burp抓包改后缀。

题目简介

查看源代码

白名单验证,只验证文件后缀,且只能上传.jpg、.png、.gif

burp抓包,由于是前端认证,所以我们将木马后缀改为.jpg,burp抓包放过时改为.php

(1)、将一句话木马后缀改为png

(2)、点击上传,burp改后缀

后缀改为php且上传成功获取到路径。

 3、蚁剑测试连接

获取flag

 

flag:ctfhub{c8233e314667d80cf9c1f230} 

三、.htaccess

1、题目简介

htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能;

2、解题思路

根据题目以及题目源码过滤了php,因此这道题解题思路如下:

上传一个.htaccess文件,替换掉本地服务器上的源文件,重写规则,是我们能够上传脚本。

(1)、上传一个.htaccess文件,让文件名中含有数字‘6’的文件当作php文件解析;

#.htaccess文件内容  SetHandler application/x-httpd-php

(2)、上传一个.htaccess文件,让文件名后缀为.png的文件当作php文件解析;

.htaccess文件内容AddType application/x-httpd-php png

3、解题:上传htaccess文件==》上传符合我们重新后规则的文件==》蚁剑连接

(1)、上传htaccess文件

(2)、上传文件名中含有‘6’的木马

 

(3)、蚁剑连接 

 (4)、获取flag

flag:ctfhub{a061b1c7d9adc5af113c630d}

四、MIME绕过

1、知识点

MIME:

它全名叫多用途互联网邮件扩展(Multipurpose Internet Mail Extensions),用来标注网络数据的格式。MIME的常见形式是一个主类型加一个子类型,用斜线分隔。比如text/html、application/javascript、image/png等。在访问网页时,MIME type帮助浏览器识别一个HTTP请求返回的是什么内容的数据,应该如何打开、如何显示。

2、解题思路

上传一句话木马==》burp抓包==》更改Content-Type类型为:image/png==>放包

(1)、上传木马,该MIME类型为:image/png

(2)、一句话木马上传成功 

 

(3)、蚁剑连接

 

(4)、获取flag

 

flag:ctfhub{01fb19ac79a30497d8b8d53f} 

 五、文件头检查

题目简介

设置了白名单,只允许图片中列举出来的文件上传。

上传php,burp抓包改成白名单允许的文件,进行绕过

 

 改后显示文件错误,结合题目,说明他检验文件头部。

上传一个正常图片,burp抓包,文件名改为:1.php;在图片内容后面写上一句话木马。

 一句话木马:

 4、蚁剑连接时,文件路径最后的文件名是我们更改后的后缀为php的文件

获取flag

 

flag:ctfhub{3bc1bfb2b65cd9d0e19a5c68}

六、00截断

1、知识点:PHP 5.2 00截断上传的原理

php 00截断前提:

php版本要小于5.3.4,5.3.4及以上已经修复该问题

magic_quotes_gpc需要为OFF状态

原理

%00表示截断,

例如:

?filename=123.txt                输出的是123.txt文件

加上%00后

?filename=123.php%00.txt        后缀为.txt,但是输出的是.php,因为00截断了后面

2、题目简介

 

前端会验证,只能上传图片中列出的类型

3、解题步骤

上传一句话木马php==》 burp抓包加上%00进行截断==》蚁剑连接获取flag

(1)、上传抓包改包:yjh.php%00;.png

 

  

(2)、蚁剑连接

文件路径为:/upload/yjh.php

 

 (3)、获取flag

 flag:ctfhub{38a79af8fb63f33caf4e4390}

七、双写后缀

1、题目简介

将文件名后缀含有的这些全部替换为空。

 

2、解题步骤

进行后缀的复写,如:123.phphpp,代码将后缀里的php替换后,前面的ph和后面的p又重新组成php后缀;

(1)、提交改包

 

(2)、木马php文件上传成功

 

(3)、蚁剑连接

(4)、获取flag

flag :ctfhub{21d38ee8c77b731a74eeb554}


有问题的地方大家指正!!!

来源地址:https://blog.csdn.net/qq_54037445/article/details/128093423

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯