加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

十种历程注入技能先容:常见注入技能及趋势观测

发布时间:2018-11-05 19:00:04 所属栏目:业界 来源:Freebuf
导读:媒介 历程注入是一种普及行使的逃避检测的技能,凡是用于恶意软件可能无文件技能。其必要在另一个历程的地点空间内运行特制代码,历程注入改进了不行见性,同时一些技能也实现了耐久性。尽量今朝有很多历程注入技能,但在这篇文章中,我将会先容十种在野发

在图8中,Amanahe恶意软件起首挪用OpenThread来获取另一个线程的句柄,然后通过LoadLibraryA挪用QueueUserAPC作为函数指针,将其恶意DLL注入另一个线程。

APC注入和ATOMBOMBING

AtomBombing是一项由enSilo研究初次引入的技能,然后用于Dridex V4。 正如我们在前一篇文章中具体接头的那样,该技能也依靠于APC注入。 可是,它行使原子表写入另一个历程的内存。

八、通过SETWINDOWLONG举办附加窗口内存注入(EWMI)

EWMI依靠于注入资源打点器托盘窗口的特殊窗口内存,而且已经在Gapz和PowerLoader等恶意软件系列中应用过屡次。注册窗口类时,应用措施可以指定一些特另外内存字节,称为特殊窗口内存(EWM)。可是,EWM的空间不大。为了规避此限定,恶意软件将代码写入explorer.exe的共享部门,并行使SetWindowLong和SendNotifyMessage行使指向shellcode的函数指针,然后执行它。

在写入共享部门时,恶意软件有两种选择。它既可以建设共享空间,也可以将其映射到自身和另一个历程(譬喻explorer.exe),也可以只打开已存在的共享空间。除了一些其他API挪用之外,前者尚有分派堆空间和挪用NTMapViewOfSection的开销,因从此一种要领更常用。在恶意软件将其shellcode写入共享部门后,它行使GetWindowLong和SetWindowLong来会见和修改“Shell_TrayWnd”的特殊窗口内存。GetWindowLong是一个API,用于将指定偏移量的32位值检索到窗口类工具的特殊窗口内存中,SetWindowLong用于变动指定偏移量的值。这样一来,恶意软件可以简朴地变动窗口类中的函数指针的偏移量,并将其指向写入共享部门的shellcode。

与上面提到的大大都其他技能一样,恶意软件必要触发它特制的代码。在先前接头的技能中,恶意软件通过挪用诸如CreateRemoteThread,QueueUserAPC或SetThreadContext之类的API来实现此目标。行使此要领,恶意软件会通过挪用SendNotifyMessage来触发注入的代码。执行SendNotifyMessage后,Shell_TrayWnd吸取节制并将节制转移到之前由SetWindowLong配置的值指向的地点。在图9中,名为PowerLoader的恶意软件行使此技能。

EWMI

九、SHIMS注入

Microsoft向开拓职员提供SHIMS首要是为了向后兼容。SHIMS应承开拓职员将修补措施应用于他们的措施,而无需重写代码。通过操作SHIMS,开拓职员可以汇报操纵体系如那里理赏罚应用措施。SHIMS本质上是一种挂钩API并定位特定可执行文件的要领。恶意软件可以操作SHIMS来定位耐久性和注入的可执行文件。Windows在加载二进制文件时运行Shim Engine以搜查SHIMS数据库以应用恰当的修复措施。

此刻有很多要领应用修复措施,但恶意软件的最爱是与安详相干的(譬喻,DisableNX,DisableSEH,InjectDLL等)。要安装填凑数据库,恶意软件可以陈设各类要领。譬喻,一种常见的要领是简朴地执行sdbinst.exe,并将其指向恶意sdb文件。在图10中,告白软件“按导管搜刮掩护”行使垫片举办耐久性和注入。它在Google Chrome中执行“InjectDLL”添补措施以加载vc32loader.dll。有一些用于说明sdb文件的现有器材,可是为了说明下面列出的sdb,我行使了python-sdb。

SHIMS注入

十、IAT HOOKING和INLINE HOOKING (可能叫应用层ROOTKITS)

IAT hooking和inline hooking凡是称为userland rootkit。IAT hooking是恶意软件用于变动导入地点表的技能。当正当应用措施挪用位于DLL中的API时,其会执行替代的函数,而不是原始函数。相反,行使inline hooking,恶意软件则会修改API函数自己。在图11中,恶意软件FinFisher通过修改CreateWindowEx指向的位置来执行IAT hooking。

ROOTKITS

总结

在这篇文章中,我先容了恶意软件用于在另一个历程中潜匿其勾当的十种差异技能。凡是,恶意软件会直接将其shellcode注入另一个历程,可能逼迫另一个历程加载其恶意库。在表1中,我对各类技能举办了分类,并提供了样本作为阅读本文所涵盖的每种注入技能的参考。

注入技能的参考

【编辑保举】

  1. 洞悉安详新趋势!CSS2018安详首脑峰会首发十大收集安详议题
  2. 卡巴斯基:2018上半年物联网威胁新趋势
  3. 2018上半年打单病毒趋势说明
  4. 暗网已成为收集犯法分子的避风港,揭秘暗网6大规模订价趋势
  5. Gartner:2018/2019 六大安详趋势
【责任编辑:武晓燕 TEL:(010)68476606】
点赞 0

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读