CTF从入门到提升(九)文件上传以及相关例题分享

本文介绍了CTF中文件上传漏洞的基本概念,包括客户端JavaScript校验的绕过、服务器端content-type和后缀黑名单校验的破解方法。通过举例说明如何通过禁用JavaScript、抓包改包、利用Apache的.htaccess文件以及00截断技术来绕过上传限制,实现文件上传的突破。
摘要由CSDN通过智能技术生成

文件上传主要是配合一些漏洞的利用,普遍意义上的文件上传是指将信息从个人计算机传送至中央计算机,也就是我们所说的远程计算机,对站点来说,就是传到运行网站的服务器上。一般网站都有自己的逻辑,比如在网站的注册页面,你想要上传个头像,网站只需要你上传头像,而不是传其他类型的文件。

   CTF上传文件的目的是get shell,我们最终目的是拿到题目的flag,如果说存在一个上传的地方,很有可能它的目的就是通过上传的方式作为辅助或最终的方式去get shell。 上传文件会做一些防护来我们进行干扰,所以需要掌握常见的文件上传的安全检测方式。针对文件上传检测的方式如何做一个绕过?

客户端校验——JavaScript

首先来看一下最简单的客户端校验,文件上传是文件从本地到传输到远程服务器,中间经过了三个步骤,在你的客户端(自己电脑)本身做一个文件检测,或者文件传到后端服务器之后,在后端服务器上对文件做检测,简单的就是客户端校验JavaScript校验。文件是在网页做上传,所以javascript就会在你的浏览器上运行。这里有一些js代码及注释,方便大家对文件作出判断:

在这里插入图片描述

校验逻辑尽管很复杂,如果它的代码无法运行这个检测是不是就没有意义了可以直接绕过。

  • 禁用js

比如说我上传一个文件,执行后系统提示:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值