记一次MEMZ样本分析
字数 1935 2025-08-24 07:48:22

MEMZ病毒样本分析教学文档

1. 样本概述

MEMZ病毒(又称彩虹猫病毒)是一个恶搞性质的MBR病毒,主要特点:

  • 修改MBR主引导扇区,破坏电脑正常启动
  • 运行后显示彩虹猫画面并播放音乐
  • 采用多进程守护机制防止被终止
  • 包含多种恶搞效果(鼠标失控、窗口变形、弹窗等)

2. 样本行为分析

2.1 运行表现

  • 初始运行显示2个确认提示框
  • 弹出记事本程序
  • 创建6个MEMZ进程
  • 打开多个浏览器窗口
  • 鼠标控制失效
  • 窗口颜色变化
  • 桌面弹出大量图标
  • 任意关闭一个MEMZ进程或尝试关机都会导致系统崩溃蓝屏
  • 重启后无法进入系统,显示彩虹猫动画

2.2 进程结构

  • 主进程创建5个"/watchdog"参数的守护进程
  • 主进程创建1个"/main"参数的主功能进程
  • 主进程设置主功能进程为最高优先级后退出

3. 技术分析

3.1 守护机制(watchdog)

  • 每个守护进程创建监控线程(sub_40114A)
  • 线程功能:
    • 定期枚举系统进程
    • 统计MEMZ进程数量
    • 发现进程数量减少时触发蓝屏关机(sub_401021)

蓝屏关机函数(sub_401021):

  1. 创建20个线程制造大量随机弹窗
  2. 调用RtlAdjustPrivilege提权
  3. 调用NtRaiseHardError制造蓝屏
  4. 调用ExitWindowsEx强制注销系统

3.2 窗口钩子

  • 使用SetWindowsHookEx设置全局钩子
  • 回调函数(fn)随机修改窗口位置
  • 拦截WM_CLOSE和WM_ENDSESSION消息,触发蓝屏关机

3.3 主功能(main)

3.3.1 10个恶意线程

通过结构体数组定义10个线程函数及其延迟时间:

struct FuncAddrDelay {
    DWORD pFuncAddr;    // 函数地址
    DWORD dwTimeDelay;  // 延迟时间
};

线程功能详情:

  1. 浏览器操作线程

    • 随机打开网站
    • 启动任务管理器、注册表编辑器、计算器等
  2. 鼠标控制线程

    • 使鼠标位置失控
  3. 键盘监控线程

    • 插入键盘事件
    • 监控键盘输入
  4. 声音播放线程

    • 播放系统声音
  5. 桌面复制线程

    • 使用BitBlt对桌面像素进行位块转换
  6. 弹窗线程

    • 显示"Still using this computer?"消息框
  7. 图标绘制线程

    • 在鼠标位置绘制图标
  8. 窗口变形线程

    • 枚举子窗口并使其变形
  9. 界面大小线程

    • 改变桌面大小和形状
  10. 颜色修改线程

    • 改变桌面颜色

3.3.2 MBR覆盖

病毒核心功能:覆盖主引导记录(MBR)

  1. 使用CreateFileA以读写权限打开"\.\PhysicalDrive0"
  2. 在堆中准备恶意代码
  3. 使用WriteFile将恶意代码写入MBR
  4. 恶意代码组成:
    • 前304字节(byte_402118):覆盖部分MBR或初始化代码
    • 跳过206字节
    • 从510字节开始(byte_402248):1952字节彩虹猫动画数据

4. 关键API分析

功能类别 DLL 关键API
窗口操作 GDI32 BitBlt, StretchBlt
程序执行 SHELL32 ShellExecute
声音播放 WINMM PlaySoundA
鼠标控制 USER32 SetCursorPos, GetCursorPos
消息循环 USER32 GetMessage, TranslateMessage, DispatchMessage
钩子函数 USER32 SetWindowHookEx, UnhookWindowHookEx, CallNextHookEx
权限提升 ADVAPI32 OpenProcessToken, LookupPrivilegeValue, AdjustTokenPrivileges
进程枚举 KERNEL32 CreateToolhelp32Snapshot, Process32First, Process32Next

5. 防御建议

  1. 行为监控

    • 监控对PhysicalDrive0的写操作
    • 监控多进程相互守护行为
    • 监控全局钩子设置
  2. 防护措施

    • 禁用不必要的权限提升
    • 定期备份MBR
    • 使用虚拟机或沙箱分析可疑程序
  3. 清除方法

    • 使用PE修复工具重建MBR
    • 使用WinPE环境修复引导
    • 重写MBR扇区

6. 分析工具推荐

  1. 静态分析:

    • PEID/ExeInfoPE(查壳)
    • IDA Pro(反汇编)
    • StudyPE+(导入表分析)
  2. 动态分析:

    • Process Monitor(进程监控)
    • Process Explorer(进程查看)
    • API Monitor(API调用监控)
  3. 调试工具:

    • WinDbg(内核调试)
    • OllyDbg/x64dbg(用户态调试)
MEMZ病毒样本分析教学文档 1. 样本概述 MEMZ病毒(又称彩虹猫病毒)是一个恶搞性质的MBR病毒,主要特点: 修改MBR主引导扇区,破坏电脑正常启动 运行后显示彩虹猫画面并播放音乐 采用多进程守护机制防止被终止 包含多种恶搞效果(鼠标失控、窗口变形、弹窗等) 2. 样本行为分析 2.1 运行表现 初始运行显示2个确认提示框 弹出记事本程序 创建6个MEMZ进程 打开多个浏览器窗口 鼠标控制失效 窗口颜色变化 桌面弹出大量图标 任意关闭一个MEMZ进程或尝试关机都会导致系统崩溃蓝屏 重启后无法进入系统,显示彩虹猫动画 2.2 进程结构 主进程创建5个"/watchdog"参数的守护进程 主进程创建1个"/main"参数的主功能进程 主进程设置主功能进程为最高优先级后退出 3. 技术分析 3.1 守护机制(watchdog) 每个守护进程创建监控线程(sub_ 40114A) 线程功能: 定期枚举系统进程 统计MEMZ进程数量 发现进程数量减少时触发蓝屏关机(sub_ 401021) 蓝屏关机函数(sub_ 401021): 创建20个线程制造大量随机弹窗 调用RtlAdjustPrivilege提权 调用NtRaiseHardError制造蓝屏 调用ExitWindowsEx强制注销系统 3.2 窗口钩子 使用SetWindowsHookEx设置全局钩子 回调函数(fn)随机修改窗口位置 拦截WM_ CLOSE和WM_ ENDSESSION消息,触发蓝屏关机 3.3 主功能(main) 3.3.1 10个恶意线程 通过结构体数组定义10个线程函数及其延迟时间: 线程功能详情: 浏览器操作线程 随机打开网站 启动任务管理器、注册表编辑器、计算器等 鼠标控制线程 使鼠标位置失控 键盘监控线程 插入键盘事件 监控键盘输入 声音播放线程 播放系统声音 桌面复制线程 使用BitBlt对桌面像素进行位块转换 弹窗线程 显示"Still using this computer?"消息框 图标绘制线程 在鼠标位置绘制图标 窗口变形线程 枚举子窗口并使其变形 界面大小线程 改变桌面大小和形状 颜色修改线程 改变桌面颜色 3.3.2 MBR覆盖 病毒核心功能:覆盖主引导记录(MBR) 使用CreateFileA以读写权限打开"\\.\PhysicalDrive0" 在堆中准备恶意代码 使用WriteFile将恶意代码写入MBR 恶意代码组成: 前304字节(byte_ 402118):覆盖部分MBR或初始化代码 跳过206字节 从510字节开始(byte_ 402248):1952字节彩虹猫动画数据 4. 关键API分析 | 功能类别 | DLL | 关键API | |---------|-----|--------| | 窗口操作 | GDI32 | BitBlt, StretchBlt | | 程序执行 | SHELL32 | ShellExecute | | 声音播放 | WINMM | PlaySoundA | | 鼠标控制 | USER32 | SetCursorPos, GetCursorPos | | 消息循环 | USER32 | GetMessage, TranslateMessage, DispatchMessage | | 钩子函数 | USER32 | SetWindowHookEx, UnhookWindowHookEx, CallNextHookEx | | 权限提升 | ADVAPI32 | OpenProcessToken, LookupPrivilegeValue, AdjustTokenPrivileges | | 进程枚举 | KERNEL32 | CreateToolhelp32Snapshot, Process32First, Process32Next | 5. 防御建议 行为监控 监控对PhysicalDrive0的写操作 监控多进程相互守护行为 监控全局钩子设置 防护措施 禁用不必要的权限提升 定期备份MBR 使用虚拟机或沙箱分析可疑程序 清除方法 使用PE修复工具重建MBR 使用WinPE环境修复引导 重写MBR扇区 6. 分析工具推荐 静态分析: PEID/ExeInfoPE(查壳) IDA Pro(反汇编) StudyPE+(导入表分析) 动态分析: Process Monitor(进程监控) Process Explorer(进程查看) API Monitor(API调用监控) 调试工具: WinDbg(内核调试) OllyDbg/x64dbg(用户态调试)