恶意代码分析实战—实验12-1

实验环境:

实验设备环境:windows xp
实验工具:IDAPro,processmonitor,processexplore

实验过程

首先我们采用IDA打开exe程序,进入imports导入函数窗口:
在这里插入图片描述
以上圈出的函数很有可能会是有关于进程注入。
在IDA中查看strings窗口:
在这里插入图片描述
我们会观察到很多不常见的dll文件,可能会和注入有关。
1、在你运行恶意代码可执行文件时,会发生什么?
在这里插入图片描述
我们会看到会弹出来一个窗口,其会一分钟弹出来一次。
2、哪个进程会被注入?
查看IDA:
IDA
可以看到其会调用LoadLibraryA加载psapi.dll文件,解析枚举函数,并将解析出的函数保存在dword_408714中,同理下面调用的那两次。
下面就可以进行名称的修改,这样会更加容易识别:
在这里插入图片描述
继续向下分析:
在这里插入图片描述
这里调用了这个函数,这个函数可以获取系统所有进程的PID值,下面掉用了sub_401000这个函数,点击进入:
在这里插入图片描述
这个进程的目的就是查找当前进程是不是explore.exe进程。
返回上一层,如果说找到此进程的话,就会打开此程序的句柄,获得了句柄以后就可以利用这个句柄操纵这个进程:
在这里插入图片描述
操作过程中调用了VirtualAllocEx函数,调用结束以后一个指向被调用进程的指针就会保存在lpBaseAddress中。
在这里插入图片描述
之后会利用WriteProcessMemory向explore.exe中写入数据,写入的数据就是缓冲区中的数据,缓冲区中的数据经过向上分析我们知道其是系统根目录拼接Lab12-01.dll字符串。
向下使用了GetModuleHandleA以及GetProcAddress两个函数获取LoadLibrary函数的地址,并将其保存在了lpStartAddress中,之后会作为CreateRemoteThread函数的参数被调用,这样就可以强制explore.exe强制运行LoadLibrary这个函数,这个函数会加载Lab12-01.dll文件。
总结来说此程序会在远程进程explore.exe程序中创建一个线程,线程的作用就是调用loadlibrary函数,这个函数会调用Lab12-01.dll,也就是远程注入Lab12-01.dll文件。
3、你如何让恶意代码停止弹出窗口?

利用processexplore软件:
在这里插入图片描述
查找Lab12-01.dll:
在这里插入图片描述
其存在于explore.exe程序里面。
现在我们可以关闭此进程,之后File->Run:
在这里插入图片描述
重新启动此程序。
4、这个恶意代码样本时如何工作的?

在IDA分析Lab12-01.dll:
在这里插入图片描述
其主要调用了**CreateThread**函数,此函数主要参数就是lpStartAddress,点击进入:
在这里插入图片描述
可以看到这个函数也是每隔60秒就会创建一次线程,所创建的线程点击进入:
在这里插入图片描述
可以看到此字符串就是弹出窗口中显示的字符串。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值