| 关键词: 加密 密钥 文件 黑客 系统 木马 软件 解密工具 向量 AES |
在Windows里很早就有了ransomware(赎金勒索软件),直到Linux中的Linux.Encoder.1,也就是第一个linux勒索软件的出现。这款软件的行为与CryptoWall、TorLocker等臭名昭著的木马软件非常类似。 黑客利用勒索软件的案例 在黑客远程利用热门应用Magento内容管理系统的漏洞后,他会在受害人的Linux机器里运行Linux.Encoder.1。一旦执行成功,这款木马会在/home、/root、/var/lib/mysql这几个目录下进行遍历文件,试图加密里面的文件内容。如Windows下的勒索软件一样,它会使用AES(某对称密钥加密算法)对这些文件内容进行加密,这期间并不会对系统资源占用过大。这个AES对称密钥会用RSA(某非对称加密算法)加密,然后用AES初始化的向量去加密文件。 一旦这些文件被加密,木马会尝试蔓延到系统根目录。它只需要跳过重要系统文件以免玩大发了,所以加密后的操作系统是能够正常启动的。 在这一点上,黑客可以保证用户在不向他们支付费用之前,是无法换取RSA私钥来解密AES对称加密的。然而,这个加密木马有个巨大的漏洞,Bitdefender的研究人员利用它,无需RSA私钥也能解密AES的对称加密。 加密的入门 在2015年,大多数加密型勒索软件木马会采用混合加密算法,来劫持有价值的文件。为了迅速而有效地加密大量数据,这类木马使用了高级加密标准AES。为了避免服务器和肉鸡直接发送的加密密钥被抓包,黑客们会使用AES和RSA混合加密。这些key通常在黑客的服务器上生成,只将公钥发送到肉鸡电脑上。 由于RSA对于大量数据进行加密占用的系统资源更小,公钥本身只会加密一小部分重要信息,那就是AES算法在本地生成的密钥。RSA加密的AES密钥,会利用初始文件权限和AES算法初始化的向量,加密系统里的文件。 价值百万美元的漏洞 我们先前提到过,最关键的AES密钥是在肉鸡电脑上本地生成的。因此,我们逆向了实验室里Linux.Encoder. 1的样本,想研究出密钥和初始化向量生成的方式。我们发现,它并没有采用随机的安全密钥和初始化向量,而是利用libc库里的rand()函数,结合当前系统的时间戳进行加密。这些信息通过检索文件的时间戳,我们能非常容易的获得。通过这个漏洞,不必使用黑客的RSA公钥就能取得AES密钥。 自动解密工具发布 Bitdefender是第一家发布 解密工具 的厂商,该工具会将自动恢复所有被劫持加密的文件。这款工具会通过分析文件,检测出初始化向量和AES密钥,然后对文件进行解密。最后,对那些文件的权限也进行恢复。如果你还能启动你的系统,可以下载这个脚本,并以root用户运行它。 下面是 恢复数据的步奏 : 1.从Bitdefender实验室网站下脚本;(由于勒索软件很可能也影响你的部分系统文件,所以你也许需要用live CD引导,或者从其他机器上挂载受影响的分区。) 2.用/dev/encrypted_partition这样的形式挂载加密分区;3.生成一个加密文件列表,你需要输入下面的命令:
|
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|