精华内容
下载资源
问答
  • wannacry样本,亲测可用。请在虚拟机并且断网环境中测试。仅供学习使用!
  • 针对已感染WannaCry病毒的主机,首先进行断网隔离,判断加密文件的重要性,决定是否格式化磁盘重装系统,还是保持断网状态等待进一步解密进展。 如果内网存在主机无法访问外部网络的情况,需要迅速在内网中添加DNS...

    一、取证特征

    1)网络域名特征

    http://www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com

    2)文件特征

    母体文件

    mssecsvc.exe   
    
    c:\\WINDOWS\\tasksche.exe
    c:\\WINDOWS\\qeriuwjhrf

    3)系统现象

    CPU占用率100%

    4)系统补丁号

    Windows XP SP3    KB4012598
    Windows XP x64 SP2    KB4012598
    Windows 2003 SP2    KB4012598
    Windows 2003 x64 SP2    KB4012598
    Windows Vista Windows Server 2008    KB4012598
    Windows 7    KB4012212
    Windows Server 2008 R2    KB4012215
    Windows 8.1    KB4012213
    Windows 8.1    KB4012216
    Windows Server2012    KB4012214
    Windows Server2012    KB4012217
    Windows Server2012 R2    KB4012213
    Windows Server2012 R2    KB4012216
    Windows 10    KB4012606
    Windows 10 1511    KB4013198
    Windows 10 1607    KB4013429

    二、已感染病毒主机处置

    1)感染主机处置

    针对已感染WannaCry病毒的主机,首先进行断网隔离,判断加密文件的重要性,决定是否格式化磁盘重装系统,还是保持断网状态等待进一步解密进展。

    如果内网存在主机无法访问外部网络的情况,需要迅速在内网中添加DNS解析,将www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com解析到某台内网中可以访问的主机上,确保内网主机可以访问该域名,阻断蠕虫的进一步传播。

    2)病毒清除

    在被感染主机上,需要对蠕虫进行清除:

    1. 关闭进程:

    关闭tasksche.exe进程:

    不完全执行的状态下,还可能有mssecsvc.exe,即最初启动的那个进程,在后续完全执行的状态下,还可能有其他tor等的进程。

    2.删除相关服务:

    (1)删除服务mssecsvc2.0,服务路径:

    C:/WINDOWS/tasksche.exe或者C:/WINDOWS/mssecsvc.bin -m security

    (2)删除hnjrymny834(该服务名可能随机)服务:

    查找对应的路径,在其路径名下删除可执行文件。

    3.清除注册表项:

    在注册表中,删除以下键值:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\hnjrymny834 “C:\ProgramData\hnjrymny834\tasksche.exe”

    或者

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\hnjrymny834

    4.删除病毒文件:

    病毒运行后,释放的文件目录存在于

    C:\ProgramData\hnjrymny834
    C:\Users\All Users\hnjrymny834

    病毒的可执行文件主要有以下文件

    C:\WINDOWS\tasksche.exe
    C:\ProgramData\hnjrymny834\tasksche.exe
    C:\Users\All Users\hnjrymny834\tasksche.exe

    其他病毒相关文件还存在于

    文件夹 PATH 列表:
    C:.
    │  00000000.eky
    │  00000000.pky
    │  00000000.res
    │  @Please_Read_Me@.txt
    │  @WanaDecryptor@.exe
    │  @WanaDecryptor@.exe.lnk
    │  b.wnry
    │  c.wnry
    │  f.wnry
    │  out.txt
    │  r.wnry
    │  s.wnry
    │  t.wnry
    │  taskdl.exe
    │  taskse.exe
    │  u.wnry
    │  
    ├─msg
    │      m_bulgarian.wnry
    │      m_chinese (simplified).wnry
    │      m_chinese (traditional).wnry
    │      m_croatian.wnry
    │      m_czech.wnry
    │      m_danish.wnry
    │      m_dutch.wnry
    │      m_english.wnry
    │      m_filipino.wnry
    │      m_finnish.wnry
    │      m_french.wnry
    │      m_german.wnry
    │      m_greek.wnry
    │      m_indonesian.wnry
    │      m_italian.wnry
    │      m_japanese.wnry
    │      m_korean.wnry
    │      m_latvian.wnry
    │      m_norwegian.wnry
    │      m_polish.wnry
    │      m_portuguese.wnry
    │      m_romanian.wnry
    │      m_russian.wnry
    │      m_slovak.wnry
    │      m_spanish.wnry
    │      m_swedish.wnry
    │      m_turkish.wnry
    │      m_vietnamese.wnry
    │      
    └─TaskData
        ├─Data
        │  └─Tor
        └─Tor
                libeay32.dll
                libevent-2-0-5.dll
                libevent_core-2-0-5.dll
                libevent_extra-2-0-5.dll
                libgcc_s_sjlj-1.dll
                libssp-0.dll
                ssleay32.dll
                taskhsvc.exe
                tor.exe
                zlib1.dll

    三、参考

    http://www.rising.com.cn/2017/eb/
    http://blog.nsfocus.net/wannacry-blackmail-event-disposal-handbook/

    转载于:https://www.cnblogs.com/17bdw/p/9009470.html

    展开全文
  • wannacry

    千次阅读 2019-05-09 12:01:07
    Wannacry分析报告 样本Wannacry 作者 yusakul 时间 2019-05-6 平台 Win10-64 1 样本信息 病毒名称 Wannacry 所属家族 Wannacry 样本名称 ed01ebfbc9eb5bbea545af4d01bf5f...
    样本名 Wannacry
    作者 yusakul
    时间 2019-05-6
    平台 Win10-64

    1 样本信息

    病毒名称 Wannacry
    所属家族 Wannacry
    样本名称 ed01ebfbc9eb5bbea545af4d01bf5f1071661840480439c6e5babe8e080e41aa
    样本类型 PE
    样本大小 3,514,368 bytes
    MD5值 84c82835a5d21bbcf75a61706d8ab549
    SHA1值 5ff465afaabcbf0150d1a3ab2c2e74f3a4426467
    SHA256 ed01ebfbc9eb5bbea545af4d01bf5f1071661840480439c6e5babe8e080e41aa

    2 测试环境及工具

    工具 备注
    VMware® Workstation 15 Pro 分析环境win10_x64
    火绒剑 行为监控
    IDA pro 7.0 静态分析
    Ollydbg 动态分析

    3 分析目标

    3.1 PE文件结构

    使用PEid可以查看程序的PE结构,获取部分信息
    在这里插入图片描述

    3.1.1 导入表

    • kernel32.dll

    导入表中包含有进程、文件操作、加载资源以及内存处理等相关函数。
    在这里插入图片描述

    • Advapi32.dll

    Advapi32.dll是一个高级API应用程序接口。包括了函数与对象的安全性,注册表的操控以及事件日志相关的API函数。
    在这里插入图片描述
    这些函数主要包括三类:注册表相关函数,进程权限修改函数,服务相关函数。

    3.1.2 查找加密算法

    在这里插入图片描述

    • Adler32, CRC32计算校验和算法
    • CryptEncrypt ,CryptDecrypt ,CryptGenKey为Microsoft CryptoAPI
    • Rijndael即AES
    • ZIP2和ZLIB是压缩算法

    3.1.3 查看资源

    在这里插入图片描述

    PK这两个字母开头,有可能是zip文件,将其保存为res.zip

    在这里插入图片描述

    可以打开看到如上内容,就是病毒释放的文件了。

    3.1.4 字符串查找

    IDA反编译样本,查找敏感字符串

    在这里插入图片描述

    在IDA中看到字符串中含有RSA2和AES ,应该是和病毒加密方式相关 ,以及cmd命令。

    3.2 ark工具监测行为

    这里使用的是火绒剑,可以监控系统服务、进程、网络、文件操作、注册表以及各种hook等等。

    虚拟机中运行病毒:

    病毒释放资源段中zip压缩包文件到桌面。经过半分钟左右:

    在这里插入图片描述
    原本的文件被加密,并且开头字母均被设置为WANACRY!
    在这里插入图片描述

    ProcessExplore显示病毒创建了4个子进程

    1557156060834

    火绒剑监控:病毒进程wanacry有修改文件,修改注册表,网络连接行为

    在这里插入图片描述

    执行监控

    • @WanaDecrypor@.exe进程不断创建关闭进程,直观效果便是不断的弹出自己的窗口到最顶端。

    在这里插入图片描述

    • cmd进程:执行cmd命令运行exe与bat

    在这里插入图片描述

    文件监控

    • 释放文件
      在这里插入图片描述

    病毒在系统的每一个目录下释放了@WanaDecryptor@.exe @Please_Read_Me@.txt的文件,在桌面释放了bat文件,在之前也可以看到执行过bat脚本,运行后即删除,还释放了其他文件在桌面。

    • 修改文件

    这里看到对各种文件修改,重命名
    在这里插入图片描述

    注册表监控

    在测试环境中,只有在SOFTWARE键中创建子键成功了- -
    在这里插入图片描述

    网络监控

    病毒尝试连接局域网内的一些ip ,监测端口传播自身
    在这里插入图片描述

    3.3 观察释放文件

    • msg文件夹: 显然是语言包
      在这里插入图片描述

    • Please_Read_Me@.txt:勒索文本
      在这里插入图片描述

    • 其他暂时看不出先放一边吧

    3.4 IDA分析

    找到WinMain函数

    在这里插入图片描述

    粗略分析,得到以下信息
    在这里插入图片描述

    接下来进入各个函数详细分析

    3.4.1 sub_401225

    在这里插入图片描述
    这个函数最后返回了随机生成的字符串,所以可以重命名,便于查看,这里修改为GetRandStr()。

    3.4.2 判断

    在这里插入图片描述
    _p___argc()返回命令行参数个数,即argc,_p___argv()返回指向参数指针的指针,即argv。

    • 判断为参数个数不等于,

    • 第五个参数大于“/i”

    • 在系统目录下创建文件夹
      在这里插入图片描述

    • 将当前模块复制为tasksche.exe,并获取文件属性

    • 创建tasksche.exe进程,并使用互斥体机制作为进程保护
      在这里插入图片描述

    3.4.3 注册表操作

    func_reg函数如下
    在这里插入图片描述

    3.4.4 加载资源段

    func_Resource(0, aWNcry);
    在这里插入图片描述

    资源释放因为不是关注重点,所以大致带过了。

    3.4.5 填入比特币账号

    在这里插入图片描述

    3.4.6 导入秘钥在这里插入图片描述

    • crypt(this, 0, 0, 0):导入秘钥并分配内存
      在这里插入图片描述

    子函数sub_401861
    在这里插入图片描述

    其中函数sub_40182C:
    在这里插入图片描述
    获取句柄,加密服务为Microsoft Enhanced RSA and AES Cryptographic Provider

    此处判断由于lpFileName为0,所以判断结果固定了,使用后一种方式导入秘钥。

    3.4.6 解密t.wnry

    sub_4014A6(this, aTWnry, &size);
    在这里插入图片描述

    解密函数根据自定义的文件格式定位到加密内容,获取加密内容的大小,解密后保存在新开辟的内存中。

    3.4.6 解析解密文件

    sub_4021BD(pefile, size),将解密后的文件的内存句柄和大小传入。
    在这里插入图片描述
    进入该函数,新增了几个api的地址传入。进入子函数sub_4021E9。
    在这里插入图片描述
    检查文件的PE格式。
    在这里插入图片描述
    来来回回处理最后把PE文件保存在堆中了。

    3.4.7 获取TaskStart地址

    在这里插入图片描述
    主要是从堆中获取TaskStart地址运行它。
    目前病毒的主体程序实际上只做了一些初始化的操作 到目前为止并没有看到它感染或加密任何一个文件 也没有对用户进行勒索 真正的核心代码在t.wnry中 ,由于这个函数是在堆空间中调用 所以在IDA中并没有显示出伪C代码 那么接下来需要用OD提取出这个PE文件。

    3.4 病毒核心分析

    在这里插入图片描述
    病毒主要功能在sub_4014A6函数提取出的pe文件中,OD找到该函数,获取到他的返回值。
    在这里插入图片描述
    在这里插入图片描述
    得到保存PE文件指针,同时获取到文件大小为0x10000,dump内存脚本一行:

    dm 8ABED0, 10000, “C:\Users\yusakul\Desktop\t.wnry”

    在这里插入图片描述
    IDA打开该文件查看导出表,前面的分析知道,主程序获取到了TaskStart的地址,并执行它,现在可以分析TaskStart函数了。
    在这里插入图片描述
    在这里插入图片描述

    3.4.1 读取c.wncy

    在这里插入图片描述

    读取c.wnry文件保存在内存中,后续会有使用,将其写入c.wnry在这里插入图片描述

    3.4.2 注册表操作

    在这里插入图片描述
    检查用户是否SYSTEM,sid是否为s-1-5-18,作用是权限检查
    在这里插入图片描述

    3.4.3 获取模块符号

    在这里插入图片描述

    3.4.4 秘钥生成

    在这里插入图片描述
    其中sub_10004500函数:在这里插入图片描述
    检查文件00000000.pky 和00000000.dky 是否存在,是则尝试加解密测试字符串,比较加解密效果,函数sub_10003D10:
    sub_10003D10
    if判断成立后创建线程:定时写入c.wncy,检查权限,运行@WanaDecryptor@.exe进程,添加tasksche.exe开机自启。见sub_10004990函数。
    sub_10004990
    在这里插入图片描述
    在这里插入图片描述
    然后是创建秘钥文件CreateKey:
    在这里插入图片描述

    • 创建公钥
      这里会进入第一个分支,key1存在但是key文件目前为止没有发现生成,会导入秘钥数组,生成pky(公钥)文件。从byte_1000CF40数组中导入并创建秘钥,三步有一个失败则会退出。byte_1000CF40如下。
      在这里插入图片描述
    • 创建私钥
      在这里插入图片描述
      进入sub_10004170:
      在这里插入图片描述
      生成私钥后,会将其加密返回,动态调试t.wnry.dll,dump出两个密钥。
      在这里插入图片描述
    • 公钥
      在这里插入图片描述
    • 私钥
      在这里插入图片描述
      随后读取密钥。

    3.4.5 线程1:读取资源

    在这里插入图片描述
    这一段主要功能为检查res文件是否存在,不存在则开辟线程,创建res文件并写入8位随机数。进入函数sub_10004790:
    在这里插入图片描述
    在这里插入图片描述

    3.4.6 线程2:加解密检测

    创建线程每5秒检测一次,直到测试成功则退出线程。
    在这里插入图片描述
    在这里插入图片描述

    3.4.7 线程3:加密

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    这个函数开始,F5伪代码逻辑比较混乱,各种跳转个循环,所以只贴出关键函数,进入下一层子函数:
    在这里插入图片描述
    进入下一层子函数sub_100027F0:

    遍历文件夹、存储文件信息是使用链表实现的,以下是定义的结构体
    struct FILE_LIST
    {    
    	FILE_LIST* prev;    
    	FILE_LIST* next;    
    	FILE_INFO file;//
    }
    
    struct FILE_INFO
    {   
    	WCHAR path[0x168];//    
    	WCHAR name[0x104];//2d0    
    	DWORD nFileSizeLow;//4d8    
    	DWORD nFileSizeHigh;//4dc    
    	DWORD type;//4e0  FILE_TYP
    }//0x4e4
    
    enum FILE_TYPE
    {    
    	FILE_TYPE_NULL = 0,    
    	FILE_TYPE_EXEDLL,    
    	FILE_TYPE_DOC,    
    	FILE_TYPE_DOCEX,    
    	FILE_TYPE_WNCRYT, //.wncryt    
    	FILE_TYPE_WNCYR, //.wncyr    
    	FILE_TYPE_WNCRY //.wncry
    }
    
    

    在这里插入图片描述
    sub_10002300函数主要操作为过滤需要加密的文件,并保存要加密文件的文件夹信息到链表中,随后执行加密操作,其中也调用了DispatchEncrypt_10002940加密分发函数。随后的循环则把链表中的文件加密,根据加密方式,删除或者保存文件信息节点。
    进入子函数sub_10002300:

    • 第1步,获取第一个文件。
      在这里插入图片描述
    • 第2步,在目录下创建临时文件,同时跳过当前文件夹“.”或者上级文件夹“…”,跳过系统目录的加密,经过过滤后将文件名和路径保存到String对象:
      在这里插入图片描述
    • 第3步,循环查找下一个文件,并过滤获取文档类型的文件,保存到new处那段内存中。
      在这里插入图片描述
      过滤掉系统目录,病毒释放文件,以及PE文件,要加密的文件类型如下:
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
    • 第4步,遍历保存的路径,开始加密。
      在这里插入图片描述
      加密完成后再当前目录下创建勒索信息文件。
    • 第5步,加密分发函数DispatchEncrypt_10002940。
      在这里插入图片描述
    • 加密前的最后一次分类
      在这里插入图片描述

    到这里可以总结一下加密策略:

    • 在枚举文件中,type=1,会对普通文件直接加密为.WNCRY,不再加入链表,大文件处理为.WNCYR,以及其他未作处理文件继续加入链表等待处理。
    • 枚举完成后,type从2-4,每个type遍历都遍历加密文件。

    type=2,加密FILE_TYPE_DOCEX普通文件为.WNCRY(移出链表),以及FILE_TYPE_DOCEX大文件为.WNCYR。
    type=2, 删除.WNCRYT
    type=3, 加密链表中所有文件(移出链表)
    type=4, 加密可能剩余链表中的文件

    • 文件内容加密过程
      验证文件是否未加密,或者未加密完成。已完成加密,直接退出。
      在这里插入图片描述
      type=4(只加密),打开wncyr或wncry文件;
      type=3*(加密并修改文件名),按写打开源文件,将文件头0x10000字节内容移动到尾部,头部内容清零,写入加密文件头部数据,然后源文件移动为.WNCYR或.WNCRY。
      在这里插入图片描述
      加密文件,并将自定义的加密文件文件头写入新加密的文件。
      在这里插入图片描述
    //加密文件头部数据结构
    struct 
    {
        char magic[8];//WANACRY!'
        int size;//0x100
        char key[size];//
        int type;//加密文件类型3,4
        __int64 datasize;// <=0x6400000 源文件大小
        char data[1];//
    }
    

    在这里插入图片描述
    加密完成后,读取加密文件内容,写入源文件中:
    当前加密类型为4:只加密时,这里又分两种情况:
    1)如果文件被加密类型3处理过一次,那么读取加密类型3处理后的文件最后0x10000字节,写入刚刚加密完成的文件
    2)如果文件未被加密处理过,那么读取加密处理后的文件,写入原文件,同时删除wncry文件
    在这里插入图片描述
    该线程主要加密流程如下
    在这里插入图片描述

    线程4:taskdl.exe

    在这里插入图片描述
    在这里插入图片描述

    线程5:@WanaDecryptor@.exe与权限、自启

    在这里插入图片描述

    加密与其他工作

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    这里加密函数与前面的相同。
    在这里插入图片描述

    展开全文
  • 点击阅读原文可点击链接INTEZER安全人员跟踪WannaCry后,关联到当年攻击韩国的Joanap和Brambul家族的Lazarus组织,而该组织被怀疑与朝鲜政府有关...
        

    点击阅读原文可点击链接

    INTEZER安全人员跟踪WannaCry后,关联到当年攻击韩国的Joanap和Brambul家族的Lazarus组织,而该组织被怀疑与朝鲜政府有关,而此次事件唯有朝鲜一个国家没有受到影响,网上为朝鲜辩解为该国独特的内网制度,真假难辨,个人依旧保持中立态度,围观群众,看戏就好。。

    0?wx_fmt=png

    卡巴斯基和 Google 的研究员分析发现,WannaCry 的样本与 Lazarus APT 组织 2015 年的某个样本存在代码相似性,并据此推断 WannaCry 蠕虫勒索事件的幕后组织来自朝鲜https://securelist.com/blog/research/78431/wannacry-and-lazarus-group-the-missing-link/

    目前已知的出现了4个WannaCry变种

    DarkoderCryptOr为升级版

    Aran wanaCrypt0r 2.0 Generator v1.0为生成器

    Wanna Crypt v2.5为半成品

    WannaCrypt 4.0 为支持泰语的半成品

    WannaCry 相关信息汇总(很多人会在下面留言发布最新的资讯,想跟进的可以关注留言)

    https://gist.github.com/rain-1/989428fa5504f378b993ee6efbc0b168

    0?wx_fmt=png

    维基解密公布CIA Windows恶意软件框AfterMidnight(午夜之后)和 Assassin(刺客)

    https://wikileaks.org/vault7/releases/

    http://thehackernews.com/2017/05/windows-malware-framework.html

    利用Google chrome窃取windows凭证

    https://www.helpnetsecurity.com/2017/05/15/stealing-windows-credentials-using-google-chrome/

    从社工角度出发分析 Microsoft Office 的攻击面

    https://sites.google.com/site/zerodayresearch/Analysis_of_the_Attack_Surface_of_Microsoft_Office_from_User_Perspective_final.pdf

    自称下一代二进制分析工具————Manticore(好像还挺清晰)

    https://blog.trailofbits.com/2017/05/15/magic-with-manticore/

    0?wx_fmt=png

    IEEE802.11w无线安全协议剖析

    http://www.freebuf.com/articles/wireless/134349.html

    SPEAR: Redirect to SMB

    https://www.cylance.com/redirect-to-smb

    以前推的翻译版:

    如何绕过WAF/NGWAF的libinjection实现SQL注入

    http://bobao.360.cn/learning/detail/3855.html

    基于DOM的AngularJS沙箱逃逸技术

    http://bobao.360.cn/learning/detail/3851.html

    CVE系列:

    CVE-2017-0258:lsass.exe, services.exe 等进程的 token 的 default DACL 中

    存在 8 字节未初始化的内存

    https://bugs.chromium.org/p/project-zero/issues/detail?id=1145

    CVE-2017-0175/0220:Windows 内核驱动 afd.sys 和 tcpip.sys 在实现 Socket bind() 时存在内存越界读漏洞

    https://bugs.chromium.org/p/project-zero/issues/detail?id=1127

    CVE-2017-0290:0patch 团队为 Tavis 发现的 Windows 反病毒引擎中的 mpengine RCE 漏洞写了一个第三方补丁 

    https://0patch.blogspot.com/2017/05/0patching-worst-windows-remote-code.html

    永恒之蓝扫描利用模块github:

    nmap发布检测smb-vuln-ms17-010的脚本

    https://github.com/cldrn/nmap-nse-scripts/blob/master/scripts/smb-vuln-ms17-010.nse

    Metasploit下ms17_010_eternalblue exp

    https://github.com/RiskSense-Ops/MS17-010/blob/master/exploits/eternalblue/ms17_010_eternalblue.rb

    WannaCry分析

    WanaCrypt0r勒索病毒分析(带实验)

    http://bobao.360.cn/learning/detail/3857.html

    天融信阿尔法实验室的勒索蠕虫样本深度技术分析

    http://blog.topsec.com.cn/ad_lab/wannacryptor-%E5%8B%92%E7%B4%A2%E8%A0%95%E8%99%AB%E6%A0%B7%E6%9C%AC%E6%B7%B1%E5%BA%A6%E6%8A%80%E6%9C%AF%E5%88%86%E6%9E%90_%E9%98%BF%E5%B0%94%E6%B3%95%E5%AE%9E%E9%AA%8C%E5%AE%A4/

    小工具:

    微信(WeChat)电脑端多开研究

    http://anhkgg.github.io/wechat-multi-pc/

    编译好的可执行文件:

    https://github.com/anhkgg/multi_wechat_pc/raw/master/WeChat%E5%A4%9A%E5%BC%80.exe

    源码地址:

    https://github.com/anhkgg/multi_wechat_pc

    渗透测试攻击框架 Empire 2.0 

    https://github.com/EmpireProject/Empire 

    https://xorrior.com/2.0-Final-Release/

    展开全文
  • Android版本的 Wannacry 文件加密病毒样本分析 附带锁机
                   

    一、前言

    之前一个Wannacry病毒样本在PC端肆意了很久,就是RSA加密文件,勒索钱财。不给钱就删除。但是现在移动设备如此之多,就有一些不法分子想把这个病毒扩散到移动设备了,这几天一个哥们给了一个病毒样本,就抽空看了一下,下面就来分析一下这个病毒样本程序。


    二、病毒样本分析

    首先国际惯例,这类的病毒都是用一些特殊的app名称吸引诱导用户下载,这里是一个叫做:魅影WIFI,下载安装之后界面如下:


    我们点击免费激活,出现授权界面:


    需要设备管理器,这时候应该猜到了,他是想修改锁机密码,我们就授权,然后分析程序找到重置的密码就好了,授权之后,就被锁屏了,解锁屏幕会发现:


    病毒作者是真够狠的,尽然有自己弄了一个浮窗锁机,这时候我们不得不看代码了,找到这个密码了,当然这个浮窗类型的锁机其实很容易解决的。因为他主要是借助WindowManager搞得,所以这时候可以连接adb使用命令可以直接干掉这个进程就好了:am force-stop pkgname;我们可以用dumpsys命令获取其包名:


    然后在强制停止app即可:


    停止了之后,发现就是解锁屏幕了,当然密码已经被篡改了,所以的分析软件了,当然如果设备root了,可以直接删除/data/system/password.key文件即可。当然这些说的都是因为本身就是个开发者,而对于小白用户,肯定这么做不合适的。我们需要分析app,拿到这两个地方锁机密码。告诉被坑的小白用户,解救他们。下面就来分析app了:


    三、破解获取解锁密码

    第一、获取锁屏密码

    因为我们知道现在大多数锁机软件都是利用设备管理器来修改设备密码的,所以想看他的密码也很简单。直接用jadx打开软件,然后全局搜索类:DeviceAdminReceiver


    然后看看这个类里面修改代码部分逻辑:


    看到了,这里直接将手机的锁机密码修改成9815了。这个就是我们待会需要解锁的密码。


    第二、浮窗锁机密码

    这个比上面密码有点麻烦,因为是自己定义的浮窗锁机,所以直接看到锁机界面文字,去Jadx全局搜索即可,这里全局搜索字符串"输入密码":


    进入到这个类即可:


    这里是定义了一个Service然后用WindowManager实现,然后把权限设置为最高,用户就无法进行任何操作了。因为最终的密码输入都是在这个EditText,取密码作比较也要用到这个文本框,就看这里的this.ed在哪里取值:


    这里直接比对密码,如果密码正确了,就直接干掉服务,浮窗锁机就没有了。所以这里最重要的是decrypt方法了,他是从SP中拿到key是passw的密文进行解密比对。其实到这里我们可以借助Xposed工具直接hook这个decrypt方法就能很轻易的拿到这个密码了:


    然后直接运行就可以获取对应的密码了:


    不过这里还想继续分析这个DES的加密逻辑,因为本身就是要学习的。所以我们继续手动分析这个加密算法,我们看看des变量定义:


    这里会看到有一个du和du2变量,这个不要在意,可能是代码混淆原因,其实就是一个值。看初始化传入一个字符串值,可能是DES加密的key值,然后就立马对一个密文进行解密,之后的内容在作为新的DES的密钥值。相当于这里二次获取密钥了。看DU代码实现:


    传入的字符串就是作为key进行加解密操作的。那么下面我们就需要手动写一个简单的DES加解密算法了,这个网上很多代码了,直接拷贝一个:


    第一次初始化密钥是字符串:"flower",然后直接解密内容:"c29fe56fa59ab0db"


    然后直接解密,获取第二次要用到的密钥"xxx",然后在初始化以下key:


    然后,我们需要去程序的xml中找到加密内容,然后拷贝出来进行解密:


    把这个串拷贝出来进行解密:


    这个就是解锁密码了,而我们在回过头看看怎么把这个加密串存到xml中的:


    这里他生成密码尽然是采用随机值,然后在加上123456,最后在DES加密保存到xml中,同时也会把随机数保存到xml中的,从上面可以看到值是:


    而这个值加上123456也就是密码了:92944926+12346=93068382,这个也就是上面我们解密之后的密码,这就对上了。所以这个锁机,如果加他QQ索要密码,其实他是需要让小白用户做点东西,因为这个密码是随机的,不是固定值,必须让小白用户把程序的xml文件给他。不然它也是不知道解锁密码的。实在坑爹。


    四、破解进行文件解密

    而上面的锁机并不是本文的重点,本文的重点其实是文件加密,在回他的app中:


    然后点击注册使用:


    点击注册软件,会等一会,其实这里他在做一些坏事,后面会分析代码干什么坏事:


    这就是我们熟悉的Wannacry病毒界面了,需要付钱才能对文件解密了,而这时候悲剧的是我们的设备SD卡中的文件已经被全部加密了:


    那么这时候就很恶心了,文件全部被加密,最蛋疼的是,你打开自己的SD卡可能都打不开了,这个是因为他做了一件更恶心的事就是无限制的新建一些文件和文件夹到SD中。这样其实手机已经废了。因为SD卡的文件非常多。看到上面的截图可以发现,每个文件都是0字节,然后文件对应一个空文件夹。下面来分析他的代码:


    然后进入这个类看看,在他的onCreate方法中看到几个方法:


    继续追踪发现:


    有一个可怕的方法就是爆炸boom了:


    在这里会创造出很多空文件和空文件夹,这样你的SD卡到最后几乎打不开了。手机也就废了。不过到这里我们貌似还没有介绍文件加密的内容,其实文件加密在程序启动的时候就做了,就是MainActivity中:


    然后就开始跟踪这个方法了:


    这里会过滤他自己创建出来的空文件和空文件夹不进行加密的,继续看代码:


    这里通过方法的最后一个参数来判断是加密文件还是解密文件。加解密方法参数都是类似的,第一个参数是AES加解密的密钥。所以到这里我们大致清楚了,这个病毒是用AES对文件进行加密的。而密钥他又用AES加密,这时候的加密内容的key和内容是:


    所以分析到这里,我们就可以开始进行手动解密文件了。这里当然有很多种方法:

    第一种方法:借助Xposed工具直接hook他的FormetFileSize方法,因为我们在上面分析知道,这个方法的最后一个参数标志是解密文件还是加密文件,我们拦截这个方法之后,修改这个参数状态为false表示就是解密文件了:



    第二种方法:把他解密功能代码拷贝出来,自己写一个解密程序,这个比较适合给中招的小白使用了:


    因为他的代码这几个类都比较独立,所以直接拷贝出来不会有太多的错误,而有些错误就是变量定义重复自己手动改一下即可:


    下面就开始运行这个程序即可,这里为了操作不浪费时间,就把SD卡情况了,然后写入三个简单的文件,让他加密:


    这时候会发现,他加密之后的文件名就是原始文件名凭借一个串而已,这里忽略乱码哈哈。因为只有这样,他在解密之后才能获取到原始文件,从他代码中也可以看到这点:


    然后运行我们解密程序,看到日志:


    到这里,我们就成功的进行解密了。


    五、病毒分析总结

    到这里我们就分析完了这个病毒,总得来说病毒作者心非常狠,锁机采用两套机制,而且浮窗锁机尽然还用随机密码坑人。最恶心的是他的文件加密,尽然在SD中创建了那么多的空文件和空文件夹,让设备无法使用了。打开SD卡也是失败的。罪恶中的罪恶。最后他用的是AES算法对文件进行加解密操作。而这里他没有采用RSA加密的原因其实很简单,如果用RSA加密的话,设备真的要报废了。因为RSA加密算法非常耗时吃内存。手机会扛不住的。他也不敢用RSA加密了,只好用AES了,但是AES加密只要知道了密钥其实没多大问题对于解密来说。这里我们解密可以用两种方式一种是Xposed框架进行hook,一种是自己把它的界面代码拷贝出来自己写一个解密程序。当然第二种是最优的,因为对于那些中招的小白用户他们是没有root的,也是没有安装Xposed框架的,只有写一个解密程序给他安装进行解密就好了。不过有个很大的问题,就是因为病毒还创建了很多空文件和空文件夹,导致操作的时候,我们需要区别对待。也要做一次过滤,这些病毒自己生成的文件和文件夹就不要做解密了,不然会无限制死机了。


    从这个病毒中我们可以了解到关于锁机策略机制,对于设备管理器的锁机直接找到DeviceAdminReceiver这个类就好了,或者直接看xml中的定义:


    快速找到修改密码的地方,找到锁机密码即可。而对于那种浮窗锁机。因为都是采用Service和WindowManager来实现逻辑的。所以直接使用am命令强制停止程序运行即可。


    特别说明:

    关于病毒样本这里不能给出,非常抱歉,我知道你们肯定想说:"留毒不留种,小心被人捅",但是四哥不想被请去喝茶,所以你们要骂要捅随意吧。而没有病毒样本,其实都是扯淡。只看分析不操作就是浪费时间。如果真的真的想要样本私信我。方式加入我的小密圈。留言四哥的真实姓名即可。


    六、总结

    从这个病毒来看,其实即使你付费了,他帮你解密,也是很恶心的,因为他创建了那么多文件,删除需要时间,解密还消耗机器性能,这就是赤裸裸的迫害。所以遇到这种病毒千万不要给钱,可以自己解密,或者刷机。不要想那么多。手机解密这么多文件会死机了,你的手机会扛不住爆炸的。干脆备份文件,刷机得了。还有最重要的一点就是千万不要去下载来历不明的app,不要有歪想法,好好用手机。去正规的应用市场下载应用是最保险的。

    《Android应用安全防护和逆向分析》

    点击立即购买:京东  天猫

    更多内容:点击这里

    关注微信公众号,最新技术干货实时推送

    编码美丽技术圈
    微信扫一扫进入我的"技术圈"世界

    扫一扫加小编微信
    添加时请注明:“编码美丽”非常感谢!
               
    展开全文
  • wannacry,petaya,meze,heibao,jjy,等6个病毒样本,仅供学习查杀,建议在虚拟机内解压且断开虚拟机网络,360等杀毒软件可以杀掉,但还是不要掉以轻心,千万别再物理机运行,否则后果自负
  • 资源中是WannaCry、CTB-Locker、Cerber样本,解压后将后缀名改为exe即可运行,一定要在虚拟机中运行,且虚拟机一定要与宿主机隔离、必须断网,否则会造成不可逆转的损失。 若在使用本资源时造成损失,本人概不负责...
  • 好了,说正题,我从这里下载了Wannacry样本,一些枯燥的汇编分析细节就不多讲,我们尽量快速的了解到整体过程。 首先会通过一个函数算出一个标识,我们将这个函数命名为getDisplayName,本质就是通过...
  • 5月14日,卡巴斯基的研究人员宣称他们发现了WannaCry的变种样本,此变种没有包含域名开关,同时修改了样本执行过程中的某个跳转,...通过初步的分析和与初代WannaCry样本的对比分析,绿盟科技认为目前搜集到的两个变...
  • 之前一个Wannacry病毒样本在PC端肆意了很久,就是RSA加密文件,勒索钱财。不给钱就删除。但是现在移动设备如此之多,就有一些不法分子想把这个病毒扩散到移动设备了,这几天一个哥们给了一个病毒样本,就抽空看了...
  • wannacry,petaya,meze,heibao,jjy,等6个病毒样本,仅供学习查杀,建议在虚拟机内解压且断开虚拟机网络,360等杀毒软件可以杀掉,但还是不要掉以轻心,千万别再物理机运行,否则后果自负 相关下载链接://...
  • 一、病毒样本分析 点击免费激活,出现授权界面: 需要设备管理器,是想修改锁机密码,我们就授权,然后分析程序找到重置的密码就好了;授权之后,就被锁屏了,解锁屏幕会出现: 病毒作者真够狠的,竟然...
  • Wannacry病毒分析

    2019-08-09 16:08:11
    病毒名称:WannaCry 所属家族:Wanna MD5值:84C82835A5D21BBCF75A61706D8AB549 SHA1值:5FF465AFAABCBF0150D1A3AB2C2E74F3A4426467 CRC32:4022FCAA 病毒行为: 这里描述病毒行为概况,包括清单文件中恶意...
  • WannaCry病毒分析

    2020-03-27 23:30:15
    样本一 查壳 VC6.0编写,未加壳 使用LoadPE查看导入表,根据导入函数猜测功能 猜测可能和文件操作有关,因为导入函数中涉及到文件的删除和文件遍历等API。 具体分析 关于上述分析中的疑问 WCHAR RootPathName[2] ...
  • WannaCry勒索病毒分析

    2020-02-24 17:46:45
    文章目录病毒概述样本信息病毒行为分析静态分析使用LoadPE进行分析资源查看动态分析可视行为进程查看注册表操作文件操作网络监控详细分析wcry.exe样本程序分析WinMain函数...
  • 点击阅读原文可点击链接Heimdal 安全团队通过蜜罐捕获了一个新的蠕虫样本 - BlueDoomBlueDoom 几乎集成了 NSA 泄露的所有攻击武器BlueDoom...
  • 文章目录样本概况样本信息环境及工具分析目标简单行为分析导入表分析字符串分析查看资源火绒剑行为监控病毒详细分析11.exe总结11.exe的主要行为taskche.exe总结taskche.exe的主要行为dump.dll总结dump.dll的主要行为...
  • 请注意!将压缩文件拖入虚拟机中运行,运行前将虚拟机网络设置为主机模式,关闭虚拟机中的杀毒软件,并保存快照以便于恢复快照! 该样本只有加密模块,没有网络传播模块。
  • WannaCry的深度分析

    千次阅读 2019-02-19 16:33:28
    文章目录样本概况查壳基础分析基础静态分析查看字符串使用PEiD识别加密算法查看导入表查看资源段基础动态分析查看进程树注册表监控文件监控网络监控使用IDA和OD进行详细分析对wcry.exe病毒主程序的分析主体逻辑第一...
  • 个人原本在测试勒索病毒样本,结果不小心忘拔掉电脑上的U盘,U盘被感染了…… 请问如果这时直接插到电脑补救(我是在虚拟机运行的U盘),电脑也会被感染吗? 急!!!!求电脑大神指教
  • 本文讲的是WannaCry 勒索软件攻击再袭 韩国 ...此次的勒索软件是在韩国LG电子服务中心的自助服务机中发现的,安全专家在对病毒样本进行分析后发现,此次攻击活动期间所使用的恶意代码和此前在全球肆虐的WannaCry勒索...
  • 样本基本信息 云沙箱跑一下 很明显是个病毒 样本逆向分析 拖进ida 1、sub_401225 我们注意到,DisplayName是没有声明的,也就是说它是一个全局变量。我们看一下在其他地方的调用(x) 第一个...
  • 勒索蠕虫病毒新变种 WannaCry 2.0 究竟...昨天(5月14日),卡巴斯基的研究人员宣称发现了 WannaCry 的变种样本。当天下午,北京市委网信办、北京市公安局、北京市经信委也联合发出了《关于WannaCry 勒索蠕虫出现变...
  • 近日,微步在线捕获到一款新型勒索软件用于对全球范围内的目标发起大范围的攻击,多家安全公司将该勒索软件命名为“WannaCry”。微步在线对该事件中收集到的样本进行了紧急的分析,发现攻击样本中存在一个开关:样本...
  • 前文分享了宏病毒相关知识,包括宏病毒基础原理、防御措施、自发邮件及APT28样本分析。这篇文章作者将继续分析WannaCry勒索病毒,主要通过IDA和OD逆向分析蠕虫传播部分,详细讲解蠕虫是如何感染传播的。同时,由于...

空空如也

空空如也

1 2 3
收藏数 55
精华内容 22
关键字:

wannacry样本