• [知乎]火绒 前一天的关于微信支付的病毒说明.


    一、 概述

    昨天(12月1日)突发的"微信支付"勒索病毒,已被火绒安全团队成功破解。被该病毒感染的用户可以下载破解工具,还原被加密的文件。下载地址:

    据火绒安全团队分析,该勒索病毒开始勒索前,会在本地生成加密、解密相关数据,火绒工程师根据这些数据成功提取到了密钥。

    此外,该勒索病毒只加密用户的桌面文件,并会跳过一些指定名称开头的目录文件, 包括"腾讯游戏、英雄联盟、tmp、rtl、program",而且不会感染使用gif、exe、tmp等扩展名的文件。

    值得一提的是,该病毒会利用带有腾讯签名的程序调用病毒代码,来躲避安全软件的查杀。

    "火绒安全软件"已于昨天紧急升级,可拦截、查杀该病毒,广大用户如果遇到新情况,可通过火绒官方论坛、微博、微信公众号等渠道,随时向火绒安全团队反映或求助。

    二、 样本分析

    近期火绒接到用户反馈,使用微信二维码扫描进行勒索赎金支付的勒索病毒Bcrypt正在大范围传播。用户中毒重启电脑后,会弹出勒索信息提示窗口,让用户扫描微信二维码支付110元赎金进行文件解密。病毒作者谎骗用户称"因密钥数据较大如超出个这时间(即2天后)服务器会自动删除密钥,此解密程序将失效",但实际解密密钥存放在用户本地,在不访问病毒作者服务器的情况下,也完全可以成功解密。如下图所示:

    勒索提示窗口

    病毒代码依靠"白加黑"方式被调用,用于调用病毒代码的白文件带有有效的腾讯数字签名。由于该程序在调用动态库时,未检测被调用者的安全性,所以造成名为libcef.dll的病毒动态库被调用,最终执行恶意代码。被病毒利用的白文件数字签名信息,如下图所示:

    被病毒利用的白文件数字签名信息

    该病毒运行后,只会加密勒索当前用户桌面目录下所存放的数据文件,并且会对指定目录和扩展名文件进行排除,不进行加密勒索。被排除的目录名,如下图所示:

    被排除的目录名

    在病毒代码中,被排除的文件扩展名之间使用"-"进行分割,如:-dat-dll-,则不加密勒索后缀名为".dat"和".dll"的数据文件。相关数据,如下图所示:

    被排除的文件扩展名

    目录名和文件扩展名排除相关代码,如下图所示:

    排除目录名

    排除文件扩展名

    值得注意的是,虽然病毒作者谎称自己使用的是DES加密算法,但是实则为简单异或加密,且解密密钥相关数据被存放在%user% AppDataRoamingunname_1989dataFileappCfg.cfg中。所以即使在不访问病毒作者服务器的情况下,也可以成功完成数据解密。病毒中的虚假说明信息,如下图所示:

    病毒中的虚假说明信息

    加密相关代码,如下图所示:

    数据加密

    在之前的用户反馈中,很多用户对勒索提示窗口中显示的感染病毒时间颇感困惑,因为该时间可能远早于实际中毒时间(如前文图中红框所示,2018-08-08 06:43:36)。实际上,这个时间是病毒作者用来谎骗用户,从而为造成来的虚假时间,是通过Windows安装时间戳 + 1440000再转换成日期格式得来,Windows安装时间戳通过查询注册表方式获取,注册表路径为:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionInstallDate。病毒作者使用这个虚假的中毒时间误导用户,让用户误以为病毒已经潜伏了较长时间。相关代码,如下图所示:

    虚假感染时间显示相关代码

  • 相关阅读:
    Appium教程
    ES6对象类型判断
    MyBatisPlus的时间段和模糊查询
    一个div中多个元素垂直居中的一种解决办法
    @JsonFormat与@DateTimeFormat注解的使用
    java日期类型对象通过mybatis向数据库中的存取
    Vue.js单向绑定和双向绑定实例分析
    Maven的使用
    如何将本地的项目提交到码云的远程仓库
    Linux CentOS7 的安装
  • 原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/10069333.html
Copyright © 2020-2023  润新知