欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

一个纯JS脚本的文档敲诈者剖析(附解密工具)

来源:本站整理 作者:腾讯电脑管家 时间:2016-07-15 TAG: 我要投稿

9、遍历文件,当文件名后缀为“.locked”或者文件名中包含“~”、“$”时,同样也会过滤不加密;文件为如下后缀时,便会成为加密的目标文件:

.doc, .xls, .rtf, .pdf, .dbf, .jpg, .dwg,
.cdr, .psd, .cd, .mdb, .png, .lcd, .zip, .rar, .csv

pic13

10、把文件加密为后缀名为”.locked”的文件,如123.jpg生成为123.jpg.locked

pic14

11、加密完成后,创建注册表HKCU\RAA\Raa-fnl\并且将值设置为beenFinished;同时在C盘根目录下创建!!!README!!!*.rtf文件,用写字板打开,提示敲诈信息。

pic15

pic16

pic17

0x02 加密分析


该敲诈者会把所有的文档都用AES-256AES-256进行加密,下面是对加密过程的详细分析。

1、从http:// datagiverd.com/mars9.php?id=XXXXXXXXX – RAA获取相关加密信息。

返回数据以逗号分为两段,第一段长度为2000,用于生成加密密钥;第二段则为用于敲诈的比特币钱包地址:

pic18

2、加密之前,首先生成32个0-2000的随机数, 生成序列A;然后以序列A中每个数作为地址,在服务器返回的长度2000的数据中,获得该地址的值,生成长度同为32的序列B,序列B将作为加密密钥;之后重复该过程,生成加密IV。

pic19

3、对于不用大小的文件,会有不同的加密逻辑,主要分为4种:

  1. 文件大小约在6K-5M之间
  2. 文件大小约在5M-500M之间
  3. 文件大小小于6K
  4. 文件大小大于500M

加密完成后,都会在文件末尾附加一段数据,形如:

IDNUM=[ID]KEY_LOGIC=[KEY_L]IV_LOGIC=[IV_L]LOGIC_ID=[NUMBER]

  1. IDNUM:用户机器ID
  2. KEY_LOGIC:用于生成加密密钥的随机码
  3. IV_LOGIC:用于生成密钥向量的随机码
  4. LOGIC_ID:标识该文件所用的加密逻辑

pic20

1)文件大小约在6K-5M之间(LOGIC_ID=1)

在[2000, 2040]之间取随机数n作为长度,将文件数据分割为5块,生成如下结构的二维数组data:

n n n
size/2-3060 size-(size/2-3060)-3n  

文件原数据顺序为:data[0][0]→data[1][0]→data[0][1]→data[1][1]→data[0][2]

之后仅对data[0]进行加密,即加密data[0][0]、data[0][1]、data[0][2],以“=END=OF=HEADER=”作为结尾;后面直接附加上data[1],即未加密的data[1][0]、data[1][1]。

pic21

pic22

pic23

2)文件大小小于6K(LOGIC_ID=2)

对于小于6K的文件,直接将文件所有数据进行加密:

pic24

3)文件大小约在5M-500M之间(LOGIC_ID=3)

在[90000,125000]中取随机数n,在原文件数据开头和结尾取长度为n的两段数据,进行加密。

other

pic26

上一页  [1] [2] [3] [4]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载