本文详细先容了对Hexedglobals.3793系列基于PHP的恶意软件和反混淆历程的研究。Hexedglobals.3793系列恶意软件的变体为:Kidslug,php.obfuscated!, php.malware.GLOBALS.003 and php.malware.GLOBALS.004。

考察靠山

我获得了一个WordPress网站的备份以托管在开发区域中,在现实历程中我安装了一个平安扫描程序,并在几秒钟内识别出了名为hexedglobals.3793的署名,熏染被嵌入网站的两个单独区域中。

扫描程序并没有显示太多,它已突出显示正在使用变量编码,而且它是恶意软件使用的可疑特征。然则它确着实检测方面做得很好,若是你有WordPress网站,我建议你安装一个插件以检测此类问题。

剖析历程

因此,首先举行一次快速的Google搜索,以领会有关此署名的信息,不外我一无所获。因此,我最先研究代码自己以及可以发现的内容。

我浏览了一下这个主题,发现MITRE攻击页面在提供有关使用Web Shell的组类型和野外攻击的上下文信息方面异常利便。

经由检查,混淆的Web Shell是攻击者在Web服务器上保持持久性的一种方式。

凭证我的劈头剖析,我能够确定它是一个Web Shell,而且攻击者通过某种不平安因素将其注入了网站。看起来像个文件,但它只是个文件吗?

下面显示了嵌入其中的看似无害的文件,然则,黑客已经将恶意剧本注入了一个乍一看不到的地方。你需要转动才气看到它。这是我在研究的样本中注重到的一个常见属性,即它们通过在原始代码与其自己之间增添较大的空间而隐藏了代码。在注入的行的末尾与恶意软件的最先之间约莫有500个字符的距离。

若是识别出署名,而且网站扫描程序可以在服务器上的文件目录中搜索(查找非公共php文件),则网站扫描程序可能会检测到此类恶意文件。我找到的一些样本是由于它们被注入的位置,代码被带到主要的面向民众的页面,就像在网上搜索特征时发现的那样。

有一些异常庞大的web shell可以逃避IDS/ IDPS、日志甚至行为剖析。你可以在web服务器日志中寻找可疑的行为,然则攻击者可能会异常狡诈,并通过向服务器发送不被注重的下令来使用差其余方式来隐藏其踪迹。这种行为的示例可以是发送POST请求,或者通过使用用户署剃头送下令。

防止它们的一个好方式是首先增强web服务器和客户端代码,这样就不能能有web shell注入。从一最先就没有破绽确实有助于防止此类事宜的发生。

另外,最好通过使用文件完整性监控来损坏持久性。这将有助于发现任何转变。不幸的是,在WordPress网站上,由于插件上经常发生更新,有时未经培训的人有时会很贫苦,由于插件的更新可能会被遗漏。此外,web shell被注入到通俗的模板、插件或服务器上被命名为无害的文件中,这使得它们更难被检测到。

混淆会隐藏代码自己并使其唯一,从而使检测变得加倍难题,因此不会被署名类型检测所识别。除此之外,它通常被压缩到一行,以使其对执行的操作不太透明。因此,在查看文件时,你可能看不到注入。

有一些在线工具可以提供混淆处置,尚有Kali内部的工具(例如Weevley)和其他此类工具(例如FOPO)。然则,它们天生和显示混淆代码的方式与我发现的方式差异。我实验了一些差其余网站和方式来快速解决混淆问题,但都无济于事,然则我至少掌握了一些初始信息,可以辅助我入门。我最先以为我需要手动举行混淆处置。

FOPO混淆代码与发现代码

其他野外攻击

现在,我正在考察的网站受到两次熏染,因此我有足够的资源来查找相似之处并与其他网站举行对照。

通过一些Google Dorking和NerdyData.com的使用,我能够在互联网上识别其他受熏染的网站。通过搜索{" \x47\x4c\x4fB\x41\x4c\x53 "}的十六进制字符串,我可以找到更多的样本。这确实带来了误报,但也带来了其他类似但不属于统一家族的恶意软件变体。通常这种类型的熏染不会在客户端果然。然则,如上所述,由于WordPress引擎将页面整合在一起的方式,我能够找到一些内容。当攻击者注入某些主题页面或插件时,由于该页面是通过CMS显示的,以是它们最终可能在公共页面上可见。

尚有其他网站在其主要位置举行了类似的注入。

你也可以通过GitHub搜索字符串,如“\x47\x4c\x4fB\x41\x4c\x53”。这样网上有许多代码,由于开发职员可能会为了真实的目的使用混淆处置,然则我确实发现了问题。然而,这不是我唯逐一次看到这种情形,随着种种插件成为目的,用户有时会向插件所有者埋怨他们已被黑客入侵。

找到的四个主要样本。

有一些细微的差异,在方括号内是混淆的代码-变量名称和初始标识号。最初的可识别号码可能是递增的,由于我在统一台服务器上找到499和497。每个恶意软件样本最先时的数字都纷歧样,而且可能指向攻击者的特定攻击,以辅助他们举行下令和控制。

发现其他变体

如上所述,我没有在原始的带属性名称hexedglobals.3793上找到太多信息,但我在诸如Sucuri的恶意软件署名列表之类的网站中举行了搜索,并手动查看了显示的混淆样本片断。我能够识别出似乎来自统一家族但名称差其余恶意软件。它们在混淆代码的方式上具有相同的模式。我还在客栈交流中发现了类似的内容,并举行了另一个混淆处置。

我注重到,有时十六进制字符串没有为x4fB大写,因此是x4fB {" \x47\x4c\ x4fB \x41\x4c\x53 "}。

以下是我发现的其他属性名称:

hexedglobals.3793 | Kidslug | php.obfuscated! | php.malware.GLOBALS.003 | php.malware.GLOBALS.004

撰写本文时,我在网上举行了一些搜索,发现了一些有趣的内容。看来卡巴斯基在被攻击的服务器上发现了Code29.php和Proxy87.php的类似文件。

关于文件code29.php和proxy87.php。我做了一些考察看看有若干网站有这些文件。似乎有相当多的文件具有其他类似的名称。我在回溯装备上举行了搜索,发现来自\etc目录的其他文件具有相同的编号名堂。

针对澳大利亚状师的Wayback Machine输出

攻击历程

它使用自己的字母来换取代码中需要的字符,这是为了辅助混淆和阻止逆向工程的实验。它还在代码中添加了分外的变量,需要删除这些变量才气显示其真正的个性。

,

USDT跑分网

U交所(www.9cx.net)是使用TRC-20协议的Usdt官方交易所,开放USDT帐号注册、usdt小额交易、usdt线下现金交易、usdt实名不实名交易、usdt场外担保交易的平台。免费提供场外usdt承兑、低价usdt渠道、Usdt提币免手续费、Usdt交易免手续费。U交所开放usdt otc API接口、支付回调等接口。

,

我从许多行代码最先,似乎使用了许多十六进制来笼罩它的结构、变量和行为。在美化代码之后,它确实最先变得更有意义,而且有可能最先识别功效。

手动将十六进制解码成相关变量名,它的结构最先变得显著。

$ GLOBALS变量的使用有许多重复项,还似乎是使用具有编程功效的字母来通过代码中挪用的数字查找字母的位置并举行替换。

黑客获取代码后会举行如下操作。

一旦字母表被破译,就可以清晰地看到变量和函数的界说。执行了另一次查找和替换迭代。早先,这是一个缓慢而艰难的历程,需要频频试验,但正如前面提到的,我现在确立了一个工具来辅助自动化这个历程,将时间从几小时缩短为几秒钟!

这是一种异常简朴但有用的方式,然则看来攻击者已经简化了通讯历程。

通过研究,攻击者只能使用加密密钥来接见后门,然后他们才气通过公布请求中发送的cookie来发送下令。

这种后门称为非对称后门,纵然在果然场所,攻击者也将是唯一使用它的人。

祛除混淆后,我只能领会部门发生的事情。因此,我在下面纪录了原始版本的外观和尺度化版本的外观。在MKorostoff Github的辅助下,我可以最先构建一个更好的图片。用红色突出显示的值显示这些值。假设MKorostoff可能有cookie、日志或其他方式来辅助混淆函数变量。

MKorostoff Github提取

@kielwadner在Weeveley Web Shell上的Sans DFIR峰会上作了先容,在他的幻灯片上,我们可以看到Weeveley在混淆加密历程中肩负着类似的XOR功效。

此外,在看了卡巴斯基的发现后,他们还将类似XOR的函数命名为函数,这注释他们也注重到了这种行为,不幸的是,他们没有提供进一步的剖析。

下一部门将处置加密机制,Mkorostoff谈论说它将执行了两次加密机制。

我以为使用cookie是代码中最伶俐的部门。

若是我们查看Mkorostoff的注释和代码,我们可以看到他用新的变量名替换了一些变量名。这些用绿色标出。$encrypted_text现在被命名为$attack_payload。$decryption_key是cookie的名称。

这是由于攻击有用载荷是通过cookie发送的。cookie名称用于举行解密,一旦cookie值被解密,它就包罗了攻击有用载荷。这有助于验证机制。

其他恶意软件(例如WSO)也具有类似的行为,Sjoerd撰写了一篇很棒的文章,先容了若何绕过webshell取代身份验证。本文先容了他所审阅的代码若何将Cookie与MD5配合使用,以确定准确的身份验证。

代码的最后一部门有一个函数,若是它吸收到“i”,它将显示服务器信息,如php版本。攻击者这样做可能是为了辅助其他事情的自动化。这确实让我想知道,若是现在对PHP 7+版本的服务器PHP版本举行升级,是否某些php C&C工具仍然可以正常事情以及需要多长时间才气更新。当查看B374K webshell时,它说它支持4.5和版本5。在issues选项卡中,您可以看到有人在php 版本7上乐成地使用它。然则github页面在很长一段时间没有更新。在接下来的几年里会公布php的未来版本,看看在这个历程中会更新哪些工具。

最后是评估攻击有用载荷和行动,Mkorostoff将“e”界说为执行下令,将“d”界说为有用载荷。当攻击者提供准确的接见密钥时,它将提议攻击。

可以从团体样本中确立任何署名吗?

在剖析历程中注重我注重到了以下几个特点:

注入恶意软件之前,约莫有500个字符的空缺距离;

所有重复使用全局变量;

它们都使用了相同的十六进制替换混淆手艺;

所有文件在熏染文件的开头都有一个分配的编号,作为某种标识符;

都有相同的纰谬称后门与攻击者交互的伶俐方式;

以下是两个链接,可以辅助你在未来删除和防止泛起本文所讲的类似攻击:

https://codex.wordpress.org/FAQ_My_site_was_hacked;

https://codex.wordpress.org/Hardening_WordPress;

总结

只管从本质上来说攻击原理很简朴,然则攻击者使用了伶俐的身份验证机制来提供一个非对称后门来与其举行通讯。服务器上已经发现了类似恶意软件的攻击痕迹,文件名是code29.php和proxy87.php。在搜索这些文件的历程中,野外似乎已经泛起了类似的熏染。

本文翻译自:https://labs.detectify.com/2019/05/24/investigation-of-php-web-shell-hexedglobals-3793-variants/

逆熵官网

万利逆熵官网(www.ipfs8.vip)是FiLecoin致力服务于使用FiLecoin存储和检索数据的官方权威平台。IPFS官网实时更新FiLecoin(FIL)行情、当前FiLecoin(FIL)矿池、FiLecoin(FIL)收益数据、各类FiLecoin(FIL)矿机出售信息。并开放FiLecoin(FIL)交易所、IPFS云矿机、IPFS矿机出售、租用、招商等业务。

Allbet声明:该文看法仅代表作者自己,与www.allbetgame.us无关。转载请注明:万利矿业(www.ipfs8.vip):针对PHP Web Shell Hexedglobals.3793系列恶意软件剖析溯源
发布评论

分享到:

ipfs矿机合租(www.ipfs8.vip):35岁成名,和大12岁的导演因戏生情,丈夫死后独自养女不愿再醮
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。