Portswigger 是burpsuite的官方网站在线训练平台,本章将为你解答File upload这块的通过策略。
靶场地址:https://portswigger.net/web-security/file-upload
第一关 上传一个webshell
本实验室包含易受攻击的图片上传功能。在将用户上传的文件存储在服务器的文件系统之前,它不会对它们执行任何验证。
为了解决这个实验,上传一个基本的 PHP web shell 并使用它来泄露/home/carlos/secret
文件的内容。使用实验室横幅中提供的按钮提交此密钥。
您可以使用以下凭据登录到您自己的帐户:wiener:peter
思路
上传一个图片,将后缀名jpg
改为php
修改图片的内容为
代码语言:javascript复制<?php
echo file_get_contents('/home/carlos/secret');
?>
https://blog.bbskali.cn/usr/uploads/2022/07/2646978294.mp4
第二关 通过绕过Content-Type上传文件
描述
本实验室包含易受攻击的图片上传功能。它试图阻止用户上传意外的文件类型,但依靠检查用户可控输入来验证这一点。
为了解决这个实验,上传一个基本的 PHP web shell 并使用它来读取/home/carlos/secret
文件的内容。使用实验室横幅中提供的按钮提交此密钥。
您可以使用以下凭据登录到您自己的帐户:wiener:peter
思路
上传一个php文件,修改Content-Type属性为image/jpeg
即可。
https://blog.bbskali.cn/usr/uploads/2022/07/455782548.mp4
第三关 遍历上传
描述
本实验室包含易受攻击的图片上传功能。服务器被配置为阻止执行用户提供的文件,但可以通过利用遍历上传漏洞绕过此限制。
思路
上传php文件,修改php上传的目录位置即可。
https://blog.bbskali.cn/usr/uploads/2022/07/2251095316.mp4
第四个 .htaccess解析漏洞
思路
上传一个.htaccess
文件,添加内容如下
AddType application/x-httpd-php .l33t
这时候服务器会把.l33t
这会将任意扩展名 ( .l33t) 映射到可执行 MIME 类型为application/x-httpd-php
的php文件。
https://blog.bbskali.cn/usr/uploads/2022/07/1456646102.mp4
版权属于:逍遥子大表哥
本文链接:https://cloud.tencent.com/developer/article/2109642
按照知识共享署名-非商业性使用 4.0 国际协议进行许可,转载引用文章应遵循相同协议。