恶意程序Dexphot以高明手法躲避侦测,8万台Windows PC变比特币挖矿机

微软警告一只名为Dexphot的恶意程序,近一年来在网络传播,最高峰时曾有8万台PC被黑客植入用来挖比特币。微软指出,Dexphot也展现出现今恶意程序躲避侦测手法之高明。

微软Defender ATP Research团队的恶意程序监控系统,自去年10月以来,侦测到一只程序大规模感染。它每20到30分钟即变换一次文件名,并植入到数千台设备上。根据其程序代码特性,微软将之命名为Dexphot。根据微软的记录,Dexphot灾情在6月达到高峰,有高达8万台被感染,近几个月降到将近1万台。

微软研究人员Hazel Kim指出,Dexphot是几乎上不了主流媒体版面的威胁程序,其目的只是为了利用计算机计算资源来挖比特币。但Dexphot却发展出相当高明的技术手法,以长期潜伏在系统内。

Dexphot有许多方法可以避免杀毒软件侦测。首先,它采取两阶段感染法,由之前经由其他软件组件下载到PC的ICLoader恶意程序打前锋,再下载Dexphot下载器。Dexphot下载到PC上,只有最开始的部分是进入磁盘,但后续组件就会运用无文件(fileless)攻击法,加载到系统内存。其次Dexphot使用离地攻击法(living off the land,LOLbins),使用Windows某些合法行程,像是msiexec.exe、unzip.exe、rundll32.exe、schtasks.exe和powershell.exe来执行恶意行程,包括安装MSI组件、释放恶意文件、下载loader DLL、执行调度作业及强制更新。在其他系统行程(如svchost.exe、nsookup.exe)上,Dexphot则运用相当高明的行程掏空(process hollowing)手法,借由清空合法行程内容,以便借其外壳执行恶意程序。这些手法都是为了躲避杀毒软件侦测。

Dexphot还运用一种很特别的多形(polymorphism)手法。由于近年安全厂商已经搜罗了无文件恶意程序的数据库,为此Dexphot演化出可以经常改变传播的恶意文件名及形态来回避侦测。例如有时是普通.zip档、有时为密码保护的zip档、Loader DLL档,有时是检查杀毒产品的批次档,而每次文件名、使用密码也都不一样。微软发现它每20到30分钟即可变化一次,等杀毒厂商侦测到其感染后,它又换上不同的面貌出现。

此外,它的2个监控服务可以随时检测,若发现其中一个恶意行程遭到杀毒软件中止或删除,就会自动结束其他行程,之后利用重新开机、或是每90到110分钟一次再重新感染受害设备,以确保黑客可以重新掌控所有受害系统。

Kim指出Dexphot其实证明了,不起眼的威胁可以达到的技术复杂性和演变速度,借以躲避侦测、不动声色谋取财务报酬的能力。

除了Dexphot,微软两个月前也先后发现Astaroth和Nodersok这二个恶意程序,使用了离地攻击或无文件攻击的复杂手法,来成功达阵。