Lyceum .NET DNS 后门
本帖最后由 梦幻的彼岸 于 2022-6-13 16:47 编辑Lyceum .NET DNS Backdoor
翻译:梦幻的彼岸
原文地址:https://www.zscaler.com/blogs/se ... um-net-dns-backdoor
Lyceum .NET DNS Backdoor
Lyceum Group自2017年以来一直活跃,是一个国家支持的伊朗APT组织,以瞄准能源和电信领域的中东组织而闻名,主要依赖于基于.NET的恶意软件。
Zscaler ThreatLabZ最近观察到了一场新的活动,Lyceum Group通过复制开源工具的底层代码,利用新开发和自定义的基于.NET的恶意软件针对中东地区。
此次攻击的主要特征:
[*]新的恶意软件是一个基于.NET的DNS后门,是开放源码工具 “DIG.net”的自定义版本。
[*]该恶意软件利用了一种被称为 "DNS劫持 "的DNS攻击技术,攻击者控制的DNS服务器操纵DNS查询的响应,并按照他们的恶意要求解决这些查询。
[*]该恶意软件采用DNS协议进行指挥和控制(C2)通信,这增加了隐蔽性,使恶意软件的通信探针处于radar下以逃避检测。
[*]包括上传/下载文件和通过滥用DNS记录在受感染机器上执行系统命令等功能,包括用于传入命令的TXT记录和用于数据渗透的A记录。
传播机制
在这次活动中,从域名 "http[:]//news-spot.live "下载了下图所示的启用宏的Word文档(文件名:ir_drones.docm),并将其伪装成与伊朗军事事务有关的新闻报道。该文件的内容复制自以下原始报告:https[:]/www[.]rferl[.]org/a/iran-dron-program-threats-interests/31660048.html
一旦用户启用宏内容,下面的AutoOpen()函数就会被执行,该函数使用 "PictureFormat.Brightness = 0.5 "增加图片亮度,显示出标题为 "Iran Deploys Drones To Target Internal Threat, Protect External Interests. "的内容。
然后,攻击者利用AutoClose()函数将DNS后门放到系统中。关闭文档后,AutoClose()函数被执行,从word文档第7页的文本框中读取一个PE文件,并将其进一步解析为所需的格式,如下图所示,"MZ "头是字节流的最初两个字节。
然后,这个PE文件被进一步写入Startup(启动)文件夹,以便通过宏代码保持持久性,如下图所示。通过这种策略,每当系统重新启动时,DNS后门就会被执行。
删除的二进制文件是一个基于.NET的名为“DnsSystem”的DNS后门程序,它允许威胁行为者远程执行系统命令,并在受感染的计算机上上传/下载数据。
下面,我们将分析已删除的基于.NET的DNS后门及其内部工作原理。
Lyceum .NET DNS 后门
Lyceum 团队开发了一个基于.NET的DNS后门,在他们最近的活动中被广泛使用。正如前面所讨论的,,后门是从启用了宏的Word文档中复制到受感染系统的Startup(启动)文件夹中的。
md5: 8199f14502e80581000bd5b3bda250ee
文件名: DnsSystem.exe
攻击链分析
基于.NET的DNS后门是开源工具DIG.net(DnsDig)的自定义版本,可在此找到:DNS.NET Resolver (C#) - CodeProject. 。DIG.net是一个开源的DNS解析器,可以用来对DNS服务器进行DNS查询,然后解析响应。攻击者已经自定义和添加了代码,允许他们在自定义的DNS服务器上执行各种记录的DNS查询,解析查询的响应,以便远程执行系统命令,并通过利用DNS协议从命令和控制(C2)服务器上传/下载文件。
最初,恶意软件通过获取域名 "cyberclub[.]one"=85[.]206[.]175[.]199的IP地址,使用Dns.GetHostAddresses()的DIG Resolver功能设置了一个攻击者控制的DNS服务器,这又触发了对cyberclub[.]one的DNS请求来解析该IP地址。现在,这个IP被关联为自定义攻击者控制的DNS服务器,用于所有由恶意软件发起的进一步DNS查询。
接下来,Form Load函数会根据当前Windows的用户名生成一个独特的BotID。它使用CreateMD5()函数将用户名转换为其MD5等价物,并将MD5的前8个字节解析为BotID,以识别被恶意软件感染的用户和系统。
现在,后门需要从C2服务器接收命令,以执行任务。 后门发送一个初始DNS查询到 "trailers.apple.com",其中域名 "trailers.apple.com "在启动DNS请求之前与先前生成的BotID相连接。然后,DNS查询被发送到DNS服务器,以便通过向BeginDigIt()函数传递三个参数来获取所提供域名的 "TXT "记录:
[*]Name: 目标域名 - EF58DF5Ftrailers.apple.com
[*]qType: 要查询的记录 - TXT
[*]qClass: Dns类别值 - IN(默认)。
BeginDigIt函数然后执行主DNS解析器函数 "DigIt"。这将发送DNS查询,以获取所提供的目标域名的DNS记录到DNS服务器,并解析响应,见下面的代码片断。
将Digit Resolver Code DigIt()函数字符串与Dig.Net工具的输出进行比较,如下图所示,我们可以进一步确定Dig.Net工具已经被Lyceum Group自定义,以开发以下基于.Net的DNS后门。
该恶意软件利用了一种被称为 "DNS劫持 "的DNS攻击技术,即DNS服务器被攻击者控制,这将使他们能够操纵对DNS查询的响应。现在让我们分析一下下面的DNS劫持程序。
如前所述,后门执行初始DNS查询,以获取域名EF58DF5trailers.apple.com的TXT记录。EF58DF5是基于Windows用户生成的BotID,以接收来自C2服务器的命令。
从上面的截图可以看出,进行DNS查询是为了获取域名的TXT记录:EF58DF5trailers.apple.com到DNS服务器。85[.]206[.]175[.]199,这是之前初始化的攻击者控制的DNS服务器。
这里是DNS劫持发生的地方。由于恶意软件发送跨越DNS查询,以获取TXT记录到攻击者控制的DNS服务器,攻击者控制的DNS服务器响应一个错误的响应,包括由后门执行的命令,如ipconfig,whoami,uploaddd等,如下图所示。
以下是后门收到的DIG.Net DNS响应,然后进一步解析,以便在受感染机器上执行命令。
上面的截图包括对攻击者控制的DNS服务器进行的DNS查询,以及目标域名EF58DF5trailers.apple.com。答案部分由查询响应组成,其中包括目标域名和TXT记录的响应,有两个值,"ipconfig" - 要执行的命令和 "1291" - 通信ID
接下来,Dig.net的响应是使用多个模式的重合代码例程来解析的,它从恶意软件收到的完整响应中解析出TXT记录值--上述的命令和通信ID。
接下来,根据从C2服务器收到的TXT记录中的命令,有三种功能可由Lyceum后门执行:
下载文件 - 如果从DNS查询中收到的命令包括一个字符串。"downloaddd",它就会启动下载程序,并使用DownloadFileAsync()从URL下载该文件。URL将是TXT记录响应值的前11个字节,并将下载的文件存储在Downloads文件夹中,如下面的代码片段所示。这个功能可以被利用来在受感染的机器上投放额外的恶意软件。
上传文件 - 如果从DNS查询收到的命令包括一个字符串。"uploaddd",在将TXT记录的响应值解析为两个变量:uriString(外部URL)和filename(本地文件)后,它使用UploadFileAsync()函数将磁盘上的本地文件上传至外部URL。这个功能可以被利用来溢出数据。
代码执行 - 如果上述字符串中没有一个与TXT记录的响应相匹配,那么该响应将被传递给命令执行程序。在那里,TXT记录的响应被作为一个命令在被感染的机器上使用 "cmd.exe /c <txt_record_response_command>"执行,命令输出以DNS A记录的形式发送到C2服务器。
在这种情况下,我们收到的TXT记录响应,对攻击者控制的DNS服务器进行的DNS查询是 "ipconfig"。这个响应启动了后门的命令执行程序,因此命令 "ipconfig "将在受感染的机器上执行 - cmd.exe /c ipconfig
此外,该命令的输出被渗入到C2服务器,在Base64中编码,然后与通信ID和先前生成的BotUID连接,使用"$"作为分隔符。
数据溢出模式: $$
一旦命令输出被编码为上述模式,DNS后门就会通过DNS查询,以A记录的形式将输出发送到C2服务器,在多个查询块中,A记录的值由编码的命令输出组成。一旦命令输出被完全传输,一个 "Enddd "命令就会以Base64编码的数据溢出模式发送过去,以通知命令输出的结束,如下图所示。
解码A记录:
IPConfig 命令输出 -
Encoded A record = ICAgSVB2NCBBZGRyZXNzLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDogMTkyLjE2OC4.yLjEw$929$5686BB2F
Decoded A record =
IPv4 Address. . . . . . . . . . . : 192.168.2.10 $ ComID: 929 $ UID: 5686BB2F
End Command -
Encoded A record = RW5kZGQ=$1291$$EF58DF5F
Decoded A record = Enddd $ ComID: 1291 $ UID: EF58DF5F
云沙箱检测
总结
APT攻击者正在不断发展他们的战术和恶意软件,以成功地对其目标进行攻击。攻击者不断采用新的反分析技巧来逃避安全解决方案;恶意软件的重新包装使静态分析更具挑战性。
MITRE ATT&CK mapping:
T1059 Command and Scripting Interpreter
T1055 Process Injection
T1562 Disable or Modify Tools
T1010 Application Window Discovery
T1018 Remote System Discovery
T1057 Process Discovery
T1518 Security Software Discovery
T1071 Application Layer Protocol
IOC:
Docm Hash:
13814a190f61b36aff24d6aa1de56fe2
Exe Hash:
8199f14502e80581000bd5b3bda250ee
域名和URL信息:
cyberclub[.]one
hxxp://news-spot[.]live/Reports/1/?id=1111&pid=a52
hxxp://news-spot[.]live/Reports/1/?id=1111&pid=a28
hxxp://news-spot[.]live/Reports/1/?id=1111&pid=a40
hxxp://news-spot[.]live/Reports/1/45/DnsSystem[.]exe 太厉害了,佩服啊 ddn 厉害了我的版主不能再学习了 感谢楼主分享 学习了
页:
[1]