一、简介
upload-labs是一个使用php语言编写的,专门收集渗透测试过程中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共19关,每一关都包含着不同上传方式。
二、安装 upload-labs
这里我使用的是docker进行搭建的
从公有仓库拉取下载upload-labs镜像:docker pull cuer/upload-labs
查看本地镜像仓库:dokcer images
运行镜像,将镜像内的80端口映射到本地的89端口上面:docker run -d -p89:80 cuer/upload-labs
搭建完成,浏览器访问your id:89
三、Pass-01 客户端检测绕过(js检测)
我们打开第一关可以看到一个上传点,这里允许我们上传图片
上传一张图片进行测试,发现上传成功
这时我们试试上传一句话木马是否能够成功,发现无法上传遭到拦截。
查看源码:发现js定义了一个白名单,并且只允许上传.jpg .png .gif格式的文件,而且它还对上传文件的后缀名与白名单进行对比校验。
我们要对js进行绕过:使用burpsuite抓包更改上传文件后缀就可以实现绕过。
上传的shell.php木马更改其后缀为.jpg的格式,浏览器进行js校验后将数据包发送给服务器。
将抓取的数据包发送到repeater模块,因为shell的后缀名是修改为了.jpg格式的,所以可以通过检测,我们只需将它改为php格式的,就可以将shell成功上传到服务器。
来源地址:https://blog.csdn.net/m0_52701599/article/details/129197034