Satan病毒被揭密似乎已经不是一个秘密了,很多厂商包括瑞星,360,腾讯等公司相继推出了解密的工具。让还是小白的我有了很大的兴趣。于是查看他们的分析报告,病毒,其实仅仅是能对一款或者指定的几款进行解密。原因很简单,使用的对称加密密钥,而且能够找到并重组。有了密钥再解密就不是很难了。自己写了个程序用来专门解密Satan3.1病毒。该病毒的特性是在加密文件的后尾会加上HardwareID和Public两个数值,使用的是RC4加密。把源码发出来和大家分享下,小弟C写的很烂,大神勿喷。
为了加快加密的速度加密方式为如下两种:
(1)特殊后缀,完全加密。
(2)其它后缀,部分加密,加密大小的算法 CryptSize = (FileSize / 2000) *1000,约为文件的二分之一。
举个例子,文件小于等于100000000字节时,zip格式的压缩包就会被完全加密,而RAR格式的只会被加密大约二分之一,因为zip是病毒指定的特殊后缀,而RAR不在列表中。
(1)特殊后缀,完全加密。
(2)其它后缀,部分加密,加密大小的算法 CryptSize = (FileSize / 5000) *1000,约为文件的五分之一。
举个例子,文件大于100000000字节时,zip格式的压缩包就会被完全加密,而RAR格式的 只会被加密大约五分之一,因为zip是病毒指定的特殊后缀,而RAR不在列表中。
特殊后缀包括:
sql, zip, php, asp, jsp, cpp, ini, aspx, cs, py, h, vbs, bat, conf, sh, inc, e, c, pl, csv, asm, doc, docx, xls, xlsx, ppt 这些后缀没有
以下后缀不会被加密:
Dbger, cab, pol, dll, msi, exe, lib, iso, bin, tmp, log, ocx, chm, dat, sys, dic, myd, sdi, lnk, gho, pbk
Satan病毒CryptAPI进行加密,加密的算法是RC,密钥结构如下:
[HardWareID]+k_str1+k_str2+k_str3+[PUBLIC]
k_str1, k_str2, k_str3都是硬编在程序当中的:
k_str1 = “dfsa#@FGDS!dsaKJiewiu*#&*))__=22121kD()@#(*#@#@!DSKL909*(!#!@AA”
k_str2 = “*@#AdJJMLDML#SXAIO98390d&th2nfd%%u2j312&&dsjdAa”
k_str3 = “@!FS#@DSKkop()(290#0^^^2920-((__!#*$gf4SAddAA”
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2019-2-2 13:13
被kanxue编辑
,原因: