上传靶机实战之upload-labs解题

我们知道对靶机的渗透可以提高自己对知识的掌握能力,这篇文章就对上传靶机upload-labs做一个全面的思路分析,一共21个关卡。让我们开始吧,之前也写过关于上传的专题,分别为浅谈文件上传漏洞(客户端JS检测绕过)
浅谈文件上传漏洞(其他方式绕过总结)

靶机环境搭建

Upload-Labs 环境要求
操作系统:windows、Linux
php版本:推荐5.2.17(其它版本可能会导致部分Pass无法突破)
php组件:php_gd2,php_exif(部分Pass需要开启这两个扩展)
apache:以moudel方式连接
项目地址:https://github.com/c0ny1/upload-labs
直接使用phpstudy搭建,将下载的文件放在对应的根目录即可。访问如下:

上传靶机实战之upload-labs解题

解题思路 pass-01

首先看第一关,查看提示和源码,发现是前端JS验证,而我们知道,前端验证,有和没有基本一样。

上传靶机实战之upload-labs解题


绕过也非常简单,可以浏览器直接禁用JS,先按F12,然后按F1,找到禁用JS,如下图:

上传靶机实战之upload-labs解题


然后直接上传php木马。结果如下:

上传靶机实战之upload-labs解题


这是一种方法,当然也可以直接burp抓包,修改后缀直接上传。

pass-02

看第二关,首先分析源码

上传靶机实战之upload-labs解题


分析代码,发现只是检查了content-type类型,这个也是很好绕过的,直接抓取数据包,修改类型就可以了。抓的数据包如下:

上传靶机实战之upload-labs解题


将类型改为image/jpeg,直接上传PHP木马,结果如下

上传靶机实战之upload-labs解题


木马上传成功。

上传靶机实战之upload-labs解题

pass-03

看第三关,分析源码

上传靶机实战之upload-labs解题


发现第三关是基于黑名单防护,不允许上传'.asp','.aspx','.php','.jsp'后缀的文件,这个黑名单是不全的,比如可以尝试上传.phtml .phps .php5 .pht的后缀文件,也是可以当做php脚本解析的,如果Web服务器是apache的话,也可以上传.htaccess文件,来绕过黑名单。首先尝试上传.phtml,发现上传成功,再响应包中找到上传路径。这里要注意一下,要在apache的httpd.conf中有如下配置代码
AddType application/x-httpd-php .php .phtml .phps .php5 .pht

上传靶机实战之upload-labs解题

pass-04

看第四关,分析源码

上传靶机实战之upload-labs解题


发现这里黑名单基本过滤了后缀,但是,没有.htaccess,可以上传.htaccess文件,来达到解析脚本的目的。也可以用另外的一种方法,看代码6到10行,这里是对文件后缀的一些处理,包括删除结尾的点,删除空格,全都转换成小写等,然而这么处理肯定有想不到的地方,比如构造后缀.php. .中间是一个空格(后面的第八关和第十关是同样的思路),即达到了绕过黑名单,又经过检查使得脚本木马可以解析。如下图:

上传靶机实战之upload-labs解题


访问脚本木马,成功解析

上传靶机实战之upload-labs解题

pass-05

第五关和第四关一样,只是黑名单里添加了.htaccess,所以只能使用构造后缀的方式了,四关的方法五官通用,所以这里就不详细赘述了。

pass-06

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zydxgj.html