(一)文件上传漏洞
文件上传漏洞,发送在用户上传文件功能中,很多网址都对上传的文件格式进行限制,但是被攻击机者找到漏洞,把木马、病毒进行上传,然后控制服务器。对上传的文件格式不是不限制,而是限制了,攻击者还有办法用特别的方法绕过。
有个渗透测试大佬说:做我们这行的,思想要变态,行为要严谨。要用非同寻常的目光与思维去破解程序员设置的安全检测机制。
网站都是程序员开发出来,本次就以骗子的的角度,对程序员开发、设置的检测方法进行欺骗。
话不多说,今天就做一回骗子,欺骗欺骗哪些文件上传检测方法。知己知彼,做骗子也做个有格调的骗子,我们的先了解网站程序员都是怎么检测上传的文件格式的,再想办法骗骗。
以下面是常见一个文件上传检测方法,我们骗骗
(二)上传限制方法与欺骗方法
1、前端js
场景:这是用前端的js,实现上传检测。
使用js实现上传检测过程:
- 给上传文件的input元素绑定一个change事件
- 在change事件中获取到用户选择的文件
- 判断文件的类型、后缀、大小等属性,例如限制文件大小不能超过特定值,或者限制文件类型只能是某些特定类型(比如图片)
- 如果文件属性不符合要求,弹出提示框告知用户,同时清空input元素中所选文件
- 如果文件属性符合要求,上传文件或进行其他相关操作。
欺骗方法:
方法一:直接在浏览器禁用js
这是一个只能上传图片的一个靶场,我们按F12进入开发者模式,直接把绑定的方法删除(直接暴力删除,让你检测都没有,看你还这么检测),这样就直接绕过
效果如下:已经把文本文件上传成功。
2、方法二:burp 抓包,修改上传文件后缀
我们上传一个符合文件格式,在点击上传之后,使用burpsuite或者其他Http代理工具拦截并修改请求,将文件名后缀改回原来的格式如.txt(先用符合的png文件上传,骗骗前端的js,然后点击上传之后,我们在修改回来)
,然后再次发送请求。
结果也是上传成功的。
之所以用burp抓包,那是因为不同的环境和配置可能会导致上传文件的校验方式不同,因此一些简单的靶场可能允许你直接修改文件后缀名,而不需要使用Burp Suite等代理工具。但是,在一些实际环境中,上传文件的校验可能会比较严格,尤其是在Web应用程序中使用了一些防护措施(例如WAF),直接修改文件后缀名可能会被拦截或导致上传失败。此时,使用代理工具进行修改会更加稳妥
)