APP下载

台资安研究员在HITCON全球首度公开,如何利用MDM装置漏洞再度骇入脸书

消息来源:baojiabao.com 作者: 发布时间:2026-09-08

报价宝综合消息台资安研究员在HITCON全球首度公开,如何利用MDM装置漏洞再度骇入脸书

台湾戴夫寇尔首席资安研究员Orange Tsai于HITCON 2020全球首度对外公开,他如何挖掘知名MDM软件MobileIron的软件漏洞,并且利用这个漏洞再度入侵脸书的过程。

图片来源: 

黄彦棻摄

武汉肺炎期间,许多企业纷纷展开在家上班(WFH)的工作模式,除了透过VPN(私有虚拟网络)连上企业内部的系统外,更普遍遇到的状况则是,许多公司员工因为没有配备足够的笔记型电脑,要求员工自带装置(BYOD),利用自家电脑或手机连网办公。

有许多企业为了控管员工的装置,便采用MDM(行动装置管理)软件控管员工手机的镜头、麦克风、笔记型电脑等装置,部署相关应用程序App,也可以安装凭证,甚至可以在手机遗失时,远端将行动装置上锁或是移除手机装置中的软件和资讯。企业透过导入这类MDM软件,都可以避免当员工使用自家装置连网到公司内部系统时,不会造成资料或隐私外泄的情况发生。

台湾戴夫寇尔首席资安研究员Orange Tsai则在台湾骇客年会HITCON 2020中,全球首度对外公开,他分享如何挖掘MobileIron这套财星五百大企业都有采用的MDM软件的漏洞,于今年六月回报这个漏洞给MobileIron,在该公司释出修补软件后15天,再利用该漏洞取得脸书服务器权限,并回报给脸书的漏洞奖励计划(Bug Bounty Program)。

选定MobileIron研究,因脸书和财星五百大企业都导入

几年前,BYOD议题正热,也让许多企业开始导入MDM管理软件,希望透过管控员工手机装置的功能,提高员工从外部连网到企业内部的安全性。

Orange Tsai指出,这类MDM软件的特性就是:可以管控员工行动装置且一定都在企业外部网络,而这种可以从外网进入企业内网的管道,对于要进行企业红队演练而作企业资产盘点的资安研究人员而言,就是一个有机会进入企业内网的入口。

目前市面上常见的MDM软件包括VMware AirWatch以及MobileIron等,Orange Tsai表示,选定MobileIron作为研究标的,是因为根据他们对全世界的扫描,至少有15%以上的财星前500大企业使用MobileIron作为管理BYOD的MDM软件,而这些MDM软件同时暴露在外网(实际上一定更多);这同时是台湾企业使用比例最高的MDM管理软件;更重要的是,他在2016年骇入脸书时,当时就发现脸书采用MobileIron的MDM解决方案,因此,Orange Tsai便锁定MobileIron作为研究标的。

解析MobileIron软件架构,找到可利用的Hessian反序列化漏洞

这几年有一些资安专家开始针对MDM资安议题做相关研究,不管是骇客利用恶意MDM感染企业75%的行动装置,或者是有骇客组织利用MDM作为发动攻击的管道,都让MDM安全议题逐渐受到重视。

Orange Tsai表示,选定MobileIron作为研究标的,第一时间就必须要设法取得相关的固件等相关资讯,只不过,各种关键字搜集,只找到一个在公开网站根目录上,发现疑似是2018年开发者测试用的 RPM包,这也是作为研究的第一步。

从这个RPM包可以观察到MobileIron的一些特色,他表示,MobileIron用Java开发,对外开放的连接埠则有作为使用者装置注册界面的443埠;作为设备管理界面的8443埠,以及作为和MobileIron私有装置同步的9997通讯协定埠(MI Protocol)。

他说,这三个连接埠都透过TLS(传输层安全性)保护连线的安全性及完整性,网页部分则是采用比较新的架构,透过Apache的Reverse Proxy(反向代理)将连线导至后方,由Tomcat 服务器部署的Spring MVC框架开发的网页应用。

“采用比较新的架构,意味着传统SQL Injection的漏洞比较少,要找漏洞就得从程式逻辑搭配架构面的弱点下手。”Orange Tsai发现问题出在提供Web Service的Tomcat服务器,存在Hessian反序列化漏洞。不过,他也说:“有漏洞不代表可以利用,反序列化不代表可以远端执行(RCE),”可以触发MobileIron的Hessian反序列化漏洞,分别存放在8443埠管理界面和443埠使用者界面的路径中,但一般企业使用的管理界面通常不会放在外网,导致这个路径的漏洞利用率低,但如果可以找到443埠使用者界面的Hessian反序列化漏洞,就会是很好的切入点。

新版Java无法使用JNDI注入攻击

根据研究,有四种已经存在的Hessian反序列化漏洞利用方式,是否可以成功利用,主要还是看当前的执行环境有哪一些函式库(Library)可以利用,包括:可以造成JNDI注入攻击的Apache XBean、Caucho Resin、Spring AOP,以及会导致远端程式码执行RCE的ROME EqualsBean/ToStringBean。

Orange Tsai表示,因为MobileIron使用Spring框架,上述四种反序列化漏洞利用方式,只有Spring AOP造成的JNDI注入攻击可以利用。

什么是JNDI注入攻击呢?Orange Tsai 表示,这个攻击手法出现距今差不多五年,这是Java提供的API界面,方便开发者动态存取物件;JNDI注入攻击和反序列漏洞其实是个别独立的两种攻击方式,但是反序列化漏洞可以借用JNDI注入攻击,进一步拓展其攻击面。

他进一步指出,这个JNDI注入攻击手法,其实之前也被利用在趋势科技命名为Pawn Storm APT组织,也有其他称之为APT 28或称Fancy Bear的网军用来对外发动攻击的方式。

这种“遇到反序列化漏洞就采取JNDI注入攻击”的方迷思,Java则在2018年10月时,正式修补漏洞编号CVE-2018-3149的JNDI注入攻击漏洞,透过将com.sun.jndi.ldap.object.trustURLCodebase 预设值更改为False(假)的方式,达到禁止骇客下载远端Java Bytecode(字节码)取得执行程式码。

也就是说,在新版的Java,包括:Java 8u181、7u191和6u201以上的版本,都无法透过JNDI注入攻击的方式进行远端执行程式码。他坦言:“如果MobileIron采用新版的Jave,就无法利用JNDI╱LDAP注入攻击,也就无法掌握MobileIron的漏洞。”

虽然无法直接在新版Jave利用JNDI注入攻击,但Orange Tsai表示,仍然可以透过Tomcat的BeanFactory去载入ELProcessor达到任意代码执行的结果。

不过,BeanFactory去载入ELProcessor的手法,必须在新版Tomcat 8.0版以上才会成功,而MobileIron使用的是Tomcat 7.x版。Orange Tsai后来发现,如果Tomcat服务器的ClassPath刚好有 Groovy存在,就可以利用先前发表的Jenkins漏洞利用的手法,串连不同漏洞达到入侵目标服务器的目的。

没必要不修补的旧版元件Groovy漏洞,成为MobileIron致命核心

Orange Tsai后来想到,脸书基于安全考量,会禁止所有对外部的非法连线,这对红队想要采用JNDI注入攻击有重大影响,因为,JNDI注入攻击的核心就是,透过受害者连线到攻击者控制的恶意服务器,然后接收回传的恶意Name Reference后所导致的一系列利用,“现在第一步连线到攻击者的恶意服务器都做不到,更遑论进一步的攻击利用。”他说。

因为现有的方式都无法使用JNDI注入攻击,达到远端程式码执行的目的,他表示,整个研究就必须回到最原始找到的Hessian反序列化漏洞,从这个地方重新找到MobileIron可利用的软件漏洞。

Orange Tsai研究各种文献资料后发现,Groovy是一个只在内部使用、不会对外的小元件,没有特殊需求时,开发者通常不会做相关的软件更新,而MobileIron服务器上的Groovy版本则是2008年的1.5.6旧版本,是一个十二年前还不支援Meta Programming的版本。

他比较旧版和新版Groovy差异发现,旧版Groovy没有ALLOW_RESOLVE的限制,因为这个ALLOW_RESOLVE的限制,其实是Groovy为了因应2015年出现的Java反序列化漏洞所采用的减缓措施,当年也分配到一个CVE-2015-3253漏洞编号。

后来Orange Tsai透过检视Groovy程式码,找到一个GroovyShell的漏洞利用方式,成为MobileIron软件弱点攻击链的一环。他说:“这种看似无足轻重的小元件,也可能成为企业被攻击的主因。”他最后也因为成功找到MobileIron软件漏洞,利用这个漏洞成功入侵脸书,取得脸书服务器上的Shell,并顺利回报脸书的漏洞奖励计划。

MobileIron释出漏洞修补软件,脸书没有收到漏洞修补资讯

Orange Tsai花了三个月完成整个漏洞研究,在4月3日将研究成果写成报告,并试图将漏洞回报给MobileIron。只不过一刚开始找遍MobileIron整个官网,找不到任何漏洞回报的通报窗口,后来是透过LinkIn发信给MobileIron高阶主管后,对方才提供security@mobileiron.com管道,让他回报此一软件漏洞。

MobileIron在6月15日释出修补程式,也记录三个CVE漏洞标号,包括:CVE-2020-15505(Remote Code Execution,远端代码执行漏洞)、CVE-2020-15506(Authentication Bypass,绕过认证漏洞)和CVE-2020-15507(Arbitrary File Reading,任意读档漏洞)。

Orange Tsai在官方释出修补程式后,同时监控所有使用MobileIron企业的漏洞修补状况,并透过检查静态档案的Last-Modified Header追踪修补进度,在官方释出修补软件一个月后,大约有六成企业已经完成相关软件修补;释出修补软件二个月后,大约有八成企业完成相关软件修补。

不过,脸书在MobileIron释出修补软件的15天后,都还没有修补该漏洞,Orange Tsai则在7月2日利用MDM漏洞进入脸书服务器后,再回报脸书漏洞奖励计划,但脸书后来则表示,他们并未收到MobileIron的漏洞修补信件,这才让MDM成为Orange Tsai顺利入侵脸书服务器的关键漏洞。

2020-09-13 07:47:00

相关文章