Plead恶意软件分析
导语:ESET研究人员发现攻击者通过被黑的路由器传播Plead恶意软件,并发起针对合法话说WebStorage软件的中间人攻击。
2018年6月,ESET研究人员发现一个之前D-Link公司使用的代码签名证书签名的后门软件——Plead。近期,研究人员检测到一起新的攻击活动,其中也使用了Plead恶意软件,并连接到华硕云公司开发的合法软件。
Trend Micro之前的分析显示,Plead恶意软件是BlackTech黑客组织使用的一款后门软件。BlackTech组织主要攻击亚洲地区进行网络监控活动。
ESET检测到的这起新攻击活动攻击的目标是台湾地区,其中Plead恶意软件已经被广泛应用了。
攻击活动概述
2019年4月底,ESET研究人员发现一起尝试应用Plead恶意软件的攻击活动。其中,Plead后门是由合法进程AsusWSPanel.exe创建和执行的。AsusWSPanel.exe进程是ASUS WebStorage云储存服务的Windows客户端。如图1所示,可执行文件的签名为华硕云公司。
图1. AsusWSPanel.exe代码签名证书
所有发现的Plead样本都含有文件名:Asus Webstorage Upate.exe [sic]。研究人员确认ASUS WebStorage的AsusWSPanel.exe模块可以在软件更新过程中创建含有上面文件名的文件,如图2所示。
图2. ASUS WebStorage客户端的反编译代码
为什么合法软件会创建和执行Plead恶意软件呢?下面是几种可能的解释。
场景1 – 供应链攻击
攻击者利用供应链攻击可以同时静默地入侵大量目标,这也是为什么会供应链攻击不断增加的原因。ESET研究人员也分析过M.E.Doc, Elmedia Player, VestaCP, Statcounter和游戏行业的大量供应链攻击案例。
关于华硕WebStorage供应链攻击的可能性,研究人员考虑了以下几点:
· 合法ASUS WebStorage二进制文件通过相同的更新机制传播二进制文件;
· 当前还没有发现ASUS webstorage服务器用作C2服务器或作为恶意二进制文件
· 攻击者使用单独的恶意软件文件而不是将其恶意功能融入道合法软件中
因此,研究人员认为供应链攻击的可能性比较小,但也仍然存在。
场景2 – 中间人攻击
ASUS WebStorage软件易受到中间人攻击。软件更新的请求和传输使用的是HTTP协议,一旦更新下载并执行,软件在执行前并不会验证其真实性。如果更新进程被攻击者拦截,就可以推送恶意更新。
ESET研究人员比较熟悉恶意软件通过ISP级的中间人攻击传输恶意软件,比如FinFisher, StrongPity2, Turla mosquito。
Trend Micro分析认为Plead恶意软件攻击了有漏洞的路由器,甚至使用这些路由器作为C2服务器。
ESET研究人员分析发现大多数受感染的组织都有相同生产厂家的路由器,而且这些路由器的控制面板可以通过互联网访问。因此研究人员认为路由器级的中间人攻击是最可能的攻击场景。
因为ASUS WebStorage软件使用HTTP发送更新请求,即发送请求到update.asuswebstorage.com服务器,服务器会发送一个XML格式的响应。XML响应中最重要的元素是guid和链接。Guid元素含有当前可用的版本,link元素含有更新用的下载URL。更新过程很简单:软件检查下载的版本是否老于最近的版本,如果是用提供的URL请求二进制文件,如图3所示。
图3. ASUS WebStorage软件更新检查过程中的合法通信
攻击者可以使用自己的数据来替换这两个元素以触发更新。这也是攻击者常用的方法和攻击场景。如图4所示,攻击者插入新的URL,该URL指向位于被黑的gov.tw域名的恶意文件。
图4. ASUS WebStorage软件恶意更新过程中抓取的通信
图5中的说明证明了通过被黑的路由器传播恶意payload到目标的最可能的场景。
图5. 中间人攻击场景
Plead后门
Plead样本是第一阶段下载器,执行后,会从服务器下载fav.ico文件,服务器名模拟华硕官方WebStorage服务器: update.asuswebstorage.com.ssmailer[.]com。
下载的文件含有一张PNG格式的图像和恶意软件使用的数据,位置就在PNG数据之后。图6是恶意软件搜索的特定字节序列,然后使用下一个512字节作为RC3加密密钥来解密数据的剩余部分。
图6.下载的PNG文件中的Plead恶意软件使用的数据
解密的数据含有一个Windows PE二进制文件,可以使用以下文件名和路径释放和执行:
· %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\slui.exe
· %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\ctfmon.exe
· %TEMP%\DEV[4_random_chars].TMP
通过将自己写入开始菜单文件夹,恶意软件就完成了驻留,每当用户登入系统就会加载恶意软件。
释放的可执行文件是第二阶段加载器,目的是解密来自PE resource的shellcode,并在内存中执行。Shellcode会加载第三阶段DLL,DLL的目的是从C2服务器获取额外模块并执行。第3阶段DLL和下载的模块之前被日本互联网应急响应中心分析过,参见https://blogs.jpcert.or.jp/en/2018/03/malware-tscooki-7aa0.html。
总结
攻击者在不断寻找新的、更加静默的方式来传播恶意软件。供应链攻击和中间人攻击越来越多地出现在全球的攻击中。需要注意的是软件开发者不仅需要监控可能的攻击场景,还要再产品中使用适当的更新机制来抵抗中间人攻击。
发表评论