社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 1345阅读
  • 2回复

[分享]Crysis勒索病毒变种-.wallet文件后缀病毒分析报告

楼层直达
z3960 
级别: 茶馆馆主
发帖
770868
飞翔币
207694
威望
215657
飞扬币
2511641
信誉值
8

一、样本简介   CrySiS勒索病毒在2017年5月万能密钥被公布之后,消失了一段时间,最近又发现这类勒索病毒的新的变种比较活跃,攻击方法同样是通过远程RDP爆力破解的方式,植入到用户的服务器进行攻击,其加密后的文件的后缀名为.wallet,CrySiS采用AES+RSA的加密方式。 二、现象描述   该病毒感染过后会创建多个窗口      文件加密方式    1.1 样本信息 病毒名称:哈希值 所属家族:Crysis MD5值:4A0FF6D33C45A670E23C924435905F0C SHA1值:2CF9750907778F553D187C3FA44DE263BA3BEAD9 CRC32:1536561E 1.2 测试环境及工具 环境:Windows 7 32位 工具:火绒剑,OD,IDAPEID,010Editor 病毒行为: 1)  绘制窗口、获取登录用户信息、枚举局域网服务器、判断当前计算机语言 流程图: 获取登录用户信息 枚举局域网服务器 判断电脑语言 2)  发现原始文件数据被修改,在0x400000内存地址上下硬件写入断点,发现构造shellcode通过LoadLibrary函数加载Kernel32.dll,然后利用GetProcAddress动态获取VirtualProctect等函数地址。 3)  在shellcode中动态调用VirtualAlloc申请内存,把新的变体内容拷贝到内存,调用VirtualProctet修改内存属性,把原程序地址空间清零,获取Crysis病毒变种的pdb文件,再使用新的变体填充,实行“换体”操作,阻止IDA静态分析。 4)  根据参数是否为1,分别创建互斥体变量Globalsyncronize_107MKRA和Globalsyncronize_107MKRA,防止被多次运行、利用OpenProcessToken、AdjustPrivilege等函数执行进程提权操作。 5)  通过RC4解密字符串,得到进程名和服务列表名,创建一个线程后,建立服务控制管理器连接,遍历服务,关闭服务更新,判断是否需要关闭服务,创建进程快照,对比关闭相应进程。 进程名:1c8.exe、1cv77.exe、outlook.exe、postgres.exe、mysqld-nt.exe、mysqld.exe、sqlservr.exe。 关闭进程 关闭服务更新 服务名:FirebirdGuardianDefaultInstance、FirebirdServerDefaultInstance、sqlwriter、mssqlserver、sqlserveradhelper。 6)  拷贝病毒文件到以下目录: %windir%System32 %appdata% %sh(Startup)% %sh(Common Starup)% 相关进程 配置文件 7)  HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun注册表创建三个键值,添加启动项。 8)  通过RC4解密“mode con cp select=1251 vssadmin delete shadows /all /quiet Exit”删除卷影备份文件命令字符串,创建cmd.exe进程,执行该命令,防止用户通过还原磁盘的方式恢复文件。 9)  创建线程RC4解密获取“ABCDEFGHIJKLMNOPQRSTUVWXYZ”字符串,获取本地磁盘。通过RC4解密出343种该病毒可支持的文件加密格式文件后缀、不加密保障系统正常运行的文件、感染info.hta文件等 343种可加密文件后缀 .1cd;.3ds;.3fr;.3g2;.3gp;.7z;.accda;.accdb;.accdc;.accde;.accdt;.accdw;.adb;.adp;.ai;.ai3;.ai4;.ai5;.ai6;.ai7;.ai8;.anim;.arw;.as;.asa;.asc;.ascx;.asm;.asmx;.asp;.aspx;.asr;.asx;.avi;.avs;.backup;.bak;.bay;.bd;.bin;.bmp;.bz2;.c;.cdr;.cer;.cf;.cfc;.cfm;.cfml;.cfu;.chm;.cin;.class;.clx;.config;.cpp;.cr2;.crt;.crw;.cs;.css;.csv;.cub;.dae;.dat;.db;.dbf;.dbx;.dc3;.dcm;.dcr;.der;.dib;.dic;.dif;.divx;.djvu;.dng;.doc;.docm;.docx;.dot;.dotm;.dotx;.dpx;.dqy;.dsn;.dt;.dtd;.dwg;.dwt;.dx;.dxf;.edml;.efd;.elf;.emf;.emz;.epf;.eps;.epsf;.epsp;.erf;.exr;.f4v;.fido;.flm;.flv;.frm;.fxg;.geo;.gif;.grs;.gz;.h;.hdr;.hpp;.hta;.htc;.htm;.html;.icb;.ics;.iff;.inc;.indd;.ini;.iqy;.j2c;.j2k;.java;.jp2;.jpc;.jpe;.jpeg;.jpf;.jpg;.jpx;.js;.jsf;.json;.jsp;.kdc;.kmz;.kwm;.lasso;.lbi;.lgf;.lgp;.log;.m1v;.m4a;.m4v;.max;.md;.mda;.mdb;.mde;.mdf;.mdw;.mef;.mft;.mfw;.mht;.mhtml;.mka;.mkidx;.mkv;.mos;.mov;.mp3;.mp4;.mpeg;.mpg;.mpv;.mrw;.msg;.mxl;.myd;.myi;.nef;.nrw;.obj;.odb;.odc;.odm;.odp;.ods;.oft;.one;.onepkg;.onetoc2;.opt;.oqy;.orf;.p12;.p7b;.p7c;.pam;.pbm;.pct;.pcx;.pdd;.pdf;.pdp;.pef;.pem;.pff;.pfm;.pfx;.pgm;.php;.php3;.php4;.php5;.phtml;.pict;.pl;.pls;.pm;.png;.pnm;.pot;.potm;.potx;.ppa;.ppam;.ppm;.pps;.ppsm;.ppt;.pptm;.pptx;.prn;.ps;.psb;.psd;.pst;.ptx;.pub;.pwm;.pxr;.py;.qt;.r3d;.raf;.rar;.raw;.rdf;.rgbe;.rle;.rqy;.rss;.rtf;.rw2;.rwl;.safe;.sct;.sdpx;.shtm;.shtml;.slk;.sln;.sql;.sr2;.srf;.srw;.ssi;.st;.stm;.svg;.svgz;.swf;.tab;.tar;.tbb;.tbi;.tbk;.tdi;.tga;.thmx;.tif;.tiff;.tld;.torrent;.tpl;.txt;.u3d;.udl;.uxdc;.vb;.vbs;.vcs;.vda;.vdr;.vdw;.vdx;.vrp;.vsd;.vss;.vst;.vsw;.vsx;.vtm;.vtml;.vtx;.wb2;.wav;.wbm;.wbmp;.wim;.wmf;.wml;.wmv;.wpd;.wps;.x3f;.xl;.xla;.xlam;.xlk;.xlm;.xls;.xlsb;.xlsm;.xlsx;.xlt;.xltm;.xltx;.xlw;.xml;.xps;.xsd;.xsf;.xsl;.xslt;.xsn;.xtp;.xtp2;.xyze;.xz;.zip;​​ 不加密保障用户操作系统正常的文件 boot.ini;bootfont.bin;ntldr;ntdetect.com;io.sys;10) 计算RSA公钥的SHA1结果,通过GetVolumeInformationW函数获取硬盘序列号,函数405690:连续两次通过RDTSC指令获取CPU自启动以来的周期数,生成0x20字节的随机数,计算SHA1值;使用RC4加密,RC4加密的结果为后面对文件加密的AES密钥。通过函数405b80进行RSA加密,初始IV随机生成16字节,再用SHA1加密生成IV 1、硬盘序列号: 2、获取RSA_SHA1: 随机生成0x20字节的随机数,计算SHA1值,RC4加密: 在这里插入图片描述0x20的RC4加密的随机密钥+32字节处填写硬盘序列号+20字节是RSA——SHA1的值: 11) 创建文件加密线程函数4033b0,先判断文件大小是否大于0x180000, 1、 创建加密线程、判断文件大小    2、如果文件小于0x180000: 创建加密文件,利用ReadFile将文件读入内存: 3、取16字节,每四字节倒序: 4、与IV进行xor运算: 5、进行AES加密文件数据,写入加密文件 6、在文件末尾利用memset函数初始化0x20字节,并填充固定数据 再把文件名+107MKR+文件补齐长度+0x20RSA_SHA1的值+0x10AES_IV+0x80RSA加密AES_Key+(0x20+文件名长度) 7、利用SetEndOfFile设置文件末尾、设置文件属性、利用DeleteFile删除原文件 8、如果文件大于0x180000: 利用MoveFile进行AES加密操作,直接写入文件: 总结:近几年勒索病毒变种速度极快,常采用RSA+AES等成熟算法加密文件,不易破解,并且用户一旦中招,通常情况下只能支付赎金,黑客也不一定会帮你解密,危害性巨大。 防范方法: 1、对重要数据要备份文件 2、不要浏览非法网站,接受来历不明的软件 3、开启防火墙,及时更新杀毒工具 4、重命名vssadmin.exe进程,防止勒索病毒利用它一次性清除文件的卷影副本 5、关闭不必要的端口,如:445、135、139、3389等
我不喜欢说话却每天说最多的话,我不喜欢笑却总笑个不停,身边的每个人都说我的生活好快乐,于是我也就认为自己真的快乐。可是为什么我会在一大群朋友中突然地就沉默,为什么在人群中看到个相似的背影就难过,看见秋天树木疯狂地掉叶子我就忘记了说话,看见天色渐晚路上暖黄色的灯火就忘记了自己原来的方向。
级别: 超级版主
发帖
830655
飞翔币
224558
威望
224618
飞扬币
2423780
信誉值
0

只看该作者 1 发表于: 2019-09-05
来看一下
级别: 超级版主
发帖
830655
飞翔币
224558
威望
224618
飞扬币
2423780
信誉值
0

只看该作者 2 发表于: 2019-09-05
不错,了解了