恶意代码分析实战Lab01-03,lab01-04

本文深入分析了lab01-03.exe和lab01-04.exe两个恶意代码样本,揭示了其潜在威胁及感染机制。通过对VirusTotal的检测结果、加壳情况、编译时间、导入函数等关键信息的解析,指出了恶意代码可能执行的操作,包括权限提升、文件写入及执行、网络下载等。同时,通过资源节分析,发现了内置的下载器程序。

分析lab01-03.exe,lab01-04.exe
先来看lab01-03.exe
Q1.将Lab01-03.exe 文件上传至http://www. VirusTotal.com/进行分析并查看报告。文件匹配到了已有的反病毒软件特征吗?
Q2.是否有这个文件被加壳或混淆的任何迹象?如果是这样,这些迹象是什么?如果该文件被加壳,请进行脱壳,如果可能的话。
Q3.有没有任何导入函数能够暗示出这个程序的功能?如果是,是哪些导入函数,它们会告诉你什么?
Q4.有哪些基于主机或基于网络的迹象,可以被用来确定被这个恶意代码所感染的机器?
Q1.将Lab01-03.exe 文件上传至http://www. VirusTotal.com/进行分析并查看报告。文件匹配到了已有的反病毒软件特征吗?
将文件上传到virustotal后
在这里插入图片描述
A1:可以看到报警率为64/73
Q2.是否有这个文件被加壳或混淆的任何迹象?如果是这样,这些迹象是什么?如果该文件被加壳,请进行脱壳,如果可能的话。
将实验文件载入peid
在这里插入图片描述
可以看到是被加壳的,加壳器为FSG
进一步查看其导入表
在这里插入图片描述
只有两个函数LoadLibrary,和GetProcAddress,加壳文件往往只有这两个导入函数。
A2这个文件是加壳的,但我们在这个时候还无法进行脱壳

Q3.有没有任何导入函数能够暗示出这个程序的功能?如果是,是哪些导入函数,它们会告诉你什么?
Q4.有哪些基于主机或基于网络的迹象,可以被用来确定被这个恶意代码所感染的机器?
A3,A4: 在没有脱壳的情况下还无法回答。我们将在后面的课程中学到如何手动脱壳

接着分析lab01-04.exe
Q1.将Lab01-04.exe 文件上传至http://www. VirusTotal.com/进行分析并查看报告。
Q2.是否有这个文件被加壳或混淆的任何迹象?如果是这样,这些迹象是什么?如果该文件被加壳,请进行脱壳,如果可能的话。
Q3.这个文件是什么时候被编译的?
Q4.有没有任何导入函数能够暗示出这个程序的功能?如果是,是哪些导入函数,它们会告诉你什么?
Q5.有哪些基于主机或基于网络的迹象,可以被用来确定被这个恶意代码所感染的机器?
Q6. 这个文件在资源段中包含一个资源。使用Resource Hacker工具来检查资源,然后抽取资源。从资源中你能发现什么吗?
依次分析
Q1.将Lab01-04.exe 文件上传至http://www. VirusTotal.com/进行分析并查看报告
在virustotal上传实验文件
在这里插入图片描述
检测结果如下
在这里插入图片描述
A1:可以看到报警率为59/72

Q2.是否有这个文件被加壳或混淆的任何迹象?如果是这样,这些迹象是什么?如果该文件被加壳,请进行脱壳,如果可能的话。
载入peview
在这里插入图片描述
A2:没有加壳或混淆的迹象
Q3.这个文件是什么时候被编译的?
将文件载入studype+
在这里插入图片描述
A3: 3.根据文件头,这个文件是在2019年8月31编译的。而这本书的成书时间在2019之前,显然,这个编译时间是伪造的,因此我们还不能确定这个文件到底是什么时候被编译的。

Q4.有没有任何导入函数能够暗示出这个程序的功能?如果是,是哪些导入函数,它们会告诉你什么?
载入peid,查看导入表
在这里插入图片描述
从advapi32.dll导入函数可以看到,程序做了一些与权限有关的事情,比如是在访问使用了特殊权限保护的文件。
在这里插入图片描述
从kernel32.dll导入函数可以这个程序会对资源节进行操作(LoadResource、FileResource、SizeofResource),从资源节中加载数据,写一个文件到磁盘上(CreateFile,WriteFile),执行磁盘上的文件(WinExec),GetWindowsDirectory的调用,我们可以猜测这是将文件写到系统目录
A4:从advapi32.dll 导入的函数,表明程序在做一 些与权限有关的事情。导入函数WinExec 和WriteFile,以及VirusTotal.com 的结果,告诉我们这个程序会写一个文件到磁盘上,然后执行它。导入函数还有一些是用于从文件的资源节中读取信息的

Q5.有哪些基于主机或基于网络的迹象,可以被用来确定被这个恶意代码所感染的机器?
使用strings查看字符串
用法很简单
strings 文件名
在这里插入图片描述在这里插入图片描述

A5:字符串\system32\wupdmgr.exe表示,结合GetWindowsDirectory函数,可以推测,恶意代码会在C:\windows\system32\wupdmgr.exe这个位置创建或者修改文件。字符串www. malwareanalysisbook. com/ updater . exe可能是保存下载恶意代码位置。
Q6. 这个文件在资源段中包含一个资源。使用Resource Hacker工具来检查资源,然后抽取资源。从资源中你能发现什么吗?
使用resource hacker载入
在这里插入图片描述
可以看到资源节里存储着另一个可执行文件,我们可以将其另存为一个可执行文件,操作如下
在这里插入图片描述在这里插入图片描述

此时载入peview载入lab1-4.exe进行分析
在这里插入图片描述
查看其导入表可以知道,调用URLDownloadToFile,这个函数常见于恶意下载器,用于网络操作;还调用了WinExec,可能会执行下载过来的文件。
A6:资源节中包含了另一个PE可执行文件。使用ResourceHacker可以将这个资源保存为二进制数据,然后使用分析-一个可执行文件的方法来分析这个二进制文件。在资源节中的可执行文件是-一个下载器程序,用来下载额外的恶意代码。

<think>嗯,用户想了解Lab03-03.exe这个经典恶意代码样本的信息。先回顾一下用户提供的资料和引用内容。 用户提供了两份参考资料。引用[1]提到这个样本会把自身复制到系统目录并改名,还会修改注册表实现自启动,以及连接特定网站。引用[2]则展示了动态分析过程,发现它会通过svchost进程记录键盘输入到日志文件。 用户之前问过Lab03-01.exe,现在转向Lab03-03.exe,说明ta在系统学习《恶意代码分析实战》的系列实验。这类用户通常是安全分析学习者或从业者,需要全面但清晰的样本剖析。 考虑整理几个核心模块来回答: 恶意行为方面要突出两点:持久化机制(文件复制+注册表修改)和键盘记录功能(隐蔽的日志记录方式)。技术特点要强调模块化设计(分离恶意模块与合法进程)和反分析技巧(动态加载代码)。分析难点在于它如何利用svchost进程实现隐蔽监控。 准备在回答中详细说明它的键盘记录技术原理——通过注入svchost进程来绕过检测,记录内容会明文存储。还要提醒防护建议,比如注册表监控和进程行为分析这类检测方法。 相关内容部分想到三个方向:同系列样本分析、键盘记录恶意代码的演变、检测对抗技术的发展。这样既延续实验脉络,又拓展知识维度。 结尾会给出实用分析技巧,比如在虚拟机里操作时要注意它的抗调试特性,网络分析要结合域名访问行为等。这些细对实际操作应该很有帮助。 </think>以下是关于Lab03-03.exe恶意代码样本的全面分析(基于《恶意代码分析实战》经典实验): --- ### **一、核心恶意行为分析** 1. **持久化机制** - 将自身复制到 `C:\WINDOWS\system32\vmx32to64.exe` - 通过修改注册表实现自启动(常见位置如 `HKLM\Software\Microsoft\Windows\CurrentVersion\Run`)确保每次开机执行[^1] 2. **键盘记录功能** - 注入系统进程 `svchost.exe` 实现隐蔽监控 - 记录用户键盘输入并明文保存到同级目录下的 `practicalmalwareanalysis.log` 文件[^2] - 验证方法:动态分析中打开记事本输入内容,日志文件实时更新(如下图): ``` 202X-XX-XX [svchost(3712)]: Hello! This is a test... ``` 3. **网络通信行为** - 主动连接 `www.practicalmalwareanalysis.com` - 目的可能为:下载额外恶意模块 / 上传窃取数据 / 接收C2指令[^1] --- ### **、技术特点与反分析手段** | 技术类别 | 具体实现 | 检测规避效果 | |-----------------|----------------------------------|---------------------------| | **进程注入** | 将恶意代码注入svchost.exe | 伪装为系统进程逃避基础检测 | | **日志存储** | 明文记录+本地存储 | 绕过网络流量监控 | | **域名硬编码** | 直接访问特定域名 | 避免IP黑名单但易暴露特征 | | **无加密通信** | HTTP明文传输 | 增加网络分析可追溯性 | --- ### **三、分析实验关键结论** 1. **静态分析价值** - 导入函数显示文件操作(`CreateFile`, `WriteFile`)和注册表修改(`RegSetValueEx`) - 字符串列表直接暴露C2域名和日志文件名[^1] 2. **动态分析技巧** - 需监控孤儿进程(如无父进程的svchost)的行为 - 文件系统监控可发现日志创建事件 - 网络抓包验证域名连接行为[^2] --- ### **四、防护与检测建议** ```python # 伪代码:检测类似恶意行为 def detect_malware(process): if process.name == "svchost.exe" and process.has_behavior("key_logging") and process.connects_to("practicalmalwareanalysis.com"): return "Lab03-03类似恶意代码" # 补充:检查注册表自启动项异常路径 if registry_key_contains("HKCU\\Run", "vmx32to64.exe"): return "检测到持久化后门" ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值