实战之巧用组件报错特性
2023-11-9 17:7:6 Author: goddemon的小屋(查看原文) 阅读量:8 收藏

Part1 案例

遇到了2次还是3次了,忘了,这次拿近期的某省H攻防遇到的一个案例来分享

已具备条件,具有某系统的任意文件写入漏洞,但该漏洞需要结合绝对路径来打,但是未知相应的绝对路径。

(且再实战中遇到这类情况很多,很多时候打下了类似系统的站,审了一些洞,但却拆解不到相关绝对路径。) 

这种情况很多师傅遇到了都觉得挺难整的。

这里分享一种tips 

若系统安装通用固定路由写法为XXX/tomcat*/webapps/XXX等情况(即通用系统情况) 可以利用tomcat的安装路径特性 

即路径名称:apache-tomcat-版本结合上面的特性,我们只需要一个tomcat版本即可完整的获取到整个路径情况了 

如本站即是利用的不存在的目录爆出的tomcat的版本 如下成功获取到如下目录 /XXX/apache-tomcat-6.0.44/webapps/ 

进而转任意文件写入获取到shell

Part2 Tips再探

上面的漏洞核心需要两个点就是 

①得知大概安装的固定路径格式 

②得使tomcat报错,进而获取到tomcat的版本。

这里第一点不在阐述,这个拿个其余系统的shell,进可获取到大概的路由情况。

主要这里阐述第二点,很多系统直接访问不存在的目录不会报相关的错误 

大部分都是如下这种情况 

代码中配置了相关的404 500页面,即当出现了这种情况时,直接报错相关的404与500页面出来

但是有一种通解思路与一种巧解释,巧用协议头进行报错 

第一种通解思路为巧用协议方式或协议版本,让服务器报错,获取到相关版本第二种非通解为利用类型转换让服务器报错 

第二种的手法需要找到一个数字点为固定写为int或double类型的,然后我们控制强转为字符串进而实现报错。

该方式这里就不在阐述,建议大家下去自己建立demo测试。

Part3 后言

那如果是nginx,IIS等系统呢,可能不会存在该报错特性,但是会不会具备其他好玩的特性呢?

这里即留给大家自己去探讨。

最后,人们常说知行合一与悟道,可是修的到底是什么知?悟得到底又是什么道呢?


文章来源: http://mp.weixin.qq.com/s?__biz=MzI2NTc1ODY0Mw==&mid=2247485714&idx=1&sn=f1690784f6bd75c7d9bda955ed99a356&chksm=ea993bceddeeb2d875eae06a82172fee674c74b1a00832599a9e08bff3faf46a415171041a4b&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh