针对PHP开发人员来讲,为了知识产权或者PHP程序文件,他们在很多时候都需要对自己编写的PHP代码进行加密处理,而ionCube则是被广泛采用的一种PHP加密技术。
成立于2002年的ionCube公司并推出了一系列工具来使用PHP编程语言编写的软件,使得任何人都无法在未经授权的计算机上查看、更改或者运行PHP程序文件。
具体来讲,ionCube Encoder可以把PHP源代码转换成ByteCode。进行加密授权处理后的PHP代码就不在开源了,必须使用ionCube loader才可以执行加密过的PHP代码。
根据SiteLock公司的说法,数百个网站已经被发现感染了伪装成ionCube编码文件的恶意软件。在查看受感染的网站时,SiteLock的研究小组发现了一些可疑的混淆文件,这些文件与的ionCube编码文件几乎完全相同。
通常来讲,由于高额的许可成本和较高的兼容性要求,ionCube一般不会被用于恶意目的。但此次似乎出现了例外,研究小组十分确定这些可疑的ionCube编码文件的确是恶意的,至少数百个网站和数千个文件受到影响。
这些可疑的混淆文件(如“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”的文件也可能是恶意的。
总体而言,ionCube的研究小组在调查中现有700多个受感染网站,虚假文件超过了7000多个。他们甚至还发现,超过100个稍微不同的虚假文件同时存在于单个站点上。
本文由325棋牌 (www.325games.com)整理发布
网友评论 ()条 查看