互联网暴露面应用系统敏感信息泄露的检测发现

2021-01-06 05:29中国移动通信集团河南有限公司业务支撑中心田菁菁马文许慧云
网络安全和信息化 2020年12期
关键词:企业应用源代码字典

■ 中国移动通信集团河南有限公司业务支撑中心 田菁菁 马文 许慧云

编者按:本文通过对互联网暴露面应用系统敏感信息泄露的检测发现进行介绍,总结出针对性的检测发现方法,提出了安全管理的要求措施,基于企业的安全管理场景提供了一些建议和思考。

如今企业部署安装的IT 应用系统越来越多、越来越复杂,同时也对其承载企业敏感信息的安全管理工作提出了更高的要求。

当企业IT 应用系统中的敏感信息发生泄露后,企业却往往后知后觉,不知所措。因此本文提出了两种常见的企业敏感信息风险场景及其对应的检测发现方法——应用管理地址探测与源代码信息泄露探测,同时介绍了使用一些低成本的技术方式最大限度地发现风险情况。

应用管理地址探测

在企业应用系统被攻击的案例中,因应用系统自身的管理地址暴露于互联网所占比例很高,其中也包含一些常见的Web 中间件的管理地址,如Tomcat、WebSphere等Web 中间件的管理功能页面。针对应用管理地址的攻击方式通常为注入攻击和暴力破解,其中以弱口令和默认帐号密码猜测为主。以Tomcat 为例,管理员为了维护方便,通常会启用Manager管理页面,如图1 所示。

在一些旧版本中,Tomcat的Manager 管理功能的帐号和密码在“conf/tomcatusers.xml”文件中进行配置,使用一些默认的帐号和密码,或者弱口令等。通过上述攻击方法,攻击者可以在较短时间内获取攻击收益。例如,针对Tomcat 管理功能的某些暴力破解核心代码中,对Tocmat的管理地址进行提交用户名和密码的操作,如果返回的结果页面中包含“Tomcat Web Application Manager”或“Tomcat Host Manager”等关键词,则表示已经通过弱口令进入其管理地址端。

图1 Tomcat 开启了Manager 功能的登录页面

由此可见,针对企业应用系统的管理地址的探测发现非常有必要。安全管理人员可以通过对企业应用系统的管理地址及常见中间件的管理地址进行探测发现,进行针对性的安全加固和防护。

在探测方式上,可以采用“管理地址字典+登录信息关键词字典”的方式,即首先通过“应用系统访问URL 地址+管理地址字典”进行HTTP 模拟访问,对于访问成功且字典类型为中间件的信息,则直接认定为存在管理地址泄露。如果成功访问操作所使用的字典类型为普通的登录地址字典,还需要再次进行登录信息关键词字典进行匹配,即发现网页源码中使用了“username”“password”及“loginid”等关键词且存在对应的input输入框,则认为存在管理地址泄露。如表1 所示。

字典库需要能够分类,并支持不断地添加和维护,持续丰富。通过使用字典库的形式,企业可以在无需介入业务部门具体业务的情况下,对应用系统的管理地址泄露情况进行探测,能够以较低的成本实现对管理地址的安全管控。

表1 探测字典示例

源代码信息泄露探测

除了企业应用系统管理地址泄露外,另一个常见的敏感信息泄露问题是企业应用系统的源代码泄露。随着软件行业的蓬勃发展,越来越多的开发人员将自己的代码分享到一些源码管理网站,比如最为著名的GitHub 网站。

近年来发生过多起大型企业代码敏感信息泄露事件,这会给企业造成极其严重后果:一是源代码自身以及配置的帐号密码等信息被恶意利用,导致攻击者无需过高的技术手段即可攻击企业应用系统;二是开发技术、业务能力、工程进度,甚至战略投入方向可能被竞争对手掌握,导致企业经济损失。

企业在对内做好常规的源代码安全管理的同时,还应在外部进行源代码信息泄露的常态化探测。与管理地址探测类似,可以使用爬虫技术进行探测,即根据代码分享网站(如GitHub、gitee.com 等)公开API 或使用网页爬虫技术定期进行关键字爬取,获取命中的源码工程相关内容,内容至少包含源码的URL 路径、源码的上下文内容、源码更新时间,以及命中的关键词。如表2 所示。

以GitHub 为例,可以使用其开放API 能力进行关键词的检索。图2 为伪代码逻辑示例。

首先通过GitHub 的公开API 进行登录,登录成功后,使用关键词进行搜索,默认搜索100 页。之后对搜索结果进行分析,解析出代码仓库地址、用户名及最后修改时间。如图3 所示。

表2 常见关键词示例

防范及思考

通过对应用系统管理地址、企业源代码信息泄露的探测研究,笔者发现企业往往在上述两方面的安全管控工作比较薄弱,企业应该建立整体的信息安全防控体系。针对此类风险,根据实际的应用经验,笔者提出如下建议:

1.建立完善的企业敏感信息管理制度,并进行预案化,责任到人,同时加强企业敏感信息保护宣传,增强企业员工的保密意识。

2.对应用系统确需对外开放的管理地址、确需公开的源代码工程进行白名单化,并对白名单内的管理地址进行针对性的加固,对源代码工程进行代码级别审核。

3.将应用系统管理地址、源代码信息泄露探测作为常态化监测任务,发现问题后通过电话、即时通讯软件、加急或重大级别的工单进行迅速处置,并进行闭环跟踪。

4.除企业内部员工外,还要对离职员工、承包商及其员工、合作伙伴等实施企业敏感信息保护管理要求,必要时进行法律合同约束。

结语

图2 伪代码逻辑示例

图3 探测发现的源代码泄露案例

企业敏感信息保护应是统一的、立体的,这对互联网暴露面资产的应用系统尤为重要。本文针对应用系统管理地址及企业源代码信息泄露的探测发现进行研究和实践,提出的技术和管理方式能够使企业以较低成本发现和治理应用系统的风险点。

猜你喜欢
企业应用源代码字典
基于TXL的源代码插桩技术研究
字典的由来
大头熊的字典
保护好自己的“源代码”
论财务软件在企业中存在的问题及对策
浅析管理会计在企业应用中的问题及对策
解密别克安全“源代码”
管理会计助推企业发展的思考与应用
正版字典
电气工程自动化技术在企业中的应用