微软公开SolarWinds恶意代码检测工具的源代码

admin 2021年5月25日02:36:02评论160 views字数 1139阅读3分47秒阅读模式
微软公开SolarWinds恶意代码检测工具的源代码点击上方蓝字关注我们

概述


2020年12月,SolarWinds供应链攻击震惊IT界。一群黑客在基础网络管理软件供应商SolarWinds Orion 软件更新包中,植入SUNBURST恶意后门程序。这次供应链攻击波及范围极大,受影响的用户不仅限于美国,也包括欧洲、亚洲、中东等,SolarWinds Orion平台软件在中国内地也有部分用户。

除SUNBURST恶意后门程序外,研究人员还发现了另外一个名为SuperNova的恶意软件。该恶意软件使黑客能够远程发送C#代码,由恶意软件编译并在受害者的计算机上执行。

CodeQL代码查询工具


近期,微软发布了CodeQL工具的源代码,该工具可以用于大规模分析其代码并识别与SolarWinds攻击相关的任何代码级别的攻陷指标(IoC)。(https://aka.ms/Solorigate-CodeQL-Queries)


微软公开SolarWinds恶意代码检测工具的源代码


CodeQL是一个强大的语义代码分析引擎,可以扫描发现代码库中的漏洞。首先,该工具会先构建一个数据库,该数据库将已编译源代码的模型捕获为二进制文件。数据库创建完成后,就可以像其他任何数据库一样重复查询它。


CodeQL聚合了数据库,以便于之后在各种代码库中进行语义搜索,并根据构建的一部分特定代码查找可能跨越多个程序集、库或模块的代码示例。


微软公开SolarWinds恶意代码检测工具的源代码


CodeQL查询代码级IoC的方法


CodeQL工具使用了两种不同的策略,以搜寻与SolarWinds攻击相关的任何代码级别的攻陷指标(IoC)。第一种策略是通过寻找代码级IoC中突出的特定语法,另一种策略则是寻找代码级IoC中存在的技术的整体语义模式。


与正则表达式搜索相比,语法查询不仅编写和执行速度更快,且还具有许多其他优势。语义模式寻找恶意植入程序中使用的总体技术,例如哈希进程名称、与C2服务器联系之前的时间延迟等。


微软公开SolarWinds恶意代码检测工具的源代码


通过结合这两种方法,CodeQL工具能够检测到黑客使用相似语法并更改了技术,或更改了语法但使用了相似技术的情况。


总结


微软在博客中解释了如何将由整个公司的构建系统或管道生成的CodeQL数据库聚合到集中式基础结构中,并指出:“聚合CodeQL数据库使我们能够在众多代码库中进行语义搜索,并根据构建的一部分特定代码查找可能跨越多个程序集、库或模块的代码条件。我们建立了此功能,以在所描述的变体发生后的几个小时内分析成千上万的资源库以查找新描述的漏洞变体,但类似地,它也使我们能够快速地对Solorigate植入程序进行首次通过调查。”


微软现已经开放了一些用于评估代码级IoC的C#查询,有需要的组织可以直接从CodeQL GitHub存储库进行下载。


微软公开SolarWinds恶意代码检测工具的源代码

END



微软公开SolarWinds恶意代码检测工具的源代码


好文!必须在看

本文始发于微信公众号(SecTr安全团队):微软公开SolarWinds恶意代码检测工具的源代码

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年5月25日02:36:02
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   微软公开SolarWinds恶意代码检测工具的源代码https://cn-sec.com/archives/277540.html

发表评论

匿名网友 填写信息