upload-labs实践

pass-01

一句话木马: <?php @eval($_POST['attack']);?>

方法一:修改后缀为jpg:

然后再用bp抓包,将文件改后缀为php,成功上传

点击鼠标右键复制图片链接,进入蚁剑右键进行复制URL,密码为一句话木马中的attack;(记得改jpg为php)

方法二:

关闭JavaScript

认识:javascriptenabled是一个布尔值,用于指示浏览器是否启用JavaScript。当javascriptenabled被设置为false时,浏览器将禁用所有
JavaScript代码,包括内嵌的和外部的脚本。这意味着网站上的所有交互和动态效果都将无法正常工作。
在一些情况下,禁用JavaScripti可能会增强浏览器的安全性,因为一些恶意代码和攻击者可能会利用JavaScript的漏洞来攻击用户。然而,
对于绝大多数网站和应用程序而言,启用JavaScript是必要的,因为它可以使网站更加交互式,提供更好的用户体验。

F12点右边设置:

打开禁用JavaScript,即可上传任何文件:

后续一样

pass-02

方法一:

shell.jpg文件上传,再抓包进行改后缀为php即可;和pass-01方法一 一样

方法二:

查看提示看到是在服务端对数据的MIME进行检查,MIME验证就是验证文件的类型。所以我们的思路就是用burp抓包然后修改文件的类型。

抓包后修改红框里的内容,Content-Type就是文件类型,允许上传的类型有三种:image/jpeg、image/png、image/gif,将红框里的内容改为其中一种就可以成功上传文件

改为:

后续和前面一样用蚁剑连接即可

pass-03

不允许上传asp,aspx,php,jsp文件

这时候我们就要想办法绕过,在网上查了一下,说黑名单规则不严谨,在某些特定环境中某些特殊后缀仍会被当作php文件解析 php、php2、php3、php4、php5、php6、php7、pht、phtm、phtml。我们这里用.php7试一下,直接上传一个名为1.php5的文件,可以发现直接上传成功

pass-04

这些后缀的都无法上传,这时候就要用到传说中的.htaccess文件上传了。
首先创建一个.htaccess文件(文件名就为.htaccess)内容如下

AddType application/x-httpd-php .png

意思就是如果文件里面有一个后缀为.png的文件,他就会被解析成.php。先上传一个shell.png文件,然后上传这个.htaccess,再访问shell.png,完美通关。

pass-05

查看源码,和第四关对比,发现这关没有转换大小写转化验证的代码

第四关源码:

第五关源码:

所以我们直接上传文件shell.Php,直接可以上传。

pass-06

对比第四关少了收尾去空:

那我们就利用这个,用bp抓包将文件后缀名加上一个空即可上传成功:

pass-07

对比第四关少了删除文件名末尾的点:

那么我们就可以用bp抓包将文件名后加一个点,即.php.

pass-08

对比第四关少了去掉字符串::¥DATA

那么我们就可以用bp抓包将文件名后加:¥DATA,即.php:¥DATA

pass-09

查看源码,和前几关相比,本关明显不能按前几关的思路来绕过,仔细看了一下代码,发现没有循环验证,也就是说转换大小写去除空格什么的它只验证一次,所以我的思路是想把后缀改为.phP :DATA.,即每个验证方式都进行一遍,即可绕过,直接开始实验。
上传一个shell.php抓包

pass-10

查看第十关源码,不难看出没有了前几关的验证方式,而且是一个黑名单验证,意思是如果上传了它这些后缀的文件,就会把后缀名删除,没了后缀名也就无法正常解析,不过不需要着急,这关同样只验证一次,所以我们只需要把后缀改为.pphphp,它删除掉中间的php后后缀仍然为php,话不多说直接实验。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值