从各种密码到电子文档的副本,可以说任何用户数据,都是黑客们感兴趣的东西。原因很简单,几乎任何用户数据都可以用来获取非法收益。
举例来说,被盗的密码就可以被用来劫持用户的账户,进而将账户下的资金全都转移到黑客的账户下。如果黑客们愿意,他们也可以将这些数据转手卖给别人,直接将数据换成钱。
据卡巴斯基实验室最新公布的数据,仅在今年上半年,就有超过94万名用户遭遇了旨在窃取保存在他们计算机上的各种数据的恶意软件攻击,主要集中在俄罗斯、德国、印度、巴西、美国和意大利。
图1.信息窃取恶意软件攻击分布图
此类恶意软件通常被称为“Stealer Trojans(信息窃取木马)”或“Password Stealing Ware(PSW,密码窃取程序)”,一旦成功感染目标计算机,就能窃取包括密码、文件在内的各种用户数据。
在暗网黑客论坛上,我们经查都会看到有关此类恶意软件的广告,卖家往往也都会详细地列出自家“产品”的具体功能。
图2.暗网黑客论坛上的信息窃取恶意软件广告
总的来说,大多数信息窃取恶意软件都具有如下功能:
(1)从浏览器抓取数据:
(2) 复制文件:
(3)收集系统信息:
(4)窃取各种软件的账号和密码,如FTP客户端、VPN、RDP等
(5)截屏
(6)从互联网下载文件
值得一提的是,类似于Azorult(卡巴斯基实验室在超过25%的被攻击用户的计算机上都检测到了Azorult)这样的多功能信息窃取恶意软件,几乎可以获取受感染计算机上的所有数据:
为什么要专门收集位于桌面上的文件?这是因为大多数用户通常都会把常用的文件保存在桌面上。比如,常用的密码一般都会被保存在.txt文件里,而像.doc这样的Office文档则很可能包含有用户公司的机密信息。
图3. Azorult的攻击分布图
在窃取浏览器数据(密码、支付卡信息、自动填充数据)方面,几乎所有的信息窃取恶意软件都采用了大致相同的方式。
Google Chrome和基于Chromium的浏览器
众所周知,在基于Chromium的浏览器中,保存的密码都受到了DPAPI(Data Protection API)的保护,这是通过SQLite数据库来实现的。只有创建这些密码的管理员用户才能够从SQLite数据库中提取它们,而且只能在加密它们的计算机上提取。
然而,对于已经成功侵入计算机的信息窃取恶意软件来说,这并不能成为阻碍,因为它们本身就是以管理员用户权限运行的。按照如下步骤执行,它们就能够提取浏览器中保存的数据:
图4. 信息窃取木马Arkei的源代码片段(用于解密从基于Chromium的浏览器中窃取的数据)
就这样,无论是保存的密码,还是支付卡信息或浏览历史记录,都能够被窃取并随时发送到由黑客们控制的服务器上。
Firefox和基于Firefox的浏览器
基于Firefox的浏览器的在数据加密上略有一些不同,但对信息窃取恶意软件来说,获取它们的过程同样简单。
在Firefox浏览器中,加密使用了Network Security Services(一组Mozilla用来开发安全软件的库)和nss3.dll库。
与基于Chromium的浏览器一样,信息窃取恶意软件从浏览器中提取保存的数据的过程如下:
图5.信息窃取木马Orion的源代码片段(用于解密从基于Firefox的浏览器中窃取的数据)
IE和 Edge浏览器
在IE 4.X到6.0版本中,用户的密码和自动填充数据都保存在所谓的Protected Storage受保护存储区域中。为了提取这些数据,信息窃取恶意软件需要加载pstorec.dll库。
IE 7和8版本使用了略有不同的方法:使用的存储区域被称为“Credential Store”,并且使用进行了SALT加密。不过,由于SALT值是固定的,导致信息窃取恶意软件能够通过调用相同的CryptUnprotectData函数来获取所有保存的密码。
虽然IE 9和Edge使用了一种被称为“Vault”的新型存储方式,但信息窃取恶意软件仍能够通过vaultcli.dll并调用几个函数来提取用户数据。
在日常生活和工作中,我们常常会将一些重要的数据保存在浏览器中(比如,允许账号和密码自动填充),主要就是为了图个方便。
卡巴斯基实验室的这份报告则给我们提了个醒,目前市面上的大多数浏览器所使用的数据保护方法,对于信息窃取恶意软件来说似乎并没有多少用处。
因此,建议大家还是尽量不要将重要的数据保存在浏览器中的好。如果已经养成了这个习惯,那么一定不要下载并运行可疑文件,也不要点击可疑电子邮件中的不明链接。