ctfhub技能树—文件上传(全)

10 篇文章 0 订阅

无验证

直接上传一句话木马,之后蚁剑连接即可。记得要加相对地址去连接。在www文件夹下可以找到flag

前端验证

前端验证即在上传时客户端的JavaScript会对文件类型做出限制,这就导致我们无法直接将php类型的一句话木马上传到服务器中,我们有两种方法去绕过
1、关闭JavaScript
在火狐浏览器中关闭JavaScript即可上传成功
2、修改文件后缀,之后抓包再改回php
因为是前端认证,所以在包中修改不会被判断类型
1、把一句话木马的类型改为jpg格式,之后bp抓包再filename中改为php格式
在这里插入图片描述
2、forward后 可以看到上传成功
在这里插入图片描述
3、蚁剑连接
在这里插入图片描述
4、在www下找到flag
在这里插入图片描述

.htaccess

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

在这里的作用是让别的文件以php的方式运行,这个题中f12可以看到代码过滤了很多的文件后缀名,所以我们的思路是以jpg的格式上传,之后上传htaccess文件,就可以让jpg的文件以php的方式运行

不同于前端认证,这是服务器代码的过滤,无法抓包修改后缀名达到效果
1、上传jpg格式的一句话木马
2、上传.htaccess文件
3、蚁剑连接
在这里插入图片描述
4、可以看到我们分别上传的两个文件
在这里插入图片描述
5、在www下找到flag
在这里插入图片描述

mime绕过

1、什么是mime

MIME类型校验就是我们在上传文件到服务端的时候,服务端会对客户端也就是我们上传的文件的Content-Type类型进行检测,如果是白名单所允许的,则可以正常上传,否则上传失败。

其实就是在请求包中的content-type,这道题我们只需要在包中改变content-type的类型就可以了
2、具体过程
1、抓包 将content-type改为image/jpeg
在这里插入图片描述
2、上传成功
在这里插入图片描述
3、蚁剑连接
在这里插入图片描述
4、在www中找到flag
在这里插入图片描述

00截断

00截断我的理解是通过%00这一能够达到注释的效果,来使的我们能够得知上传路径,进而得到shell

直接上传会发现php格式被过滤
1、抓包,修改filename与上传路径(有两处 都需要改!!)
在这里插入图片描述
2、上传成功
在这里插入图片描述
3、蚁剑连接
注意这里的地址
在这里插入图片描述
4、可以看到这里的%00后的内容已经被忽略
在这里插入图片描述
还是再www中可以找到flag

双写绕过

双写绕过的产生是由于后端在判断是否包含关键字时只删除了一次,所以我们将关键字(这里是php写两次即可)

1、直接上传一句话木马会发现后缀php被删除在这里插入图片描述
2、用bp抓包,将名字改为pphphp,再进行上传
在这里插入图片描述

3、此时可以发现,正常的php文件已经上传成功
在这里插入图片描述

接下来用蚁剑连接就可以啦,同样的,在www中找到flag

头文件检查

头文件检查不仅需要绕过mime,还会检查上传文件的文件头是否符合要求,因此我们需要在一张图片的结尾添加一句话木马

使用010editor
在这里插入图片描述
之后上传文件,抓包,修改content-type为image/png
在这里插入图片描述
上传成功,蚁剑连接,在www中找到flag

完结
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值