![黑客攻防从入门到精通:黑客与反黑客工具篇(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/950/31621950/b_31621950.jpg)
1.1.2 WinHex编辑器
WinHex是一款以通用十六进制编辑器为核心,专门用于处理数据恢复、低级数据处理、IT安全性及各种日常紧急情况的高级编辑工具。该工具的主要作用是分析和比较文件、磁盘克隆、数据擦除、搜索和替换等,利用该工具可以进行检查和修复各种文件、恢复删除文件、硬盘损坏造成的数据丢失等操作。下面将介绍如何配置和使用WinHex编辑器。
(1)配置WinHex
为了充分地利用WinHex工具的强大功能,在使用该工具之前还需要对其进行一些简单的配置。具体的操作步骤如下。
步骤1:下载并解压缩WinHex文件后,双击WinHex.exe可执行文件,即可打开“WinHex”主窗口,如图1.1.2-1所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer23.jpg?sign=1739678122-stCLqOJuS3vW6yRpqFZ3htPGtSAlLz65-0-9246fa259f4f621cbf82bba0e51f396a)
图1.1.2-1
步骤2:依次选择“Options(选项)”→“General(常规)”菜单项,即可打开“General Options(常规选项)”对话框,在其中可以设置临时文件的文件夹的存放位置,如:C:\Users,并勾选“(Hexadecimal offsets)十六进制偏移量”复选框,将虚拟地址和偏移地址都设置为十六进制的,如图1.1.2-2所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer33.jpg?sign=1739678122-3pch2QLxSIW7O3QSsBIw2sTfHocFUOn0-0-84fee2ea7ae14b70e081c03afea42eee)
图1.1.2-2
步骤3:依次选择“Options(选项)”→“Edit Mode(编辑模式)”菜单项,即可打开“Select Mode(选择模式)”对话框,如图1.1.2-3所示。由于WinHex默认是写保护方式的,这里将编辑模式修改为“Default Edit Mode(=editable)(默认的编辑模式(=可编写))”选项。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer35.jpg?sign=1739678122-qAhH0NtLWTOVk4VrWLaVTYrlSDIG3AXi-0-1fa285a9a2c40a79992880ff11b28433)
图1.1.2-3
步骤4:依次选择“Options(选项)”→“Data Interpreter Options(数据解析器选项)”菜单项,即可打开“Data Interpreter Options(数据解析器选项)”对话框,可在其中设置数据解析器的各个属性,如图1.1.2-4所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer36.jpg?sign=1739678122-wDCj4dWIQfdc9zbEiWXSiM5cCRjFwtsJ-0-960fa5aef8bcbe6e351230b0285b725e)
图1.1.2-4
(2)WinHex的使用
WinHex的主要功能是以十六进制方式编辑和修改机器码,另外它还有编辑文本、文件比较以及内存编辑等功能。该工具的具体使用步骤如下。
步骤1:在“WinHex”主窗口中依次选择“File”→“Open”菜单项,即可打开“Open Files(打开文件)”对话框,可在其中选择需要打开的应用程序,如图1.1.2-5所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer37.jpg?sign=1739678122-YD64L4kygmhi7X2GEywfPG2HLggJXXx2-0-cb572fda5437412737c62d84a1dd2c71)
图1.1.2-5
步骤2:单击“打开”按钮,即可在“WinHex”主窗口中看到该文件的十六进制代码,如图1.1.2-6所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer38.jpg?sign=1739678122-2se2K1Xy23ax9n8jq8v14c5Zcv4nbTeA-0-e9e1a2f5c7f556702ab60b7b97b30c0e)
图1.1.2-6
步骤3:在WinHex中可以定位到某个偏移地址处。在“WinHex”主窗口中依次选择“Navigation(浏览)”→“Go To Offset(转到偏移量)”菜单项,即可打开“Go To Offset(转到偏移量)”对话框。在“New position(新位置)”文本框中输入“0000050”,如图1.1.2-7所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer39.jpg?sign=1739678122-pWvXAUnPKSdMWdDTWfAq6dFAlw1y95Fz-0-0b59077b7538ffd7ed7070d61b3ed73b)
图1.1.2-7
步骤4:单击“OK”按钮,即可将光标转到相应的地址处,如图1.1.2-8所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer1035.jpg?sign=1739678122-VeGWOlc2UHUmr5SWoUC5sDuhqv1vbJDB-0-fee44243cdca2a39eede00e3ab1d65b9)
图1.1.2-8
步骤5:使用WinHex还可以搜索出一些程序内的字符串,并且可以对它们进行编辑。在“WinHex”主窗口中选择“Search(搜索)”→“Find Text(查找文本)”命令,即可打开“Find Text(查找文本)”对话框。在其中输入需要修改的字符串,如“run in DOS mode”,将搜索方式设置为“ASCII/Code page”选项,如图1.1.2-9所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer40.jpg?sign=1739678122-3aimBRdVAkdIVJJ0mDKVyhQXurfudi0s-0-0fd18dd1fef811b16c509568633a21b7)
图1.1.2-9
步骤6:单击“OK”按钮,即可看到已经跳转到要搜索字符串的地址处,如图1.1.2-10所示。在窗口右侧文本区域中进行字符串的修改,单击工具栏上的保存按钮,即可保存。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer1034.jpg?sign=1739678122-a8B9BsnYtrokDJk61IGuO7ado512vvk4-0-997ecabc7545aa8be5782fa04a8ba9e9)
图1.1.2-10
步骤7:利用WinHex软件还可以对文件进行连接、分割、合并、不可逆转删除和比较等操作。在解密时经常用到的功能是比较,即通过比较解密前后的文件,看出解密者对程序中的哪些代码做了修改,最后生成一个文本格式的差别报告。在Winhex主窗口中依次选择“Tools(工具)”→“Compare Data(比较数据)”菜单项,即可打开“Compare File/Disks Data(比较文件/硬盘数据)”对话框,如图1.1.2-11所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer24.jpg?sign=1739678122-NuIqgHqEIUg7YFJO9gYJSLHKWwO5GVP7-0-107e88bb0468debcf46bfb08f42549ed)
图1.1.2-11
步骤8:分别单击“Data source 1”“Data source 2”文本框后面的浏览按钮,即可打开“Start Center(启动中心)”对话框,如图1.1.2-12所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer25.jpg?sign=1739678122-vlW3aG4RMFEizAJnkgANE8we8R4OYAbr-0-ea86a20363a5e4a25dbed8d31731f68b)
图1.1.2-12
步骤9:单击“Open File(打开文件)”按钮,在“Open Files(打开文件)”对话框中选择需要比较的文件,单击“打开”按钮,即可返回“启动中心”对话框。单击“OK”按钮返回“比较文件/硬盘数据”对话框,即可看到选择的需要比较的文件,如图1.1.2-13所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer26.jpg?sign=1739678122-TnQ8SxvHy71QCvMmvgiXQ6zPS0260jNC-0-2ae4cf0556811e3071d692eda5c6200f)
图1.1.2-13
步骤10:单击“Output as(输出)”文本框后面的浏览按钮,即可打开“Save Report As(保存报告为)”对话框,可在其中设置报告的保存位置和文件名,如图1.1.2-14所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer27.jpg?sign=1739678122-wWU9C51q7XPGk1DmpeyKETd98TT9L7ZK-0-9e4b4c5b8caae4525bd6db152272bf6f)
图1.1.2-14
步骤11:单击“保存”按钮,即可返回“比较文件/硬盘数据”对话框,可在其中看到报告的具体保存位置,如图1.1.2-15所示。单击“OK”按钮,即可打开“可以用记事本程序查看报告”提示框,如图1.1.2-16所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer28.jpg?sign=1739678122-ertL3JgFaKEqjStlsQhFcuNT6UedBxbh-0-f404832dfc0fb6afacbcdf874e7a377e)
图1.1.2-15
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer29.jpg?sign=1739678122-UCi9BohVRfHyVkcZhvUPNyYg9SqYm2wQ-0-cdedbd69844ad65e3fc3834400774ab5)
图1.1.2-16
步骤12:当系统完成文件的比较之后,将会产生一个文本文件,从中可以看到不同代码处的偏移地址、代码内容和差别总数等信息,如图1.1.2-17所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer30.jpg?sign=1739678122-vPghkQfXYjDIgoDZBmVs9mkMf55Nsk3F-0-c131508c5ee0c517f7b2dff8da21c55b)
图1.1.2-17
步骤13:在WinHex软件中还可以将应用程序分割为指定大小的文件。在WinHex主窗口中依次选择“Tools(工具)”→“Files Tools(文件工具)”→“Split(分割)”菜单项,即可打开“Split File(分割文件)”对话框,在其中选择需要分割的文件,如图1.1.2-18所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer31.jpg?sign=1739678122-rm0AsaKZadqo4eYiDhot0jiFIOzOZRF9-0-cfb457b81c08631f8ae411037bad4f48)
图1.1.2-18
步骤14:单击“Split(分割)”按钮,即可打开定义文件大小对话框,在其中设置文件的大小,如图1.1.2-19所示。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer32.jpg?sign=1739678122-pClsFJRK3LmBDGphbTQ1IoISBHT6q2Jz-0-a3fd137fd680612591f3e7567d648a65)
图1.1.2-19
步骤15:单击“OK”按钮,即可打开“Destination File(目标文件)”对话框,在其中设置目标文件的保存位置,如图1.1.2-20所示。单击“保存”按钮,即可进行文件分割并保存。
![](https://epubservercos.yuewen.com/999561/17122290505848206/epubprivate/OEBPS/Images/figer34.jpg?sign=1739678122-XkZalzt1nl8jjmS6N205liLy8yhnrzTV-0-7ec6b97cb908cf2697f9b0f470e66b31)
图1.1.2-20