恶意代码分析 | Lab1

前言

穿插virus分析的学习,毕竟逆向技术最后要用在攻防中。

Lab1就没必要动态分析了,静态学学写法。

Lab01-01.exe

前面是内存映射技术,对内存进行修改操作。

Kernel32.dllLab01-01.dll的内存都Map出来,便于后续更改:

在这里插入图片描述

先来看看Lab01-01.dll

实现了一个有sleep,exec命令的远控木马:

在这里插入图片描述

回到exe,先是将自身进程exe加载的kernel32.dll替换为Lab01-01.dll的内容,

然后将导入表这些的Kernel32.dll名字替换为相近的Kerne132.dll(L和1的区别)

在这里插入图片描述

最后对C盘下的exe进行遍历,将每个exe的导入表的Kernel32.dll都换成恶意dll,并同样的修改导入表之类的。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Lab01-02.exe

有个UPX壳:在这里插入图片描述

脱壳后IDA看。

比较简单,这里创建了20个线程:

在这里插入图片描述

StartAddress

在这里插入图片描述

函数名已经很直白了,连接了“恶意网站“。

实际操作可以改为UrlDownloadFile来下载木马。

Lab01-03.exe (❌)

FSG壳。

在这里插入图片描述

尝试网上找个脱壳工具,但好像都不大成功,。等后面来手脱FSG壳再来分析。

Lab01-04.exe

信息收集很关键,CFF看,注意到resource处有端倪:

在这里插入图片描述

藏了个PE文件。

导出这个BIN。先IDA看主函数,

在这里插入图片描述

winup.exe

在这里插入图片描述

先看循环里面的sub_401000

在这里插入图片描述

枚举进程,找winlogon.exe

找到后就保存这个PID,

后面sub_401174进行了操作:

在这里插入图片描述

sfc_os.dll

在这里插入图片描述

那个sub4010FC(xxx)就是昨天刚好学DLL卸载接触过的Token提权,

在这里插入图片描述

这是为了CreateRemoteThread的权限,

紧接着:

lpStartAddress = (LPTHREAD_START_ROUTINE)GetProcAddress(v2, (LPCSTR)2);

获取sfc_os.dll中的一个函数,然后CreateRemoteThread注入到winlogon.exe中。

然后就是

MoveFileA(ExistingFileName, NewFileName);

\system32\wupdmgr.exe移动到\winup.exe

最后调用sub_4011FC

在这里插入图片描述

执行了释放的资源文件。

看看资源文件:

在这里插入图片描述

执行了winup.exe,然后将

恶意的update.exe下载覆盖了\system32\wupdmgrd.exe

为什么要这么做?

我的理解:(可能有误)

核心目的是将\system32\wupdmgrd.exe覆盖为恶意update.exe,

但为了不影响正常功能(防止察觉),所以将\system32\wupdmgrd.exe先移动到winup.exe

因为前面提到过winup.exe也能执行更新这些,所以将原本的\system32\wupdmgrd.exe作了个备份。

原有的update功能仍然在,只是多了恶意的update.exe。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值