实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

admin 2022年10月4日23:58:52评论61 views字数 2442阅读8分8秒阅读模式

获黑客教程

免费&进群

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)
实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)
hh作者:
作者:Azjj98转自作者博客地址:https://blog.csdn.net/weixin_44578334/article/details/125382941

这是朋友的一个渗透测试的项目,有个上传的黑名单,我就试了一下,本文章是一边测试一边记录的,对于一些知识点总结的不全,只是提供了一个渗透中碰到上传的思路,文章无排版,是笔记的形式做记录。

一丶测试上传正常文件

这里可以判定文件名虽然是重命名,但是可控的,因为我们上传的文件名被带进去了(*****_1.txt)这里利用的思路主要:

1.目录没有执行权限(通过控制文件名进行../../跳目录,跳到可以执行脚本语言的目录)

2.上传文件找不到路径(通过控制文件名进行../../跳目录,层级跳到根目录进行访问)

3.上传白名单截断 (有些文件上传处是白名单,后缀名不可以绕,可以利用控制文件名截断的方式去绕过白名单,例如1.jsp%00.jpg)

4.截断文件前置名(这里后面会详细讲)

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)


二丶测试上传非正常文件

这里主要观察是不是黑名单,或者说是没有限制名单,下图可以看到,上传tx格式是可以正常上传的,但是上传jsp文件就上传不成功。

如果上传tx可以上传,但是jsp不可以,可以判断为上传黑名单,这里可以尝试绕黑名单的一下后缀格式,常见的绕黑名单的后缀格式有:

aspx&asp:ashx、asa、asmx、cer

php:php3、phtml

jsp:jspx、jspf

这里简单列举几个,具体详细的我之前发的文章有,这里补充一个小知识点,假如站点为php的站点,但是只限制了php的后缀格式,我们这里可以利用别的脚本语言都测试一下,因为可能这个服务器可以运行多种语言,虽然概率比较低,但是没有好的绕过办法的时候可以试一下,万一成功了呢,我在项目中就碰到过这种情况

上传tx后缀,上传成功:

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

上传jsp 上传失败:

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

三、绕过测试

这里主要讲一下常见的一些绕上传的方法,这个是朋友给的站,我也不知道能不能绕过去,我也是一边绕一边记录着,是我绕上传的一个基本的思路,给大家学习一下

上面测试了,上传黑名单,我们就先测试一下绕上传后缀

1.jspx绕过,失败,测试了别的php什么的都不可以,限制的比较全,html都不可以。

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

2.截断绕过


这里可以尝试 :,;、%00、’、^ 等都可以,这几种方法在windows服务器上成功率是比较高的,因为windows在创建文件的时候这些特殊字符是不允许出现的


实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

最后测试利用 “:”截断成功了,但是很遗憾,虽然传上去了,也可以访问到,但是内容没有写进去,这就是利用:截断的一个弊端,只有文件,没有内容

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

3.利用跳目录

因为文件名可以控制,我们就可以利用../跳目录的方式去截断代码本身给添加的前置名,就此系统为例,我们上传1.txt,代码会自动给我们添加2022_06_20_1.txt,这里的利用思路就是上传配合解析的配置文件,例如上传.htaccess配合解析,当然这里实战应用的场景还有很多,只是提供一个思路

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

我们这里也是成功截断前置名,并且跳到上层目录了,但是在此服务器这种方法并不是很好用,因为是java的站,利用此方式暂时没有好的getshell的方法,这里只是提供一下思路


四丶其他上传点继续测试

饶了半天始终是绕不过去,也不想绕了,但是文章都写到这里了,不能白白写啊,又问朋友要了个账号,测试一下后台有没有别的上传

功夫不负有心人,文章得以继续了

确实发现了另一个上传点

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

这个上传点比较有意思,后缀可以用大小写直接绕过

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

这不直接get了吗?

然而并不是,访问文件目录404?

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

通过查看附件的功能发现,查看附件处是用base64加密的一个绝对物理路径

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

这里就直接运用我们之前的跳目录,通过报错找到网站的真实路径(也有其他方法查找真实路径,我这里是用的报错),直接上传

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

 

但是不妙呀!1.jsP访问直接下载呀!JSPX也是 

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

这里就体现出我们之前跳目录加截断文件前置名的作用了

之前我们第一个上传点 ,可以利用:截断,上传jsp,但是文件内容传不上去,然后利用第二个上传点再上传一次同样文件名的文件 (1.jsp|1.jsP) 

因为windows不区分大小写,所以就导致我们后面上传的1.jsP直接就把内容覆盖到1.jsp上面去了

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

最终获得大马一枚

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)


 五、总结

其实对于黑名单的绕过方式很多,之前发过一个上传绕过的文章文件上传漏洞总结(绕过方法)_:https://blog.csdn.net/weixin_44578334/article/details/105842233_绕过上传漏洞有哪些方法并阐述其使用方法

 具体可以看上面这个文章,但是现在在实战环境中,上传点的限制已经不只是;代码层了,流量层的waf也是很恶心人,之前也写过文章Bypass WAF实战总结:https://blog.csdn.net/weixin_44578334/article/details/112393475?spm=1001.2014.3001.5501

后面的话找机会把上传的绕过跟bypassWaf都好好总结一下,之前写的文章都不是很全。

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

@

学习更多渗透技能!体验靶场实战练习

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

hack视频资料及工具

实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

(部分展示)

往期推荐

给第一次做渗透项目的新手总结的一些感悟

「登陆页面」常见的几种渗透思路与总结!

突破口!入职安服后的经验之谈

红队渗透下的入口权限快速获取

攻防演练|红队手段之将蓝队逼到关站!

CNVD 之5000w通用产品的收集(fofa)

自动化挖掘cnvd证书脚本

Xray捡洞中的高频漏洞

实战|通过供应链一举拿下目标后台权限

实战|一次真实的域渗透拿下域控(内网渗透)

看到这里了,点个“赞”、“再看”

原文始发于微信公众号(白帽子左一):实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月4日23:58:52
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   实战|文件上传绕过的一次思路总结学习(两个上传点组合Getshell)http://cn-sec.com/archives/1332271.html

发表评论

匿名网友 填写信息