LYQingYe 发表于 2015-8-23 21:46

MBR学习ONE-对某个MBR破坏病毒的小分析

本帖最后由 LYQingYe 于 2015-8-26 07:29 编辑

发觉再也拿不起笔了。{:5_191:}
今天给大家带来的是,对一个MBR破坏病毒的小分析,大牛飘过。
知识补充区:mbr - 主引导记录(Master Boot Record)- 一个系统的启动过程是复杂的,我把它简略到一下几个步骤,如果错误请指出一大家一起学习 :打开电源- 自检,检查RAM 驱动器等--执行BIOS--将MBR里面的引导代码装入内存--系统启动 。   从系统启动过程可以看出,MBR主引导记录是凌驾于系统之上的。很多病毒都会利用这点。 所以 我们学习下还是有必要的。今天就给大家分析一个修改MBR的病毒。 明了来说是恶意软件。
样本名称:MBR.EXE
病毒行为:修改MBR 让系统无法启动


首先,我们用IDA载入样本
这个程序可以 分为 三块   _MIAN 入口接着执行 SUB_401000 提升权限 最后 在 SUB_401090 向MBR写入代码
SUB_401000:
sub   esp, 14h
lea   eax,
push    esi
push    eax             ; TokenHandle
push    28h             ; DesiredAccess
mov   esi, 1
<font color="#ff0000">call    ds:GetCurrentProcess    得到当前进程的ID,为后面提升权限做准备</font>
push    eax             ; ProcessHandle
<font color="#ff0000">call    ds:OpenProcessToken    得到进程的令牌句柄</font>

简单提权的方法 相信学过编程的都知道,在这 我就不做补充了。


SUB_401090:
push    0               ; dwFlagsAndAttributes
push    3               ; dwCreationDisposition
stosb
push    0               ; lpSecurityAttributes
mov   ecx, 0Ch
mov   esi, offset unk_406030
lea   edi,
push    3               ; dwShareMode
push    0C0000000h      ; dwDesiredAccess
rep movsd
push    offset FileName ; "\\\\.\\PHYSICALDRIVE0"
mov   , 55h
mov   , 0AAh
<font color="#ff0000">call    ds:CreateFileA         <span style="line-height: 1.5;">用CreateFile函数 打开硬盘因为MBR 在硬盘上嘛</span></font>当病毒执行完后,我们用WINHEX 打开MBR看一下,下面我会介绍如何用WINHEX操作。


打开WINHEX 在工具条上找到工具-打开磁盘   

因为 我是在 虚拟机里面测试的所以 我选择 20GB的虚拟硬盘

打开后, 因为是 被病毒修改过的 MBR所以我们隐约的看到了 一个 单词 VIRUS 病毒的意思。。。

因为MBR引导记录也是 代码 80x86的汇编语法, 所以我们要将他拷贝出来 。 WINHEX的操作方法
右键-- 编辑 -- 复制选块--至新文件--保存到桌面就可以了,不要添加什么后缀名,但也无妨。


接下来,我们就要分析这段小代码。XP用户可以直接用 DEBUG其他用户用 IDA吧,注意要勾选上X86的 。





回车 用 D命令查看下 内存 在用 U命令 转换为汇编代码。


到LOOP执行时 LOOP下面的代码 就不是代码了 是 数据, 这段代码的作用是 在屏幕上打印一段字符串。



MOV   AX,0012   中断号 0x12 显示器配置
INT   10            INT 10 中断
MOV   BP,7C18    ES:BP 要显示字符串的 段地址:偏移
MOV   CX,0018    字符串的长度
MOV   AX,1301   AL是显示模式AH是0X13 INT10 显示字符串
MOV   BX,000C   
MOV   DX,0E1DDX存放着显示的 行号和列号
INT   10            CALL DOS



当执行完这段代码后。我们可以惊奇的发现。。 电脑就会一直停在这个页面。而不会进入系统因为MBR已经被破坏,系统无法启动。


本次教程分析到此结束。 至于 这种 MBR的学习现在只是 第一课,后面 我会进一步发布教程深入学习的,同时我也会跟大家一起学习共同进步, 样本我不知道能不能传。 还是得问过老大方可。
感谢大家支持,   我爱雪坡姐。

样本在下面可下载,大家请在虚拟机调试。

**** Hidden Message *****


Aniz 发表于 2015-8-23 21:54

快告诉我我是不是沙发

虚竹 发表于 2015-8-23 22:02

我相信这是精华帖子 已经通知老板

LYQingYe 发表于 2015-8-23 22:04

虚竹 发表于 2015-8-23 22:02
我相信这是精华帖子 已经通知老板

只是菜鸟的 简单分析{:5_191:}

虚竹 发表于 2015-8-23 22:08

LYQingYe 发表于 2015-8-23 22:04
只是菜鸟的 简单分析

在详细点就好了

LYQingYe 发表于 2015-8-23 22:08

虚竹 发表于 2015-8-23 22:08
在详细点就好了

会改进的。谢谢指导

Shark恒 发表于 2015-8-23 22:39

写的挺好的,样本打个压缩包传上来吧,提醒大家在虚拟机打开就好了。

泽杨 发表于 2015-8-23 23:18

Shark恒 发表于 2015-8-23 22:39
写的挺好的,样本打个压缩包传上来吧,提醒大家在虚拟机打开就好了。

样本我就有{:5_191:}

kangda666 发表于 2015-8-24 00:09

这种病毒挺让人头疼的吧

小弟 发表于 2015-8-24 08:14

这东西怎么写{:5_121:}
页: [1] 2 3
查看完整版本: MBR学习ONE-对某个MBR破坏病毒的小分析