在11月30日,苹果为macOS XProtect反恶意软件系统添加了一个新的签名——OSX.HiddenLotus.A,但并未就这个新的恶意软件做出过多的说明。
不过,如此操作只能引发安全研究人员更大的兴趣。在当天晚些时候,安全研究员Arnaud Abbati就公布了他找到的HiddenLotus样本。
伪装成文档文件的恶意软件HiddenLotus
HiddenLotus的滴管组件是一个名为“Lê Thu Hà (HAEDC).pdf”的应用程序,它会把自己伪装成Adobe Acrobat文件。
这种行为让我们很容易联想到Mac OS X中的文件隔离功能。苹果在Leopard(Mac OS X 10.5)中引入了这个功能,它使得XProtect会使用特殊的元数据来标记从网上下载的文件,以表明这个文件已经被“隔离”。当Mac用户试图打开这个文件时,如果它是一个可执行文件(无论任何形式),系统都会发出警告。
苹果引入这个功能是出于为用户的安全考虑。自2009年以来,很多恶意应用程序开始通过伪装成文档文件来发起攻击。而引入这个功能就是为了解决这个问题,它可以确保用户知道自己正在打开是一个可执行文件,而不是一个文档文件。
虽然,这个功能给Mac用户带来了一定的安全保障。但恶意软件开发者并会仍由这种攻击技巧就此终结,相反,他们长期一直在对这个攻击技巧进行改造升级。
在今年早些时候,Check Point的安全研究人员就在mac OS系统上发现了一款恶意软件OSX/Dok。它伪装成Microsoft Word文档,通过网络钓鱼电子邮件进行传播。它可以监听用户所有的互联网通信,包括安全网站。
HiddenLotus是后门程序OceanLotus的变种?
HiddenLotus最初被怀疑是后门程序OceanLotus(海莲花)的最新变种。OceanLotus在今年夏天早些时候被发现的,通过伪装成Microsoft Word文档针对越南发动攻击。
Abbati随后发现,HiddenLotus有自己一些独特的地方。与过去的恶意软件不同,HiddenLotus并没有通过隐藏.app扩展名来隐藏它是一个应用程序。
这里有一个奇怪的地方,虽然HiddenLotus采用的扩展名是.pdf,但依然被认定为应用程序。在经过仔细观察后,Abbati发现了一些异样。扩展名.pdf中的“d”实际上不是英文字母“d”,而是罗马数字“D”的小写,代表数字500。
这个新颖的地方也是HiddenLotus与其他恶意软件区别最大的地方,在Abbati向苹果咨询后了解到,mac OS有一个令人惊讶的地方:系统判定文件是否为应用程序并不依据于文件是否拥有一个.app扩展名。
mac OS的应用程序机制使得伪装无效
Abbati了解到,mac OS中的应用程序实际上是一个具有特殊内部结构的文件夹,它被称为bundle。具有正确结构的文件夹就只会是一个文件夹,但如果给它一个.app或者其他非文档扩展名,这种正确结构就将被破坏,而变成bundle。
换句话说,文件夹将立即变成一个应用程序。这就是为什么HiddenLotus即使没有.app扩展名依然被认定为应用程序的原因。
这也意味着,无论恶意软件开发者如何通过字符上的修改来将恶意应用程序伪装文档文件,都无法绕过mac OS的文件隔离功能。当Mac用户双击文件时,伪装的文件依旧会被警告为应用程序,而非作为文档文件直接打开。
因此,无论是HiddenLotus本身还是它所采用的技巧都不太可能对mac OS造成太大的威胁。另外,透过HiddenLotus也让我们对mac OS的应用程序结构和文件隔离功能有了一个全新的认识。
本文由 黑客视界 综合网络整理,图片源自网络;转载请注明“转自黑客视界”,并附上链接。
本文暂时没有评论,来添加一个吧(●'◡'●)