
CertiK:深度解析F5 BIG-IP远程代码执行漏洞
前言
今日一早,推特以及各大技术论坛上炸开了锅,安全圈子的人都在讨论F5设备里远程代码执行的漏洞。很多讨论的内容,大部分是在分享如何寻找目标,利用漏洞,并没有关于对漏洞成因的分析。CertiK的安全研究员下载了存在漏洞的程序,搭建环境复现漏洞后,对漏洞的起因进行了分析,并在下文分享给大家。
背景
F5 BIG-IP是美国 F5 公司的一款集成了网络流量管理、应用程序安全管理、负载均衡等功能的应用交付平台。Positive Technologies的研究人员Mikhail Klyuchnikov 发现其配置工具Traffic Management User Interface(TMUI)中存在远程代码执行漏洞,CVE编号为CVE-2020-5902。该漏洞CVSSv3评分为10分,攻击者可利用该漏洞创建或删除文件,关闭服务、执行任意的系统命令,最终获得服务器的完全控制权。CVE具体表述请查看文章底部参考链接1。
受影响的BIG-IP软件版本
【15.0.0-15.1.0.3】【14.1.0-14.1.2.5】【13.1.0-13.1.3.3】【12.1.0-12.1.5.1】【11.6.1-11.6.5.1】
漏洞利用
读取任意文件:
curl-k 'https://[F5 Host]/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd'
远程执行tmsh命令:
curl -k 'https://[F5 Host]/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin'
官方给出的临时修复方案(后文会对修复进行分析):
漏洞复现
在F5的官网注册账号之后,可以从F5的资源库中下载存在漏洞的BIG-IP软件。访问参考链接2可以下载BIG-IP TMOS(Traffic Management Operating System, 流量管理操作系统)的虚拟机镜像。CertiK技术团队因为使用Vmware Fusion, 下载的是“BIGIP-15.0.0-0.0.39.ALL_1SLOT-vmware.ova-Image fileset for VMware ESX/i Server”。
在Vmware Fusion中加载镜像(import):
加载完成之后,使用默认用户名密码登陆系统:
用户名: root
密码: default
系统初始化之后,使用”ifconfig”命令查询虚拟机IP地址。CertiK技术团队的BIG-IP TMUI虚拟机IP地址为”172.16.4.137”。
在浏览器中访问BIG-IP TMUI登陆界面:
https://172.16.4.137/tmui/login.jsp
复现任意文件读取:
在浏览器中访问以下地址可以读取”/etc/passwd”文件内容:
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
复现tmsh命令执行:
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin
漏洞分析
在进入漏洞分析前,先要明确一点:漏洞利用中的fileRead.jsp和tmshCmd.jsp文件在用户登陆后本身是可以被访问的。
下面的截图显示了登陆前和登陆后访问以下URL的区别:
https://172.16.4.137/tmui/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
登陆前访问:
被跳转回登陆界面
输入账号密码登陆管理界面之后再访问,可执行fileRead.jsp读取文件。
fileRead.jsp和tmshCmd.jsp虽然是在PoC中最终被利用的文件,但是他们并不是漏洞的起因。此漏洞的本质是利用Apache和后台Java(tomcat)对URL的解析方式不同来绕过登陆限制, 在未授权的情况下,访问后台JSP模块。CertiK技术人员第一次注意到此类型漏洞是在2018年Orange的BlackHat演讲: “Breaking Parser Logic Take Your Path Normalization Off and Pop 0Days Out”. 这里可以查看演讲稿件(参考链接2)。
这里我们可以理解在F5 BIG-IP的后台服务器对收到了URL请求进行了两次的解析,第一次是httpd(Apache), 第二次是后一层的Java(tomcat).
在URL在第一次被Apache解析时,Apache关注的是URL的前半段
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
当Apache在看见前半段是合法URL且是允许被访问的页面时,就把它交给了后面的第二层。Apache在这里完全把URL里面关键的 /..;/ 给无视了。
在URL在第二次被解析时,后面的Java(tomcat)会把/..;/理解为,向上返回一层路径。此时, /login.jsp/ 和 /..;/ 会抵消掉。Tomcat看到的真正请求从
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
变成了:
https://172.16.4.137/tmui/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
再来fileRead.jsp并没有对收到的请求进行身份验证,后台因此直接执行fileRead.jsp, 读取并返回了/etc/passwd文件的内容。
根据以上的思路,其实可以找出别的利用漏洞的URL, 比如:
https://172.16.4.137/tmui/tmui/login/legal.html/..;/..;/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
这里“https://172.16.4.137/tmui/tmui/login/legal.html”和之前的“login.jsp”一样,是一个不需要登陆就能访问的页面。但是因为要向上返回两次,需要用两个/..;/来抵消掉 ”/login/legal.html”。
回到开头提到的官方给出的临时修复方案, 修复方案的本质是在httpd的配置中添加以下规则:
include '
<LocationMatch ".*\.\.;.*">
Redirect 404 /
</LocationMatch>
'
这个规则的意思是,当http服务器在监测到URL中包含..;(句号句号分号)的时候,直接返回404. 这样利用漏洞的请求就没办法到达后台(第二层)了。
如何避免漏洞:
此漏洞的利用方式在网络上公开之后,因为它的攻击成本低廉,大批黑客都开始图谋利用此漏洞攻击使用F5 BIG-IP产品的系统。黑客只需要付出极小的代价就能获得目标系统的控制权,对系统产生巨大的破坏。
俗话说:“不怕贼偷,就怕贼惦记”。即便这样的黑客攻击事件这次没有发生在你身上,不代表你是安全的。因为很有可能黑客的下一个目标就是你。
而Certik的专业技术团队会帮你彻底打消这种“贼惦记”的担忧。CertiK专业渗透测试团队会通过对此类事件的监测,第一时间给客户提交漏洞预警报告,帮助客户了解漏洞细节以及防护措施。此举可以确保客户的系统不受攻击并且不会遭受财产损失。
同时作为一名安全技术人员,在新漏洞被发现的时,不仅需要知道漏洞是如何被黑客利用的,更要去探寻漏洞背后的原因,方可积累经验,更加有能力在复杂的系统中发现隐藏的漏洞。
CertiK以及其技术人员,将永远把安全当做信仰,与大家一同学习并一同成长。
参考链接
1.https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-5902
2.https://downloads.f5.com/esd/ecc.sv?sw=BIG-IP&pro=big-ip_v15.x&ver=15.0.0&container=Virtual-Edition
3.https://i.blackhat.com/us-18/Wed-August-8/us-18-Orange-Tsai-Breaking-Parser-Logic-Take-Your-Path-Normalization-Off-And-Pop-0days-Out-2.pdf
来源:CertiK中文社区
比推快讯
更多 >>- USDD 2 供应挖矿 Phase X 重磅上线
- 多点数智:拟潜在收购两家香港持牌法团 100%股权
- Akash Network 宣布弃用自研 Cosmos 链,启动迁移评估
- 00 后交易员 0xRay518 重仓开空 ETH,周亏损达 431 万美元
- 美国银行上调明年黄金价格预期至每盎司 5000 美元
- Solana 24 小时 DEX 交易量超越所有 L1 和 L2 链
- EUL 拉升触及 11.7 美元,24 小时涨超 30%
- ZeroBase 发布 ZBT 代币经济学:8%进行空投,总供应量 10 亿枚
- Grvt:TGE 目标时间为 2026 年 Q1,社区空投总份额提升至 22%
- 苹果 M5 芯片本周或将首次亮相,并同时发布三款新产品
- CoinShares:上周数字资产投资产品净流入 31.7 亿美元,年内流入达 487 亿美元创下记录
- Binance 第一期 Prime Sale Pre-TGE 已募集超 25.8 万枚 BNB,超募逾 134 倍
- 美股盘前加密概念股普涨,Bitmine 大涨 5.23%
- 数据:ETH 当前全网 8 小时平均资金费率为 0.0029%
- 香港立法会发布数字资产最新发展专题快讯,建议发展离岸人民币稳定币
- 美股盘前明星科技股普遍走高,AMD 涨超 4%
- 数据:Hyperliquid 平台鲸鱼当前持仓 55.89 亿美元,多空持仓比为 0.83
- 美股盘前中概股普涨,金山云涨超 6%
- Hyperliquid 将启动 HIP-3 升级,实现无需许可的永续合约市场创建
- 中国外交部:坚决反对美方称对华加征 100%关税
- Monad 明日开放空投领取门户,盘前价格现报 0.08276 美元
- 美股三大股指期货走高,纳斯达克 100 指数期货涨幅达 2%
- 易理华:短期无脑跟特朗普“炒币”可能是一个好策略
- BNB 市值升至约 1840 亿美元,位列全球资产市值排名第 109 位
- 新加坡高等法院批准加密交易平台 WazirX 重组计划
- Hyperliquid 合约市场趋向保守,部分山寨币量能增长费率为负
- 美国快餐品牌 Steak'n Shake 取消接受 ETH 支付的计划
- The Smarter Web Company 增持 100 枚 BTC,总持有量达到 2650 枚
- 迪拜启动金融业改革计划,将虚拟资产列为三大支柱之一
- 俄罗斯央行希望利用代币化解决方案,让外国买家能够购入该国公司股票
- Aster 项目方宣布将为第二阶段空投申领转移代币
- 消息人士:特朗普倾向赦免 CZ,白宫对此争论激烈
- 《富爸爸穷爸爸》作者:将继续购买比特币、以太坊等资产
- 多链交易基础设施 LAB 预告将于 14 日 TGE,曾获 500 万美元融资
- Four.meme 近 7 日平台收入达 1874 万美元,成为全网收入最高的发行平台
- 加密挖矿公司 NetBrands 将建立规模为 1 亿美元的数字资产财库
- Garrett Jin 首次回应传闻:与特朗普家族无关,换仓没有内幕;基金不属于自己,属于客户
- Ansem:近期被清算的用户或将抛售 HYPE 以回笼资金,HYPE 或面临卖压
- 澳大利亚 Monochrome 现货比特币 ETF 的 BTC 持仓升至 1078 枚
- 暴跌前做空获利的BTC OG 巨鲸向 Kraken 存入 100 枚比特币,或将出售
- 数据:GT 涨幅达 8.47%,现报 17.34 美元
- benmo.eth:USDe 脱锚事件杠杆交易为主战场,币安提现机制意外锁死套利路径
- WLFI 顾问 Ogle 爆仓损失 247 万美元后再度入场,20 倍杠杆做多 BTC
- CZ:曾于今年早些时候因设错闹钟错过与 Hyperliquid 联创 Jeff 会面
- 加密金融科技公司 Lemon 完成 2000 万美元 B 轮融资,F-Prime 和 ParaFi 领投
- 数据:当前加密恐慌贪婪指数为 37,处于恐慌状态
- CZ 疑似回应 Hyperliquid 联创:BSC 生态项目自掏腰包数亿美元保护用户
- OKX CEO Star:USDe 并非 1:1 锚定稳定币,本质是代币化对冲基金
- QLGN:已完成加密货币托管账户配置,本周启动 CXC10 首批战略资产购买
- 何一:欢迎来 BSC 做预测市场,YZi Labs 愿投
比推专栏
更多 >>观点
比推热门文章
- EUL 拉升触及 11.7 美元,24 小时涨超 30%
- ZeroBase 发布 ZBT 代币经济学:8%进行空投,总供应量 10 亿枚
- Grvt:TGE 目标时间为 2026 年 Q1,社区空投总份额提升至 22%
- 苹果 M5 芯片本周或将首次亮相,并同时发布三款新产品
- CoinShares:上周数字资产投资产品净流入 31.7 亿美元,年内流入达 487 亿美元创下记录
- Binance 第一期 Prime Sale Pre-TGE 已募集超 25.8 万枚 BNB,超募逾 134 倍
- 美股盘前加密概念股普涨,Bitmine 大涨 5.23%
- 数据:ETH 当前全网 8 小时平均资金费率为 0.0029%
- 香港立法会发布数字资产最新发展专题快讯,建议发展离岸人民币稳定币
- 美股盘前明星科技股普遍走高,AMD 涨超 4%