恶意代码分析11 -3

  1. 使用基础静态分析过程,你可以发现什么有趣的线索?
  2. leb11-03.exe 如何安装leb11-03.dll 使其长期驻留?
  3. 恶意代码感染了Windows的那个文件? led11-03.dll做了什么?这个恶意代码将收集的信息存放在何处?
  4. 当运行这个代码的时,发生了什么?

1.使用基础静态分析过程,你可以发现什么有趣的线索?

对exe进行字符串的收集
1.png
cisvc.exe 内存检测会被修改 inet_epar32.dll 出现的两次让其觉的是复制该文件
dll字符串分析
image.png
看样子有对键盘记录的函数 调用user32.dll的函数不在少数 还有记录时间
微软:getAsyncKeyState 函数 (winuser.h) - Win32 apps | Microsoft Learn
C:\WINDOWS\System32\inet_epar32.dll
C:\WINDOWS\System32%s
cisvc.exe
net start cisvc 启动服务命令

2.leb11-03.exe 如何安装leb11-03.dll 使其长期驻留?

主函数第一步就是复制文件进行改名目录下存在此文件就会覆盖掉
Lab11-03.dll -> inet_epar32
image.png
创建字符串”C:\WINDOWS\System32\ cisvc.exe”把 sub_401070 传入字符串修改 在利用system执行
net start cisvc
image.png
往下分析CreateFileA (创建文件)GetFileSize(检索文件大小)CreateFileMappingA(创建映射对象)
MapViewOfFile(文件映射的视图映射到调用进程的地址空间中)这样来看是把cisvc.exe 映射到内存中进行可被读写和函数访问权限
image.png
往下跟 UnmapViewOfFile 停止程序的一个内存映射 上面函数这边的操作是对其进行写入操作,映射位置传进EDI ver28偏移量
image.png
进入for循环 rep movsd , ecx E4 进行记录写入量 这个位置刚好也是对 cisvc.exe 进行关键的修改
image.png
开始数据进行复制到映射文件dword_409030 这里面就是添加进去的内容
image.png
往下跟
image.png
这个 C 一下 看 代码 可以看到这里存在一个 jmp跳转 loc_409134
image.png
往下看向 call sub_4090DD
image.png
继续看第一个call 是 对程序的及地址捕获 获取PEB表,并获取ntdll基址 这边需要动调可能更加明显
猜想是调用下面的dll 进行执行函数
image.png

继续往下可以看到这边有一串 \WINDOWS\System32\inet_epar32.dll 这一次就刚好和前面复制进行修改的dll 一样 这边是将Lab11-03.dll 复制过去 进行改名 inet_epar32.dll 加载shellcode 导出在 inet_epar32.dll中编写的函数 同时也对 cisvc.exe 进行感染 并且通过硬链接创建03.dll 关联 inet_epar32.dll 实现永久驻留
image.png
image.png

3.恶意代码感染了Windows的那个文件? led11-03.dll做了什么?这个恶意代码将收集的信息存放在何处?

加载 Lab11-03.dll ->> inet_epar32.dll 对 cisvc.exe进行感染
把DLL 载入 IDA 分析 dllmain 导出的函数 zzz69806582 分析指向指针的函数
继续往下跟进 CreateFileA 函数 开始创建文件
image.png

文件创建 路径 ‘C:\WINDOWS\System32\kernel64x.dll’ 在此之前创建了个“MZ” 互斥量
image.png
image.png

往下跟进一个指针判断 是否存创建成功以及权限句柄的创建
image.png
向下跟进 sub_10001380
image.png
跟进 call sub_10001030 1024 大小 还是文件一次写入的范围
image.png
跟进sub_10001000 第一步的获取
GetForegroundWindow 获取窗口句柄线程来定位输入点
GetWindowTextA 捕获窗口中的标题等文件写入长度超出限制开始阶段

image.png
导出函数zzz69806582中得到实现
也就是这程序对键盘和输入点进行了监听捕获,存放点在C:\WINDOWS\System32\kernel64x.dll 。

4.当运行这个代码的时,发生了什么?

exe恶意代码将lab11_03.dll 复制到系统目录C:\WINDOWS\System32\ 并且改名 为 inet_epar32.dll ,主程序通过修改cisvc.exe 程序 来保持 lab11_03.dll 保持常驻

修改cisvc.exe ——— |
|
exe ——> |
V
lab11_03.dll>> inet_epar32.dll 常驻 开始 释放dll代码创建 C:\WINDOWS\System32\kernel64x.dll 捕获窗口以及鼠标和键盘 写入记录