记录一次遗憾的渗透测试(已更新,不再遗憾 ~)
序言
这是这是一次实战,但是因为一些原因无法进行渗透测试getshell的最后一步,故在此贴中记录下来
声明:
此文章仅用于本人记录网络安全学习过程,文章内的所有操作均是在得到授权的情况下进行的
任何人利用参与违法违规操作,均与本人无关
本人呼吁,我国拥有一套完整的网络安全法,请不要利用缺陷进行违法违规操作
实战过程
进入页面
老大给了个提示跟我说,此次渗透是Spring boot shiro
的反序列化利用,与登录没有相关
既然跟登录没有相关的,那基本就是路径,传参,源码,报文有关了
那就先试试,Spring boot未授权访问
行吧,没东西
查看前端页面源码
发现一个参数传递
再看看报文
登录框登录的报文跟查看源码的参数传递是同一个,那估计就是这里有问题了
先尝试看看有没有目录穿越漏洞
有目录穿越漏洞
既然可以查看etc/passwd
文件,那么还可以查看其他敏感文件,比如/proc
的子目录
/proc
目录是linux的一个文件系统,此目录可以查看系统中执行过的命令,已启动的站点环境等敏感信息
ls -al /proc/
可以查看当前正在执行的进程的PID
cat /proc/28/cmdline
cmdline子目录是查看执行了当前进程的完整命令
cat是shell的命令,所以可以看到此进程是bash的进程
ls -al /proc/28/exe
exe子目录是指向当前进程的完整路径及符号链接
ls -al /proc/28/fd
fd子目录是记录当前进程的文件描述符,此描述符是实际文件的符号链接
cat /proc/28/environ
environ子目录是记录当前进程的环境变量
cat /proc/self
self子目录是用来表示当前进程的PID,相当于动态的PID,会随着进程的PID进行变化,不同的进程拥有不同的PID,所以不同的进程使用self
就是相当于当前使用的进程的PID
可以看到使用不同的进程查看,就是不同的PID
OK介绍完/proc
目录,现在的思路就是利用文件包含来找到内存文件!来找到shiro的key!!
文件包含漏洞会包含指定的文件
http://********:****/show/showfile?file=../../../../../../../../../../../proc/self/cmdline
这里加这么多
../
是为了保证能回到根目录里
直接下载了一个文件
记事本打开
有一个jar包,利用文件包含直接下载
解压,获得源码
然后在 BOOT-INF/classess/com/qax/wtf/config/JavaMelodyConfig.class
文件中找到这么个路径
进入此路径
进入一个监控页面,Spring boot未授权访问
查看内存直方图
生成临时内存文件,然后使用文件包含漏洞进行下载
使用VisualVM搜索 org.apache.shiro.web.mgt.CookieRememberMeManager
找到
使用python3代码去解码
得到key(key每次重启环境就会更新)
检测key成功
但是!命令执行一直返回这个东西!我的key还有构造链都是测试成功了的。。这是为什么?
想了一会儿是不是站点的问题,我去到站点一看,果然!
@#(@!&)(!#&$!&@(*&
我捏嘛嘛怎么就这么及时呢?怎么就这么巧呢??我刚准备拿到shell就给我来这么一出,是不是有内鬼(bushi?
开个玩笑,唉。。只能说运气不好吧(老霉B了)
使用漏洞
记录所使用的漏洞
文件包含
此漏洞未对传参参数进行限制,可以任意包含系统中所有文件
Spring boot 未授权访问
SpringBoot是Spring项目中的一个子工程,与我们所熟知的Spring-framework 同属于spring的产品,是用来简化 spring 初始搭建和开发过程使用特定的方式进行配置
此漏洞可以获取Spring boot
系统环境信息
apache Shrio反序列化
Apache Shiro 是一个强大灵活的开源安全框架,可以完全处理身份验证、授权、加密和会话管理。
Shiro为了让浏览器或服务器重启后用户不丢失登录状态,Shiro 支持将持久化信息序列化并加密后保存在 Cookie 的 rememberMe 字段中,下次读取时进行解密再反序列化。但是在 Shiro 1.2.4 版本之前内置了一个默认且固定的加密 Key,导致攻击者可以伪造任意的 rememberMe Cookie,进而触发反序列化漏洞。(此段摘至)
结语
结合这几天的遭遇
- 脚本遇到bug
- 吃辣条导致智齿发炎,半边脸都肿了
- 准备getshell站点刚好没了
寒寒冬日中近虽天日怜人,阳光暖照,但事与愿违,遇事冷心!不禁叹句:
当今霉B!布某人也~
更新~
下楼买完菜回来,太不甘心了,想着再试试
结果你猜怎么着,它开了!!!它活了!!!芜湖!赶紧再获取一次key
成功getshell!!!!!!!!!!!!!
给大佬递茶
虽然看不懂 但是大为震撼
这么牛逼,看完不知道说啥,好就完事了