安全预警:伪装成合法ionCube编码文件的恶意软件已感染数百个网站

“用指尖改变世界”

针对PHP开发人员来讲,为了保护知识产权或者保护PHP程序文件,他们在很多时候都需要对自己编写的PHP代码进行加密处理,而ionCube则是被广泛采用的一种PHP加密技术。

成立于2002年的ionCube公司并推出了一系列工具来保护使用PHP编程语言编写的软件,使得任何人都无法在未经授权的计算机上查看、更改或者运行PHP程序文件。

具体来讲,ionCube Encoder可以把PHP源代码转换成ByteCode。进行加密授权处理后的PHP代码就不在开源了,必须使用ionCube loader才可以执行加密过的PHP代码。

根据SiteLock公司的说法,数百个网站已经被发现感染了伪装成合法ionCube编码文件的恶意软件。在查看受感染的网站时,SiteLock的研究小组发现了一些可疑的混淆文件,这些文件与合法的ionCube编码文件几乎完全相同。

通常来讲,由于高额的许可成本和较高的兼容性要求,ionCube一般不会被用于恶意目的。但此次似乎出现了例外,研究小组十分确定这些可疑的ionCube编码文件的确是恶意的,至少有700百个网站和7000个文件受到影响。

这些可疑的混淆文件(如“diff98.php”和“wrgcduzk.php”)是研究小组在分析一个受感染的WordPress网站时发现的。对比合法的ionCube文件,如果不仔细查看,我们很难发现有什么不同。

在经过仔细分析和对比后,研究小组发现了一些不同之处:首先,虚假文件采用了一个与合法文件极其相似的函数,它使用了函数“il_exec”,而在合法文件中这个函数应该为“_il_exec”;其次,在虚假文件中还出现了两个并不存在于合法文件中的语句“preg_replace”和“fopen”;最后还有一个相对较为明显的区别,虚假文件的最后一行是return语句,而我们知道合法的ionCube编码文件都以“exit()”结尾。

研究小组指出,尽管虚假文件存在很大程度上的混淆,使得它与合法文件尽可能看起来相似。但是“$ _POST”和“$ _COOKIE superglobals”的大量出现以及文件末尾的eval请求还是揭示了它的真正目的:接受并执行远程代码。

进一步的调查结果显示,发放虚假ionCube编码文件的攻击者不仅将WordPress作为了攻击目标,大量受感染的Joomla和CodeIgniter网站也在之后被发现。

ionCube的研究小组强调,虚假文件理论上几乎可以感染任何运行PHP的Web服务器。一旦解码,虚假的ionCube文件就构成了恶意软件

另外,虚假文件并没有固定的命名模式,即使拥有合法文件命名的“inc.php”和“menu.php”的文件也可能是恶意的

本文由黑客视界综合网络整理,图片源自网络;转载请注明“转自黑客视界”,并附上链接。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180302B0C02300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券