背景
随着我国信息化进程加速,网络安全问题更加凸显。关键信息基础设施和企业单位在满足等保合规的基础上,如何提升网络安全防御能力,降低安全事件发生概率?默安玄甲实验室针对SonarQube供应链安全事件进行分析,强调供应链安全中易被忽略的软件质量管理平台安全。
近日,一个名为AgainstTheWest的组织在rainforums论坛频繁公布中国多个关键基础设施的源代码。除了对此类不法组织的痛恨之外,各位也应从中看到很多单位未重视供应链安全的问题。
图片来自网络
一、事件分析
去年十月,FBI就SonarQube未授权访问漏洞问题进行了通报。
https://s3.documentcloud.org/documents/20399900/fbi_flash_sonarqube_access_bc.pdf
图片来自网络
但由于国内外存在信息差,且不少单位对安全敏锐度相对较低,黑客利用攻防信息不对称对多个关基造成影响。当然也不乏一些响应较早的单位,例如西安交通大学网络信息中心(此处点赞)。
图片来自网络
以下为SonarQube的全球分布状况:其中美国最多,共有10,817;中国第二,2,576个;德国第三,有1,893个。
SonarQube全球分布情况(11月13日晚实时数据)
国内分布状况为:云主机和其它资产1,444个;北京第一,245个;浙江第二,198个。广东第三,168个。
SonarQube国内分布情况(11月13日晚实时数据)
二、软件质量管理平台与代码管理平台的安全
不少软件质量管理平台为B/S架构,导致黑客在寻找目标时更容易探测和获取其指纹,利用网络空间测绘技术对某个地区进行无差别批量攻击。
除了架构本身易被恶意利用外,安全产品本身的安全问题也值得关注,以Fortify为例,目前CVE已收录其25个安全缺陷。
Fortify CVE
另外,老生常谈的Gitlab、Gogs、Jenkins也可能成为源码泄露的罪魁祸首。以下为国内某互联网公司生鲜社区的代码仓库未授权访问:
图片来自网络
以下为Gogs全网的资产数量:
图片来自网络
三、如何防范类似供应链攻击
1、督促软件提供商重点关注开发工具链中的供应链风险
不管是SDL还是DevSecOps流程中,均涉及到众多开发工具或安全工具,例如上文中提到的Gitlab、Jira、Jenkins、Confluence、SAST等工具。若开发工具链中的产品出现安全风险,会直接威胁到企业业务源代码安全,因此针对开发体系中的工具,我们需要做好如下事项:
(1)控制暴露面,开发工具链中的任何工具不暴露到公网,并对企业暴露面进行周期性检查;
(2)加强工具的使用接入认证,面对异地办公、多地协作场景,建议使用零信任进行接入,管控接入风险;
(3)定期对开发工具链中的工具进行漏洞扫描,确保不存在历史漏洞;
(4)制定应急响应措施,一旦供应链厂商发生安全事件,立即响应。
-
默安科技巡哨·智能资产风险监控系统在今年4月已支持本次事件中的SonarQube漏洞检测,支持对企业内外网资产进行7*24小时持续监控,发现企业公网暴露面和内网外资产,及时作风险预警。
巡哨 PoC
巡哨(原哨兵云)是默安科技自主研发的一款智能资产风险监控系统,从攻击者视角帮助企业发现未知资产,通过漏洞风险、高危服务、外部威胁情报等多维度持续监控内外网及云上云下资产,实时更新最新漏洞扫描插件,帮助客户高效应对最新安全风险,实现资产透明化管理及安全风险监控。
-
默安科技幻阵·高级威胁狩猎与溯源系统已支持构建SonarQube沙箱,诱导攻击者发起攻击,远离真实资产,精准检测高级威胁,并实时捕捉SonarQube最新漏洞威胁情报。
幻阵SonarQube沙箱
-
默安科技零信任平台支持与钉钉身份认证集成,针对异地办公、远程接入场景,提供安全的身份认证,支持短信/邮箱/MFA等多种方式进行二次验证,且在用户的访问过程中持续对访问行为进行异常检测,一旦发现数据脱库、恶意攻击等行为,根据用户策略自动进行阻断或二次验证。
2、及时修改代码中的硬编码、密钥、微服务相关的API信息命名。
3、定期diff代码,避免出现类似Codecov供应链攻击事件。