当前位置:

首页 > 软件教程 > 内核级病毒攻防:Windows可执行文件解析及工具使用

内核级病毒攻防:Windows可执行文件解析及工具使用

多数人使用Windows系统,对其以.exe结尾的文件应不陌生,运行程序只需双击此类文件即可。这类文件称为系统的可执行文件,若要进行侵入、劫持或注入恶意代码,我们必须先了解其结构。.exe文件也被称为PE文件,由一系列段头和段构成。文件开头是一系列段头数据结构,用于描述各个段的属性,之后是包含代码和数据的段。其中,.text段包含CPU可执行的指令,是唯一包含可执行代码的段。.rdata段包含引入和导出的数据及只读数据。.data段包含程序的全局数据,程序中的代码可以自由访问这些数据,而局部数据则不在此段

多数人使用Windows系统,对其以.exe结尾的文件应不陌生,运行程序只需双击此类文件即可。这类文件称为系统的可执行文件,若要进行侵入、劫持或注入恶意代码,我们必须先了解其结构。

.exe文件也被称为PE文件,由一系列段头和段构成。文件开头是一系列段头数据结构,用于描述各个段的属性,之后是包含代码和数据的段。其中,.text段包含CPU可执行的指令,是唯一包含可执行代码的段。.rdata段包含引入和导出的数据及只读数据。.data段包含程序的全局数据,程序中的代码可以自由访问这些数据,而局部数据则不在此段存储。.rsrc段包含程序资源,如菜单、图标和字符串等。

在Windows系统上,查看PE结构最常用的程序是PEView,其界面如下:

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具左侧面板展示了它从.exe文件读取的各种头部信息。最初的IMAGE_DOS_HEADER和MS_DOS子程序并无意义,接下来是IMAGE_NT_HEADERS中的IMAGE_FILE_HEADER段,包含了exe文件的关键信息,例如编译时间,但这个时间是可以被修改的。黑客常会先注入恶意代码,然后编译成可执行文件,使得此段中的时间较新,并通过修改来掩盖这一过程。

IMAGE_OPTIONAL_HEADER包含许多重要信息,例如Subsystem字段,用于表明程序是窗口类型还是命令行类型。如果其值为IMAGE_SUBSYSTEM_WINDOWS_GUI,则为窗口类型;若最后三个字符是CUI,则为命令行类型。

最值得关注的信息来自IMAGE_SECTION_HEADER,如下图所示,其中VIRTUAL_SIZE表示段加载到内存后的大小,Size of Raw Data表示段的实际物理大小。通常这两个值相等,但考虑到内存对齐,虚拟大小可能大于实际大小。

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具这两个字段可以反映很多信息。如果.text段的Virtual Size远大于Size Of Raw Data,则该程序可能被打包过。被打包的可执行文件通常会显示出许多异常段,例如下图是被打包后的exe文件在PEView中的情况:

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具可以看到如UPX1这样的段与正常exe文件的.text段不同,发现这种情况时,我们应怀疑文件被篡改。UPX0段的Size of Raw Data为0,但Virtual Size为2000,意味着解压后的代码将占据如此多的虚拟空间。

在PE文件中,资源段是黑客常做手脚的地方。使用名为Resource Hacker的软件可以有效查看此段内容,如下图所示:

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具加载exe文件后,Resource Hacker会读取.rsrc段,提取程序运行时使用的资源,如字符串、图标等。图中显示的是程序的对话框资源,左侧面板还有其他关键资源,如菜单和版本信息。黑客或正规程序会将代码或驱动程序从资源段中提取并运行。

在进行动态分析时,我们需要运行恶意代码或受感染的可执行文件,并监控其行为,通过运行时的表现反向推导其设计原理。这时需要使用Process Monitor来监控代码运行时的各种消息或对系统的操作:

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具如图所示,Process Monitor监控了当前运行程序的各种状态,例如选中的进程调用了注册表API ReqQueryKey。通过这些信息,我们可以很好地分析恶意代码的目的和运行原理。由于抓取的信息过多,我们需要使用过滤器找出感兴趣的内容,如下图所示:

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具通过点击“Filter”菜单并选择“Operation”,然后填入SetReqValue,它会过滤出所有执行该调用的进程。另一个监控进程的有力工具是Process Explorer,这是进行Windows木马和病毒动态分析时不可或缺的工具,其运行情况如下图:

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具它能以丰富的界面显示所选进程的各种动作,有5列分别显示进程ID、CPU使用情况、基本描述和开发商名称。它的一个重要特性是能监控进程释放的子进程,许多恶意代码会采用这种方式。它还提供查看进程在磁盘上和内存中的字符串功能,选择进程后右键选择“properties”,在弹出的对话框中选择“strings”,可以查看其自带的字符串资源,有disk和memory两个选项。如果disk选项中的字符串与memory中的差异很大,说明该进程可能被替换,运行在内存中的不是原本的磁盘代码。

由于Windows高度依赖注册表机制,操纵注册表也是黑客常用的手段之一。通过监控注册表的变化有助于分析恶意代码的运行机制,常用的注册表工具是Regshot:

内核级病毒与木马攻防:windows可执行文件结构解析及常用工具点击“1st shot”,它会记录当前注册表的内容,然后运行恶意程序或代码,再次启动获取注册表信息,并与第一次进行比较,两次的差异可以认为是恶意程序对注册表的操作。

更多有用的工具和分析方法将在后续的实践中进一步学习和利用。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
作者最新文章
软件教程
相关文章 更多
蛙蛙写作卸载后如何重新下载安装
蛙蛙写作卸载后如何重新下载安装

蛙蛙写作卸载后如何找回作品?本文提供Windows、iOS和Android端的标准重装步骤,强调登录原账号与云端同步检查,避免误删本地草稿,确保多端数据无缝衔接。

nginx配置跨域规则详解及代码示例教程
nginx配置跨域规则详解及代码示例教程

详细讲解Nginx配置跨域资源共享(CORS)的核心指令、配置步骤与代码示例,涵盖简单请求、预检请求、携带Cookie场景及生产环境多域名匹配方案。

ediary密码怎么解锁详细步骤图文教程
ediary密码怎么解锁详细步骤图文教程

遇到eDiary打不开?先分清是本地密码还是云账号密码。本文提供基于提示问题的本地解锁步骤,以及通过软件内Account入口找回云密码的详细流程,同时警示重置云密码的数据风险。

蛙蛙写作App下载失败如何解决
蛙蛙写作App下载失败如何解决

遇到蛙蛙写作App下载失败?本文详解如何通过官方教程页获取iOS/Android正版入口,核对App Store开发者信息,排查网络、存储及系统兼容性问题,避免误装同名应用,实现手机与电脑端创作同步。

荣耀手机关闭纯净模式安装立刻MV教程
荣耀手机关闭纯净模式安装立刻MV教程

在荣耀手机上安装立刻MV遇到拦截?本教程详解如何通过关闭纯净模式或授权外部来源应用来解决安装问题,并提供安装后的安全恢复建议,适用于不同MagicOS版本的荣耀机型。

swift对象存储怎么用?新手部署配置与操作教程
swift对象存储怎么用?新手部署配置与操作教程

swift对象存储怎么用?新手部署配置与操作教程,提供完整的部署、配置和使用步骤,帮助初学者快速上手。

爱贝壳内容同步助手怎么用详细操作教程
爱贝壳内容同步助手怎么用详细操作教程

详解爱贝壳内容同步助手的浏览器扩展用法,涵盖工具栏入口、内容类型设置、目标平台选择及发布前检查步骤,适合初次接触多平台分发的用户快速上手。

闪闪童画功能设置教程图详细操作步骤图解
闪闪童画功能设置教程图详细操作步骤图解

手把手教你使用闪闪童画App:包括高清扫描去阴影、自定义画框与语音介绍、按主题创建画册、生成私密或公开线上画展,以及开启iCloud多设备同步和桌面小组件展示,完整保留孩子成长画作。

蛙蛙写作安装完成后怎么登录账号
蛙蛙写作安装完成后怎么登录账号

蛙蛙写作安装完成后,通过手机App个人中心或电脑官网顶部按钮即可登录。本文详解手机号验证码登录步骤、收不到验证码的排查方法,以及如何确保多端作品同步。

PicHound安装配置详细教程与操作步骤
PicHound安装配置详细教程与操作步骤

详解 PicHound 扩展在 Chrome 等浏览器中的安装步骤、图标固定方法、站点访问权限设置及图片查找技巧,解决无法识别或加载缓慢等常见问题。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

PDF教程
PDF教程

正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

Mac软件 更多
WPS Office macOS版
WPS Office macOS版
macOS

WPS Office是一款面向macOS用户的综合办公套件,将文字处理、电子表格、演示文稿、PDF工具、模板与云协作整合在同一应用中。它兼容常见Microsoft Office格式,支持Intel及Apple芯片Mac,基础功能可免费使用,

Shapr3D macOS版
Shapr3D macOS版
Mac

Shapr3D是一款面向工业设计、机械工程、建筑概念和三维打印工作流的CAD软件。Mac版采用Parasolid建模内核,支持草图约束、实体建模、工程图、可视化渲染及常见CAD格式交换,并可通过账户在多台设备之间同步项目。

REAPER macOS版
REAPER macOS版
Mac

REAPER是Cockos开发的数字音频工作站,提供多轨音频与MIDI录制、剪辑、处理、混音和母带制作工具。Mac版兼容Intel与Apple芯片,支持AU、VST、VST3、CLAP等插件格式,并提供高度可定制的工作流程。

WINDOWS 更多
Adobe Photoshop Windows版
Adobe Photoshop Windows版
Windows

Adobe Photoshop 是面向摄影师、设计师和内容创作者的专业图像处理工具,可在 Windows 上完成照片修饰、选区抠图、图层合成、文字排版、绘画及生成式编辑。软件采用订阅授权,由 Creative Cloud 管理安装、更新与许

Adobe InDesign Windows版
Adobe InDesign Windows版
Windows

Adobe InDesign 是面向印刷与数字出版的专业页面排版工具,可制作书籍、杂志、宣传册、海报、交互式 PDF 和电子书。它提供精细的文字样式、多页面管理、印前检查及多格式输出能力,并能与 Photoshop、Illustrator

Adobe Illustrator Windows版
Adobe Illustrator Windows版
Windows

Adobe Illustrator 是用于绘制矢量图形、插画、图标、徽标和版式的专业设计工具。它以路径和锚点为核心,作品放大后仍能保持清晰,并提供画板、文字、渐变、图像描摹及精确变换等功能,适合品牌视觉、印刷物料、数字界面和商业插画创作。