JS前端绕过

JS前端绕过

文章仅供学习。切勿用于其他用途。

web应用对用户上传的文件进行了校验,该校验是通过前端JavaScript代码完成。恶意用户对前端JavaScript进行修改或通过抓包软件篡改上传文件的格式,就能绕过基于JS的前端校验。

环境准备

首先打开一个上传环境(靶场是upload-labs)进行实验。
然后写一个PHP的一句话木马备用https://blog.csdn.net/qq_46023525/article/details/125471341?spm=1001.2014.3001.5501

判断校验方式

先上传一个正常的图片。
JS前端绕过_第1张图片
可以看到已经上传成功了
现在上传一个文件试试

JS前端绕过_第2张图片
弹出了一个提示,提示只能上传图片。
接下来打开burp suite 抓包测试,首先开启抓包监听,再次上传文件,如果上传文件时还没有抓到数据包,但是浏览器提示文件类型不正确,那么可以判断这是一个JS前端校验。

JS前端绕过_第3张图片

前端修改

在上传页按F12打开浏览器控制台,找到οnsubmit=“return checkFile()”
JS前端绕过_第4张图片
然后将""中的return checkFile()删除,再次点击上传。
JS前端绕过_第5张图片
文件上传成功。
JS前端绕过_第6张图片
然后按F12打开浏览器控制台定位目标的html代码,查看上传之后的路径。
JS前端绕过_第7张图片
可以看到上传的路径为./upload/k.php
然后使用中国蚁剑连接。

JS前端绕过_第8张图片

抓包篡改

由于该校验本身只是纯粹的对后缀名进行判断,就可以把写有一句话木马的PHP文件修改为jpg后缀格式的文件,然后在打开burp suite进行抓包监听,上传刚改好jpg后缀文件的一句话木马。
JS前端绕过_第9张图片
在这里插入图片描述
JS前端绕过_第10张图片
然后将抓取到的k.jpg的后缀jpg改为php然后点击提交。
JS前端绕过_第11张图片
然后按F12打开浏览器控制台定位目标的html代码,查看上传之后的路径。
JS前端绕过_第12张图片
可以看到上传的路径为./upload/k.php
然后使用中国蚁剑连接。

JS前端绕过_第13张图片

你可能感兴趣的:(渗透测试-文件上传漏洞,前端,javascript,安全)