ctfhub——技能树--文件上传

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


解题过程,工具:中国蚁剑,爆破工具


一、无验证

 1.上传一句话木马

 2.链接中国蚁剑

 

 

 

 

 

 

二、前端验证

1.会发现这个网站不让提交php,改后缀为jpg格式,再用burp抓包

 

 

2.在用中国蚁剑连接

三..htaccess

1.这里先了解一下什么是.htacces文件

.htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。

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

简单来说,就是我上传了一个.htaccess文件到服务器,那么服务器之后就会将特定格式的文件以php格式解析。

这里先写一个.htaaccess文件

方法一

SetHandler application/x-httpd-php //所有的文件当做php文件来解析

方法二

AddType application/x-httpd-php .png //.png文件当作php文件解析

这里使用方法二

这里修改名字为.htaccess。直接这个就好,不要加前缀。

 就是直接上传.htaccess,然后上传jpg文件,再用蚁剑连接,得到flag.

MIME绕过

1.先了解一下什么是MIME

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

2.开始解题,先上传一个小马,然后用bp抓包

3.这里直接修改Content-Type为image/jpeg

4.点击forward发现上传成功

5.使用蚁剑来找flag

00截断

1.这里先写两个小马,一个小马是jpg图片格式的,一个小马是php格式的。先上传jpg小马,进行抓包。

 

这里我的图片小马是222.jpg,PHP小马是111.php,将111.php写到post请求中并进行%00截断,然后进行forward

2.然后使用中国蚁剑来获得flag

双写后缀

1.这里直接上传一个php小马,进行抓包。

2.然后在文件名上写上pph,点击forward

3.然后用蚁剑来找flag

文件头检查

1.这里先用自己电脑自带的画图软件画一张画,直接上传抓包。上传后在抓的包里写入一句话木马。

这里修改后缀为php,然后在Content-type改为 image/png

2.用蚁剑连接

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!对于CTFHub文件上传问题,我可以给您一些基本的指导。 在CTFHub中,文件上传通常是一个常见的漏洞类型。攻击者可能会利用文件上传功能来上传恶意文件,从而执行远程代码或者获取系统权限。 为了防止文件上传漏洞,以下是一些防御措施: 1. 文件类型验证:在接收到上传文件之后,应该对文件类型进行验证。可以通过检查文件的扩展名或者文件的MIME类型来实现。确保只允许上传安全的文件类型,而拒绝上传可执行文件、脚本文件等危险文件类型。 2. 文件名验证:对于上传的文件名,应该进行严格的验证。确保文件名不包含特殊字符、路径遍历符号等,以防止攻击者利用文件名来绕过安全限制。 3. 文件内容验证:在接收到上传文件之后,应该对文件内容进行验证。可以使用防病毒软件或者对文件进行解析、分析来检查是否存在恶意代码。 4. 文件存储位置:上传的文件应该存储在一个安全的位置,并且不应该直接被网站访问。最好将上传的文件存储在非Web可访问的目录下,并通过后端逻辑来处理和访问这些文件。 5. 访问控制:对于上传文件的功能,应该限制只有授权用户才能使用。使用身份验证和授权机制,确保只有合法的用户可以上传文件。 这些是一些常见的防御措施,但是具体实施还需要根据具体的情况来定制。希望能对您有所帮助!如果您有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值