实验三:恶意代码的感染特征和网络特征
一、实验目的
二、实验内容
三、实验步骤
步骤1:提取并分析字符串信息。
将Lab03-01.exe拖入Strings工具或使用命令行strings.exe -a Lab03-01.exe。将输出结果保存至文本文件。使用Ctrl+F搜索关键字“http”、“127.”(代表本地回环测试IP)以及“.exe”。重点关注类似C:\Windows\System32\winvmx.exe的文件路径字符串。同时搜索“Global\”或“Mutex”关键词,查找互斥体名称(如Global\{8B7E3C21-A123-4b22-8E2F-123456789012})。记录所有与网络通信和文件操作相关的关键字符串。
步骤2:分析网络导入函数与通信机制。
打开Dependency Walker,加载Lab03-01.exe。在左侧导入依赖树中展开ws2_32.dll(Winsock库)或wininet.dll(高层HTTP库)。检查是否包含WSAStartup、socket、connect、send、recv等底层网络函数,或者InternetOpen、InternetConnectUrl等高层函数。若发现InternetConnect函数,结合步骤1中提取的127.0.0.1和端口号(如80),验证该样本试图建立HTTP连接。
步骤3:定位持久化与感染机制。
在Strings工具的输出中继续搜索注册表路径Software\Microsoft\Windows\CurrentVersion\Run。若发现此类字符串紧邻样本名称或其拷贝名称,则确认了通过注册表实现自启动的意图。同时,查找CreateProcess或CopyFile等相关的导入函数,验证其具备文件复制和进程创建的能力。如果发现winvmx.exe这一特定文件名,需标记其为恶意代码在系统中的伪装名称。
步骤4:行为推断与交叉验证。
综合上述数据:步骤1发现了目标IP127.0.0.1和目标文件路径C:\Windows\System32\winvmx.exe;步骤2确认了具备TCP/HTTP连接能力的API;步骤3找到了注册表自启动键值。由此推断:该样本是一个后门程序,运行后会将自己复制为系统目录下的winvmx.exe,通过修改注册表实现开机自启,并尝试连接本地或远程服务器等待指令。
四、实验分析
实验结果:
通过对Lab03-01.exe的静态分析,成功提取出其关键配置信息。样本中包含硬编码的IP地址127.0.0.1,表明其回连目标为本地主机,常用于实验环境。发现字符串C:\Windows\System32\winvmx.exe及注册表启动项路径,确认了其感染意图是将自身复制到系统目录并修改注册表以实现持久化。导入表分析显示其使用了InternetOpen等网络函数,验证了其作为网络后门的功能定位。
个人收获: 本次实验让我深入理解了恶意代码“配置提取”在静态分析中的核心地位。我学会了不再局限于查看代码逻辑,而是通过Strings等工具快速挖掘出样本的“指纹”(IP、域名、路径)。同时,我认识到恶意软件为了实现隐蔽和持久化,往往会将关键配置信息以明文或简单编码隐藏在资源段或数据段中。这种“非执行代码”层面的分析技术,是快速判定恶意代码威胁等级和攻击意图的高效手段。
本文作者:Linxiong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!