欢迎访问Sunbet官网(www.sunbet.us),Allbet欧博官网(www.ALLbetgame.us)!

首页Sunbet_新闻事件正文

一文读懂历程重镜像手艺(附检测计划)

b9e08c31ae1faa592019-11-0787二进制安全

申博娱乐

注册加入申博娱乐,请来唯一申博官方网,申博开户完全保护用户隐私,站点安全可靠,无论是上班族还是创业人群,都可以在这里赚取外快,领取豪华好礼,还有更多小游戏、线上交友消遣无聊,全体站内人员竭诚等待您的光临。目前还推出手机APP,欢迎下载,进入申博世界!
, 背景 约莫三个月前,一种新的进击手艺涌如今平安社区,名为「历程重镜像」。 这项手艺是由 McAfee 平安团队在一篇标题为“历程重镜像和终端平安解决方案绕过”的博文中宣布的,在这类进击手艺宣布的几天后,我的一个同事也是朋侪—— Dwight ——拿出了观点考证代码(PoC),演示了这类手艺,能够在他的 GitHub 上找到。 虽然这项手艺还没有映照到 MITRE ATT&CK 中,但我置信它属于防备隐匿战术。 只管我写这篇博客文章的目的是展现用于检测这类进击的要领,然则它假定你已读过 McAfee 平安团队宣布的博客文章而且看过 Dwight 的观点考证代码。 此次进击的扼要提要以下: 历程重镜像是一种进击手艺,它应用了 Windows 操纵系统在肯定历程镜像 FILE 对象位置历程当中的不一致性。 这意味着进击者能够删除磁盘上的二进制文件,并经由历程将其初始实行完全文件途径替换为受信托的二进制文件来隐蔽该文件的物理位置。 这反过来许可进击者绕过 Windows 操纵系统历程属性考证,将本身隐蔽在他们挑选的历程镜像的高低文中。 这类进击包含三个阶段: · 将二进制文件写入到磁盘ーー这里假定进击者能够将二进制文件写入到磁盘。 · 未检测到的二进制加载。这将是历程竖立后加载的原始镜像。 · 歹意二进制文件被“重镜像”到一个进击者愿望以某种体式格局涌现的已知的好的二进制文件。 这是能够完成的,因为重命名镜像时,虚拟地点描述符(VAD)不更新。 因而,当运用程序查询时,这会返回毛病的历程镜像文件信息。 这使敌手有时机防备性地躲避剖析职员和事宜响应者的检测事情。 构造每每没有网络到“准确”的数据。 一般,数据黑白结构化的、无必要的,而且缺少得出结论所需的实质性细节。 假如没有高质量的数据,构造能够会对在其环境中运转的手艺置若罔闻。 另外,因为过于依靠 EDR 产物的基础设置(比方,Windows Defender 等) ,你将检测的细节供应给第三方,而第三方能够运用或不运用准确的函数挪用来检测这类歹意行动(比方 GetMappedFileName 能够准确检测这类重镜像进击)。 基于这些要素,这类进击许可敌手胜利回避侦测。 要相识更多关于这类进击的内容和信息,请检察关于这个主题的原始博客文章中的 “手艺探秘” 部份。 注重: GetMappedFileName 是运用程序用于查询历程信息的 API。 它搜检所要求的地点是不是在指定历程地点空间中的内存映照文件内。 假如地点在内存映照文件内,它将返回内存映照文件的称号。 这个 API 须要 PROCESS_QUERY_INFORMATION 和 PROCESS_VM_READ 接见权限。 任何时候当某个句柄具有了接见权限 PROCESS_QUERY_INFORMATION,它也就被授与了 PROCESS_QUERY_LIMITED_INFORMATION 权限。 这些接见权限的位掩码是 0x1010。 这能够看起来很熟悉,因为这是 Mimikatz 所希冀的接见权限之一。 Matt Graeber 提示过我,在尝试检测基于受权接见的可疑接见 LSASS 时,这是很多误报的泉源。 透明化 此次进击宣布后,我花了一个星期六的时候竖立了一个要挟追踪假定,我细致的研讨了数据行动,并找到了它们之间的关联。 在检察 Dwight 的 POC 时,我注重到代码中的 Win32 API 挪用,从这些挪用中,我确信我能够将这些 API 挪用与特定的事宜关联起来。 因为像很多防备者一样,我对 EDR 产物及其日记纪录才能做了假定。 在没有已知 API 到事宜 ID 映照的情况下,我最先本身映照这些挪用。 我一最先映照的是 Sysmon。 这须要逆向 Sysmon 驱动程序将 API 挪用映照到事宜注册机制的事宜 ID。 这里要谢谢 Matt Graeber,谢谢他在这个使命中协助了我,而且花时候教我逆向的历程。 竖立这个映照是我完成检测战略的一个症结部份,没有它就不能够完成终究的检测战略。 历程重镜像检测 检测要领 用于这一检测的要领以下: · 阅读历程重镜像进击的手艺报告。 · 检察Dwight 的 POC 代码。 · 取得关于进击怎样实行的学问后,在数据和进击行动之间竖立关联。 · 实行进击。 · 运用前面取得的研讨学问并连系数据关联举行鲁棒性检测。 检测步骤 当我阅读这个博客的 “Technical Deep Dive”部份时,我倏忽想到:

一文读懂历程重镜像手艺(附检测计划)  二进制安全 第1张

https://securingtomorrow.mcafee.com/other-blogs/mcafee-labs/in-ntdll-i-trust-process-reimaging-and-endpoint-security-solution-bypass/ 上面的图片中显现了几个 API 挪用,它们的运用极大的激发了我的兴致。 · LoadLibrary · CreateProcess 依据我在 Sysmon 驱动程序内部的逆向研讨,这两个 API 挪用都是经由历程事宜注册机制漏斗式举行的。 然后,Sysmon 驱动程序运用必要的输入 / 输出接口掌握(IOCTL)代码挪用这类机制来查询数据。 然后将查询的数据拉回到 Sysmon 二进制文件中,后者将生成相干的事宜 ID。 关于上述两个 API 挪用的相干历程以下图所示:

一文读懂历程重镜像手艺(附检测计划)  二进制安全 第2张

 Sysmon 事宜 ID 1的映照: 历程竖立

一文读懂历程重镜像手艺(附检测计划)  二进制安全 第3张

Sysmon 事宜 ID 7的映照: 镜像加载
CVE-2019-13720:Chrome 0-day 漏洞利用 摘要 Kaspersky研究人员近日发现一个Google Chrome浏览器的新的未知漏洞利用。经Google研究人员确认,是一个0 day漏洞,CVE编号为CVE-2019-13720。 研究人员将相关攻击活动命名为Operation WizardOpium。目前还无法将该攻击活动与已知的攻击者联系在一起。但研究人员发现部分代码与Lazarus攻击中的代码很相似。从被攻击的站点来看,与早期DarkHotel攻击活动类似。 技术细节 攻击活动使用了一种对韩语新闻门户的水坑形式的注入。攻击者会把恶意JS代码插入到主页中,恶意JS代码会从远
依据这项研讨和 McAffee 文章中的“手艺揭秘”部份,我确实地晓得实行此进击时将生成什么数据。 Sysmon 对 LoadLibrary 的每一个挪用应当有一个 ID是 7的事宜,对 CreateProcess 的挪用一样应当有一个 ID 是1的事宜; 然则,怎样将数据转换为可操纵的数据呢? 特别是要挟追踪职员能够很容易地运用和支配以满足他们须要的数据? 为此,我们将重点放在数据标准化和数据质量上。 数据质量源于数据标准化。 数据标准化是将数据转换为通用可读花样的历程,然后能够方便地举行剖析。 数据质量是确保环境正在网络准确的数据的历程,然后能够对特定的进击手艺举行合理化处置惩罚。 这能够经由历程明白非歹意数据的行动并竖立此次进击时期供应的数据的行动相干性来完成。 比方,在竖立历程时,OriginalFileName (Sysmon 的一个相对较新的增加项)应当与 Sysmon 事宜 ID 1中的 Image 部份相婚配。 假定你想要启动 PowerShell,当你启动 PowerShell 时 OriginalFileName 将是 PowerShell.exe,Image(镜像) 将是 C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe。 当这两者不婚配时,它多是歹意运动的一个指示器。 在历程重镜像以后,运用程序挪用 GetMappedFileName API 来检索历程镜像文件,Windows 将返回毛病的文件途径。 能够在ID是 1的事宜中的 Image 字段和 ID是 7的事宜中的 ImageLoaded 字段之间竖立关联。 因为事宜 ID 1和7都具有 OriginalFileName 字段,剖析职员能够对这两个事宜的数据实行 JOIN 操纵。 在这个 JOIN 上,效果将显现竖立历程的雷同历程途径和加载历程的镜像应当相称。 经由历程这类关联,我们能够肯定这两个事宜来自同一个运动子集。 上述相互关联以下图所示:

一文读懂历程重镜像手艺(附检测计划)  二进制安全 第4张

我们基于这篇文章中的“功用”章节举行检测:https://securingtomorrow.mcafee.com/other-blogs/mcafee-labs/in-ntdll-i-trust-process-reimaging-and-endpoint-security-solution-bypass/ 虽然能够运用 Sysmon 的 ID为 1的事宜和 Sysmon ID 为7的事宜竖立关联,然则能够基于用户形式 API NtCreateFile 竖立另一个关联。 这将经由历程事宜注册机制 FltRegisterFilter完成,它在 Sysmon 中会竖立一个 ID为 11的事宜(事宜寄义:文件竖立)。 此关联能够在 Sysmon 中 ID 为1的事宜的 Image 字段上关联,该字段应与 Sysmon 中 ID 为11的事宜 TargetFilename 婚配。 Sysmon 中的 ID为 1的事宜 ParentProcessGuid 也应当婚配 Sysmon 中ID 为11的事宜的 ProcessGuid字段,以确保事宜都是由同一个历程引发的。 既然研讨已完成,那末这些假定必需获得考证。 数据剖析 下面显现了正在实行的进击敕令。 该历程(phase1.exe)是经由历程加载二进制文件(svchost.exe)竖立的,然后重镜像为 lsass.exe。 .\CSProcessReimagingPOC.exe C:\Windows\System32\svchost.exe C:\Windows\System32\lsass.exe 下面是我们在上面议论的题目的 SparkSQL 剖析代码: 运用 Jupyter notebook SparkSQL 运转查询Gist 我试图让用户尽量地阅读 JOIN 函数。 须要注重的一点是,这个查询是从 Sysmon 中的原始数据日记中提取的。 没有在 SIEM 管道中实行转换。 下面是运用 SparkSQL 在 Jupyter notebook 中举行的关联剖析和数据相干性的直观示意。 假如竖立的文件随后移动到差别的目次,以及假如文件的 OriginalFileName 不等于 Sysmon 事宜 ID 1的 Image,则也会搜检此查询。 (比方: 用 Image ——“ ApplyTrustOffline.exe”和 OriginalFileName ——“ ApplyTrustOffline.PROGRAM”竖立历程)在这些搜检以后,查询将只返回重镜像进击的效果。 一文读懂历程重镜像手艺(附检测计划)  二进制安全 第5张 查询中关联的图表视图 上面的 SQL 查询的输出能够在下面看到。 在进击后的数据查询输出中发明的事宜好像有“反复项”。 现实并非如此。 每次运转进击时,都邑有一个 Sysmon 事宜 ID 11(FileCreate) 在每次 Sysmon 事宜 ID 1(Process Creation) 以后触发。 这与上面议论过的进击行动有相干性。 一文读懂历程重镜像手艺(附检测计划)  二进制安全 第6张 查询输出 与以下剖析相干的数据集和 Jupyter Notebook 能够在我的 GitHub 上找到。 我勉励任何人把它拉到本身的电脑上,本身着手剖析数据。 假如你没有一个实验室来做测试,你能够在这里找到: https://github.com/jsecurity101/mordor/tree/master/environment/shire/aws。 下面剖析了运转的数据集的阶段和信息。 这与上面的查询相干:

一文读懂历程重镜像手艺(附检测计划)  二进制安全 第7张

须要记着的一件事是,当歹意二进制被从新映照到进击者挑选的二进制时(第三阶段) ,你将不会看到“ phase1.exe”被从新映照到“ lsass.exe”。 这是这类进击特有的行动; Windows 将返回不准确的文件对象。 这并不能损坏这类检测要领。 我们的目的是发明进击的行动,一旦发明,你就能够顺着“ phase1.exe”的 ProcessGuid,或许转到它的完全途径,找到 Image 属性的二进制文件的镜像。 “ Phase1.exe”将涌如今从新镜像的二进制文件的高低文中。

一文读懂历程重镜像手艺(附检测计划)  二进制安全 第8张

上图显现的是在重镜像实行胜利后,phase1.exe 的属性 结语 历程重镜像进击手艺真的激起了我的兴致,因为这类手艺的核心好像就是做到“在雷达下遨游飞翔”,以避免检测。 进击者应用的每种手艺都邑有跟踪进击行动的数据。 这能够加以应用,但只要在我们明白了数据和数据源以后才能够做到充足的应用。 从基于特性的搜刮转向更多的数据驱动的要挟追踪要领将有助于检测的鲁棒性。 申谢 非常谢谢 Matt Graeber 协助我完成 Sysmon 驱动程序的逆向处置惩罚历程。 致 Dwight Hohnstein,谢谢他的 POC 代码。 末了,谢谢 Brian Reitz 在 SQL 运转不正常时给我供应的协助。 参考资料和资本 · 历程重镜像和终端平安解决方案绕过 · 历程重镜像 POC 代码 · 微软官方申明文档 本文翻译自:https://posts.specterops.io/you-can-run-but-you-cant-hide-detecting-process-reimaging-behavior-e6bb9a10c40b

网友评论