反恐精英0 day,被用于流传Belonard木马 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

反恐精英0 day,被用于流传Belonard木马

申博_新闻事件 申博 157次浏览 已收录 0个评论

反恐精英Counter-Strike 1.6是Valve Software(维尔福软件公司)2000年宣布的一款游戏。停止现在,该游戏依然有许多忠厚粉丝。运用官方CS 1.6客户端的有20000在线用户,在Steam上注册的游戏效劳器数目凌驾5000个。

出于告白和赢利的目标,名为Belonard的开发者运用他的效劳器用木马沾染了CS 1.6玩家的装备,并用其账号引荐其他的游戏效劳器。

歹意效劳器的一切者运用游戏客户端的破绽和木马作为其手艺基础。木马的目标就是沾染玩家装备并下载歹意软件来确保体系中木马的平安,并将它分发到其他玩家的装备上。停止现在,至少在官方游戏客户端和4个盗版游戏客户端中发明了多个长途代码实行RCE破绽。

在体系中装置完成后,木马将游戏客户端中可用的游戏效劳器列表替代,并在受沾染的盘算机上竖立署理来流传木马。署理效劳器的ping值会比较小,玩家会以为这是最快的效劳器。挑选了署理效劳器后,玩家就会被重定向到会沾染木马的歹意效劳器上。

基于此,木马开发者就可用竖立一个由CS 1.6客户端构成的僵尸网络。依据剖析师的剖析,官方Steam客户端的5000个效劳器中有1951个都是Belonard木马竖立的。

沾染客户端

木马Trojan.Belonard含有11个组件,可用依据游戏客户端在分歧的场景下运作。若是运用了官方客户端,木马就会应用RCE破绽来沾染装备;盗版客户端的沾染也是一样的。若是用户从歹意效劳器一切者的网站上下载受沾染的客户端,游戏第一次启动后就包管了木马在体系中的驻留。

反恐精英0 day,被用于流传Belonard木马

当用户启动官方Steam客户端并挑选游戏效劳器时,若是链接到歹意效劳器,就会应用RCE破绽上传歹意库到受害者的装备。依据破绽的范例,会下载和实行client.dll (Trojan.Belonard.1)或Mssv24.asi (Trojan.Belonard.5)。

木马Trojan.Belonard.1会在受害者装备上删除恣意的和库文件雷同目次下的.dat文件。以后歹意库会明白到C2效劳器fuztxhus.valve-ms[.]ru:28445,并发送解密的要求来下载文件Mp3enc.asi (Trojan.Belonard.2)。效劳器会在相应中发送加密的文件。

下图是来自效劳器的解密的数据包:

反恐精英0 day,被用于流传Belonard木马

装置到客户端

启动后,游戏会从游戏署理处下载ASI文件。从木马开发者的网站下载的客户端会沾染木马Trojan.Belonard.10 (Mssv36.asi),然则木马在体系中发装置于在洁净版的游戏客户端分歧。装置到受沾染的客户端以后,木马Trojan.Belonard.10会搜检用户操纵体系中的组件。若是不存在,就从主体开释组件并下载Trojan.Belonard.5 (Mssv24.asi)到历程内存中。与其他模块相似,Trojan.Belonard.10会修正竖立、修正和接见的日期和时候,以是木马的文件没法经由过程对文件夹中的内容装置竖立日期排序找出。

在装置完新组件后,木马Trojan.Belonard.10依然在体系中,负担客户端的保护校色。它会来自其他游戏效劳器的过滤要求、文件和敕令,将客户端修正转变相干的数据转移到木马开发者的效劳器上。

Trojan.Belonard.5会吸收关于运转历程和途径的信息。若是历程名不是rundll32.exe,就最先一个新的线程用于随后的行动。在运转的线程中,木马Trojan.Belonard.5会竖立注册表值[HKCU\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers] ‘<path to the executable file process>,分派值RUNASADMIN,搜检模块名。若是不在Mssv24.asi,就在Mssv24.asi模块中复制本身、删除名字分歧的版本、启动Trojan.Belonard.3 (Mssv16.asi)。若是名字婚配,就马上下载和启动木马。

在清洁客户端中实行是由木马Trojan.Belonard.2举行的。下载后,木马会搜检client.dll(Trojan.Belonard.1)加载的历程的DllMain。若是不在rundll32.exe中,就用注册表key [HKCU\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers] ‘<path to the executable file process>竖立一个线程,并且分派给它值RUNASADMIN。然后,木马会手机用户装备中的数据,从DialogGamePage.res文件中提取信息;再将这些网络的数据以加密花样的情势发送给木马开发者的效劳器。

网络的体系数据构造以下:

反恐精英0 day,被用于流传Belonard木马

效劳器会相应Mssv16.asi (Trojan.Belonard.3)文件。关于新模块的元数据会生存在DialogGamePage.res文件中,而Trojan.Belonard.5会从用户装备中移除。

体系中装置

确保木马在体系中驻留应用了木马Trojan.Belonard.3。木马装置后就会移除Trojan.Belonard.5和搜检历程。若是不在rundll32.exe中,就生存别的2个木马到%WINDIR%\System32\文件夹中,分别是Trojan.Belonard.7 (WinDHCP.dll)和Trojan.Belonard.6 (davapi.dll)。这2个木马的主体被分红0xFFFC字节的区块。当生存在硬盘中,木马会将一切区块集合起来来猎取事情文件。

————————————-

申博网络安全巴士站

申博-网络安全巴士站是一个专注于网络安全、系统安全、互联网安全、信息安全,全新视界的互联网安全新媒体。

————————————-

集合起来后,Trojan.Belonard.3会竖立一个WinDHCP效劳在svchost.exe情况中来运转WinDHCP.dll (Trojan.Belonard.7)。依据言语设置,操纵体系运用俄语或英语来设置效劳参数。

WinDHCP效劳参数:

Service name: “Windows DHCP Service” or “Служба Windows DHCP”;
Description: “Windows Dynamic Host Configuration Protocol Service” or “Служба протокола динамической настройки узла Windows”;

ImagePath参数指定为 “%SystemRoot%\System32\svchost.exe -k netsvcs”,而ServiceDll制订了到木马库的途径。

以后,Trojan.Belonard.3会搜检WinDHCP是不是在运转。若是没有运转,就重新装置该效劳。

Trojan.Belonard.7 是一个含有ServiceMain导出函数的WinDHCP.dll,它是经由过程自动运转效劳来装置在受沾染的装备上。其目标是搜检注册表key HKLM\\SYSTEM\\CurrentControlSet\\Services\\WinDHCP中的Tag参数。若是设置为0,Trojan.Belonard.7会加载davapi.dll,挪用其导出函数,通报一个到SERVICE_STATUS的指针作为参数,该参数反应了WinDHCP效劳的状况。然后守候1秒并再次搜检tag参数。若是值不等于0,Trojan.Belonard.7就会加载spwinres.dll。以后,挪用spwinres.dll的导出函数,通报一个到SERVICE_STATUS的指针作为参数。木马每秒钟都回反复上面的操纵。

WinDHCP效劳参数:

<RegistryKey Name="WinDHCP" Subkeys="1" Values="11">
 <RegistryKey Name="Parameters" Subkeys="0" Values="1">
 <RegistryValue Name="ServiceDll" Type="REG_EXPAND_SZ" SizeInBytes="68" Value="%SystemRoot%\system32\WinDHCP.dll" />
 </RegistryKey>
 <RegistryValue Name="Type" Type="REG_DWORD" Value="32" />
 <RegistryValue Name="Start" Type="REG_DWORD" Value="2" />
 <RegistryValue Name="ErrorControl" Type="REG_DWORD" Value="0" />
 <RegistryValue Name="ImagePath" Type="REG_EXPAND_SZ" SizeInBytes="90" Value="%SystemRoot%\System32\svchost.exe -k netsvcs" />
 <RegistryValue Name="DisplayName" Type="REG_SZ" Value="Служба Windows DHCP" />
 <RegistryValue Name="ObjectName" Type="REG_SZ" Value="LocalSystem" />
 <RegistryValue Name="Description" Type="REG_SZ" Value="Служба протокола динамической настройки узла Windows" />
 <RegistryValue Name="Tag" Type="REG_DWORD" Value="0" />
 <RegistryValue Name="Data" Type="REG_BINARY" SizeInBytes="32" Value="f0dd5c3aeda155767042fa9f58ade24681af5fbd45d5df9f55a759bd65bc0b7e" />
 <RegistryValue Name="Scheme" Type="REG_BINARY" SizeInBytes="16" Value="dcef62f71f8564291226d1628278239e" />
 <RegistryValue Name="Info" Type="REG_BINARY" SizeInBytes="32" Value="55926164986c6020c60ad81b887c616db85f191fda743d470f392bb45975dfeb" />
 </RegistryKey>

在函数最先启动前,木马Trojan.Belonard.6会搜检WinDHCP效劳注册表的Tag和Data参数。Data参数必需含有用于天生AES Key的数组。若是没有,木马就运用openssl库来天生32随机字节,用于天生加密key。以后,木马会读取WinDHCP效劳的Info和Scheme参数。在Scheme中,木马生存了4个参数,都运用AES加密,info生存了已装置延续列表的SHA256哈希值。

Trojan.Belonard.6会解密C2效劳器的地点oihcyenw.valve-ms[.]ru,并实验与效劳器竖立衔接。若是衔接失利,木马就运用DGA来天生.ru zone内的域名。然则域名天生代码中存在毛病,因而没法为木马开发者竖立域名。

在发送加密的信息后,木马从效劳器处吸收了相应音讯,解密并生存到%WINDIR%\System32\。数据中含有木马wmcodecs.dll (Trojan.Belonard.8)和ssdp32.dll (Trojan.Belonard.9)。

Belonard还会在装备上装置新的游戏客户端,这是由Trojan.Belonard.8和Trojan.Belonard.6完成的。

Trojan.Belonard.8会初始化一个含有关于Counter-Strike 1.6客户端文件名和SHA 256哈希的容器。Trojan.Belonard.6会最先搜刮装置的游戏客户端。若是木马找到运转的客户端,就依据从Trojan.Belonard.8吸收的数据搜检文件和SHA 256哈希值的列表。若是不婚配的话,Trojan.Belonard.8会完毕客户端历程,然后开释hl.exe文件到游戏目次。该文件只要展现在加载游戏时会显现毛病信息“Could not load game. Please try again at a later time”。如许木马就有时候他替代客户端的文件。然后,木马会用事情文件替代Hl.exe,如许游戏启动时就会涌现毛病了。

木马会删除以下客户端文件:

<path>\\valve\\dlls\\*
 <path>\\cstrike\\dlls\\*
 <path>\\valve\\cl_dlls\\*
 <path>\\cstrike\\cl_dlls\\*
 <path>\\cstrike\\resource\\*.res
 <path>\\valve\\resource\\*.res
 <path>\\valve\\motd.txt
 <path>\\cstrike\\resource\\gameui_english.txt
 <path>\\cstrike\\resource\\icon_steam.tga
 <path>\\valve\\resource\\icon_steam.tga
 <path>\\cstrike\\resource\\icon_steam_disabled.tga
 <path>\\valve\\resource\\icon_steam_disabled.tga
 <path>\\cstrike\\sound\\weapons\\fiveseven_reload_clipin_sliderelease.dll
 <path>\\cstrike_russian\\sound\\weapons\\fiveseven_reload_clipin_sliderelease.dll
 <path>\\cstrike_romanian\\sound\\weapons\\fiveseven_reload_clipin_sliderelease.dll

依据操纵体系的言语设定,木马会下载英文和俄文的游戏菜单文件。

木马的payload是在用户装备上罗列大批的捏造的游戏效劳器。为此,木马会将游戏客户端的相干信息转移到开发者的效劳器,效劳器会相应竖立捏造效劳器的加密参数。

反恐精英0 day,被用于流传Belonard木马

Trojan.Belonard.9会竖立署理游戏效劳器并有Steam API注册。游戏效劳器端口是从效劳器指定的game_srv_low_port的最低值最先递次界说的。效劳器还会设置fakesrvbatch的值,该值巨顶了协定模拟器线程的数目。模拟器支撑到Goldsource引擎游戏效劳器的基础要求:A2S_INFO, A2S_PLAYER, A2A_PING, 吸收challenge steam/non-steam client要求等。在相应connect敕令后,木马就会追踪来自客户端的第一个和第二个包。

在交流这些包后,木马会发送末了一个包svc_director,能够启动CS客户端恣意敕令的实行。该破绽从2014年发明至今一向没有修复。实验衔接到游戏署理效劳器后,玩家会被重定向到歹意效劳器。以后,木马开发者能够应用用户游戏客户端的破绽来装置Trojan.Belonard。然则Trojan.Belonard.9也有一个bug,能够用来检测木马捏造的游戏效劳器。并且在Game列,捏造的效劳器有一个字符串Counter-Strike n,n的范围在1到3之间。

反恐精英0 day,被用于流传Belonard木马

加密

Belonard运用加密来在木马中生存数据,和与效劳器举行通讯。它会生存C2效劳器的加密名,一些代码和库名。老版本的木马运用的另一个算法来加密代码。Trojan.Belonard.2中的解密算法以下所示:

def decrypt(d):
   s = ''
   c = ord(d[0])
   for i in range(len(d)-1):
     c = (ord(d[i+1]) + 0xe2*c - 0x2f*ord(d[i]) - 0x58) & 0xff
   s += chr(c)
   return s

老版本的解密算法:

def decrypt(data):
   s = 'f'
   for i in range(0,len(data)-1):
     s += chr((ord(s[i]) + ord(data[i]))&0xff)
   print s

Belonard运用一个很庞杂的加密方法来与C2效劳器交流数据。在发送信息到效劳器之前,木马会将每一个模块酿成分歧的构造。网络的数据会用歹意软件中生存的RSA公钥加密。但RSA只对数据的前342字节举行加密,若是模块发送的包的数据大于342字节,只要前342字节会被加密,剩下的数据会用AES加密。


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明反恐精英0 day,被用于流传Belonard木马
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址