ImHex

ImHex

多功能十六进制编辑器 助力逆向工程和程序开发

ImHex是一款功能丰富的开源十六进制编辑器,适用于逆向工程、程序开发和数据分析。它提供自定义模式语言、主题定制、数据检查和预处理等特性,支持多种数据源和强大的搜索分析功能。ImHex还集成了反汇编器和YARA规则支持,配合现代化界面,为用户提供高效的十六进制编辑和数据处理体验。

ImHex十六进制编辑器逆向工程编程工具开源软件Github开源项目
<a href="https://imhex.werwolv.net"> <h1 align="center"> <picture> <img height="300px" style="margin: 0; padding: 0" src="https://yellow-cdn.veclightyear.com/2b54e442/d057acf0-278e-4d76-9f99-b58d3db0dbd7.svg"> </picture> </h1> </a> <p align="center"> 一款面向逆向工程师、程序员以及那些在凌晨3点工作时珍惜自己视网膜的人的十六进制编辑器。 <br> <a href="https://itinerarium.github.io/phoneme-synthesis/?w=/'ˈɪmhɛks/"><strong>/ˈɪmhɛks/</strong></a> </p> <p align="center"> <a title="'构建'工作流状态" href="https://github.com/WerWolv/ImHex/actions?query=workflow%3ABuild"><img alt="'构建'工作流状态" src="https://img.shields.io/github/actions/workflow/status/WerWolv/ImHex/build.yml?longCache=true&style=for-the-badge&label=构建&logoColor=fff&logo=GitHub%20Actions&branch=master"></a> <a title="Discord服务器" href="https://discord.gg/X63jZ36xBY"><img alt="Discord服务器" src="https://img.shields.io/discord/789833418631675954?label=Discord&logo=Discord&logoColor=fff&style=for-the-badge"></a> <a title="总下载量" href="https://github.com/WerWolv/ImHex/releases/latest"><img alt="总下载量" src="https://img.shields.io/github/downloads/WerWolv/ImHex/total?longCache=true&style=for-the-badge&label=下载量&logoColor=fff&logo=GitHub"></a> <a title="代码质量" href="https://www.codefactor.io/repository/github/werwolv/imhex"><img alt="代码质量" src="https://img.shields.io/codefactor/grade/github/WerWolv/ImHex?longCache=true&style=for-the-badge&label=代码质量&logoColor=fff&logo=CodeFactor&branch=master"></a> <a title="翻译" href="https://weblate.werwolv.net/projects/imhex/"><img alt="翻译" src="https://img.shields.io/weblate/progress/imhex?logo=weblate&logoColor=%23FFFFFF&server=https%3A%2F%2Fweblate.werwolv.net&style=for-the-badge"></a> <a title="插件" href="https://github.com/WerWolv/ImHex/blob/master/PLUGINS.md"><img alt="插件" src="https://img.shields.io/badge/插件-支持-brightgreen?logo=stackedit&logoColor=%23FFFFFF&style=for-the-badge"></a> </p> <p align="center"> <a title="下载ImHex的最新版本" href="https://imhex.download"><img alt="下载ImHex的最新版本!" src="https://yellow-cdn.veclightyear.com/2b54e442/33128a26-d4b3-4fa3-b2d8-df4ad43ffe58.png"></a> <a title="下载ImHex的最新每夜预发布版本" href="https://imhex.download/#nightly"><img alt="下载ImHex的最新每夜预发布版本" src="https://yellow-cdn.veclightyear.com/2b54e442/e095ada1-a25e-4ed3-9b5a-4fc88a3bed7a.png"></a> <a title="直接在浏览器中使用ImHex的Web版本!" href="https://web.imhex.werwolv.net"><img alt="直接在浏览器中使用ImHex的Web版本!" src="https://yellow-cdn.veclightyear.com/2b54e442/fbfb1643-443e-4556-8a61-e3db35f91218.png"></a> <a title="阅读ImHex的文档!" href="https://docs.werwolv.net"><img alt="阅读ImHex的文档!" src="https://yellow-cdn.veclightyear.com/2b54e442/cc87262e-8f9a-4aaf-9117-95623e5e0932.png"></a> </p>

支持

如果您喜欢我的工作,请考虑在GitHub赞助、Patreon或PayPal上支持我。非常感谢!

<p align="center"> <a href="https://github.com/sponsors/WerWolv"><img src="https://yellow-cdn.veclightyear.com/2b54e442/724d334f-85ff-4899-84d6-6d77b740f971.png" alt="GitHub捐赠按钮" /></a> <a href="https://www.patreon.com/werwolv"><img src="https://yellow-cdn.veclightyear.com/2b54e442/ea520fdf-f6fc-448a-a881-39078fac035d.png" alt="Patreon捐赠按钮" /></a> <a href="https://werwolv.net/donate"><img src="https://yellow-cdn.veclightyear.com/2b54e442/ba114e1f-81fe-4157-93da-9c012bbe6ada.png" alt="PayPal捐赠按钮" /></a> </p>

截图

十六进制编辑器、模式和数据信息 书签、反汇编器和数据处理器

<details> <summary><strong>更多截图</strong></summary>

数据处理器解密一些数据并将其显示为图像 用模式语言编写的STL解析器可视化3D模型 数据信息视图显示有关文件的各种统计信息

</details>

功能

<details> <summary><strong>功能丰富的十六进制视图</strong></summary>
  • 字节修补
  • 补丁管理
  • 无限撤销/重做
  • "将字节复制为..."
    • 字节
    • 十六进制字符串
    • C、C++、C#、Rust、Python、Java和JavaScript数组
    • ASCII艺术十六进制视图
    • HTML自包含div
  • 简单的字符串和十六进制搜索
  • 从开始、结束和当前光标位置跳转
  • 彩色高亮
    • 可配置的前景高亮规则
    • 使用模式、查找结果和书签的背景高亮
  • 将数据显示为多种不同类型的列表
    • 十六进制整数(8、16、32、64位)
    • 有符号和无符号十进制整数(8、16、32、64位)
    • 浮点数(16、32、64位)
    • RGBA8颜色
    • HexII
    • 二进制
  • 将数据解码为ASCII和自定义编码
    • 内置支持UTF-8、UTF-16、ShiftJIS、大多数Windows编码等
  • 分页数据视图
</details> <details> <summary><strong>用于解析和高亮文件内容的类C++自定义模式语言</strong></summary>
  • 基于MIME类型和魔术值自动加载
  • 数组、指针、结构体、联合体、枚举、位域、命名空间、小端和大端支持、条件语句等等!
  • 有用的错误消息、语法高亮和错误标记
  • 支持可视化多种不同类型的数据
    • 图像
    • 音频
    • 3D模型
    • 坐标
    • 时间戳
</details> <details> <summary><strong>主题支持</strong></summary>
  • 在深夜会话中使用时不会烧坏你的视网膜
    • 默认为暗模式,但也提供亮模式
  • 通过可共享的主题文件自定义所有UI元素的颜色和样式
  • 支持自定义字体
</details> <details> <summary><strong>导入和导出数据</strong></summary>
  • Base64文件
  • IPS和IPS32补丁
  • Markdown报告
</details> <details> <summary><strong>数据检查器</strong></summary>
  • 将数据解释为多种不同类型,支持字节序、十进制、十六进制和八进制以及位反转
    • 无符号和有符号整数(8、16、24、32、48、64位)
    • 浮点数(16、32、64位)
    • 有符号和无符号LEB128
    • ASCII、宽字符和UTF-8字符和字符串
    • time32_t、time64_t、DOS日期和时间
    • GUID
    • RGBA8和RGB65颜色
  • 通过检查器复制和修改字节
  • 通过模式语言添加新的数据类型
  • 支持隐藏未使用的行
</details> <details> <summary><strong>基于节点的数据预处理器</strong></summary>
  • 在十六进制编辑器中显示数据之前修改、解密和解码数据
  • 修改数据而不触及底层源
  • 支持添加自定义节点
</details> <details> <summary><strong>从多种不同数据源加载数据</strong></summary>
  • 本地文件
    • 支持快速高效加载大文件
  • 原始磁盘
    • 从原始磁盘和分区加载数据
  • GDB服务器
    • 通过GDB访问正在运行的进程或嵌入式设备的RAM
  • Intel Hex和Motorola SREC数据
  • 进程内存
    • 检查正在运行的进程的整个地址空间
</details> <details> <summary><strong>数据搜索</strong></summary>
  • 支持搜索整个文件或仅选定部分
  • 字符串提取
    • 可指定最小长度和字符集(小写、大写、数字、符号)
    • 可指定编码(ASCII、UTF-8、UTF-16大端和小端)
  • 序列搜索
    • 搜索字节或字符序列
    • 可忽略字符大小写
  • 正则表达式搜索
    • 使用正则表达式搜索字符串
  • 二进制模式
    • 搜索带有可选通配符的字节序列
  • 数值搜索
    • 搜索有符号/无符号整数和浮点数
    • 搜索值范围
    • 可指定大小和字节序
    • 可忽略未对齐的值
</details> <details> <summary><strong>数据哈希支持</strong></summary>
  • 提供多种不同算法
    • CRC8、CRC16和CRC32,支持自定义初始值和多项式
      • 提供多种默认多项式
    • MD5
    • SHA-1、SHA-224、SHA-256、SHA-384、SHA-512
    • Adler32
    • AP
    • BKDR
    • Bernstein、Bernstein1
    • DEK、DJB、ELF、FNV1、FNV1a、JS、PJW、RS、SDBM
    • OneAtTime、Rotating、ShiftAndXor、SuperFast
    • Murmur2_32、MurmurHash3_x86_32、MurmurHash3_x86_128、MurmurHash3_x64_128
    • SipHash64、SipHash128
    • XXHash32、XXHash64
    • Tiger、Tiger2
    • Blake2B、Blake2S
  • 对已加载数据的特定区域进行哈希
  • 对任意字符串进行哈希
</details> <details> <summary><strong>差异比较支持</strong></summary>
  • 比较不同数据源的数据
  • 差异高亮
  • 差异表格视图
</details> <details> <summary><strong>集成反汇编器</strong></summary>
  • 支持Capstone支持的所有架构
    • ARM32(ARM、Thumb、Cortex-M、AArch32)
    • ARM64
    • MIPS(MIPS32、MIPS64、MIPS32R6、Micro)
    • x86(16位、32位、64位)
    • PowerPC(32位、64位)
    • SPARC
    • IBM SystemZ
    • xCORE
    • M68K
    • TMS320C64X
    • M680X
    • Ethereum
    • RISC-V
    • WebAssembly
    • MOS65XX
    • Berkeley Packet Filter
</details> <details> <summary><strong>书签</strong></summary>
  • 支持带有自定义名称和颜色的书签
  • 在十六进制编辑器中高亮显示书签区域
  • 跳转到书签
  • 在新标签页中打开书签内容
  • 为书签添加注释
</details> <details - 基于LLVM的Itanium、MSVC、Rust和D语言解码器 - ASCII表 - 正则表达式替换器 - 数学表达式计算器(计算器) - 图形计算器 - 支持多种格式的十六进制颜色选择器 - 进制转换器 - 字节交换器 - UNIX权限计算器 - 维基百科术语定义查找器 - 文件工具 - 文件分割器 - 文件合并器 - 文件粉碎机 - IEEE754浮点数可视化工具 - 不变乘法除法计算器 - TCP客户端/服务器 - 欧几里得算法计算器 </details> <details> <summary><strong>内置内容更新器</strong></summary>
  • 直接从ImHex内下载数据库中的所有文件
    • 用于解码各种文件格式的模式文件
    • 模式语言的库
    • 用于文件类型检测的魔术文件
    • 自定义数据处理器节点
    • 自定义编码
    • 自定义主题
    • Yara规则
</details> <details> <summary><strong>现代界面</strong></summary>
  • 支持多个工作区
  • 支持自定义布局
  • 可分离的窗口
</details> <details> <summary><strong>易于上手</strong></summary>
  • 支持多种不同语言
  • 为初学者提供简化模式
  • 详尽的文档
  • 数据库中提供许多示例文件
  • 引导您了解ImHex功能的成就系统
  • 交互式教程
</details>

模式语言

模式语言是为ImHex开发的完全自定义编程语言。 它允许您以类C语法定义结构和数据类型,然后使用它们来解析和突出显示文件内容。

数据库

对于格式模式、库、魔术和常量文件,请查看ImHex-Patterns仓库。

欢迎您也在那里PR您自己的文件!

要求

要使用ImHex,需要满足以下最低系统要求。

[!重要] ImHex通常需要支持OpenGL 3.0的GPU。 有一些可用的软件渲染版本(带有-NoGPU后缀),不需要GPU,但可能比GPU加速版本慢得多。

如果可能的话,让ImHex使用您系统上的独立GPU而不是集成GPU。 ImHex通常也可以在集成GPU上正常运行,但Windows上某些Intel HD GPU驱动程序已知会导致图形artifacts。

  • 操作系统
    • Windows:Windows 7或更高版本(推荐Windows 10/11)
    • macOS:macOS 12.1(Monterey)或更高版本,
      • 支持较低版本,但您需要自己编译ImHex
    • Linux:"现代"Linux。以下发行版有官方发布版本可用。其他发行版可通过AppImage和Flatpak发布版本支持。
      • Ubuntu和Debian
      • Fedora
      • RHEL/AlmaLinux
      • Arch Linux
      • 基本上从源代码编译ImHex时,任何其他发行版也可以工作。
  • CPU:x86_64(64位)
  • GPU:OpenGL 3.0或更高版本
    • 支持集成Intel HD iGPU,但某些驱动程序已知会导致各种图形artifacts,特别是在Windows上。使用时请自行承担风险。
    • 如果您没有可用的GPU,Windows和macOS上有软件渲染版本可用
  • 内存:256MB,更复杂的分析可能需要更多内存
  • 存储:150MB

安装

有关如何安装ImHex的信息可以在安装指南中找到

编译

要在任何平台上编译ImHex,需要GCC(或Clang)支持C++23或更高版本。 在macOS上,还需要Clang来编译一些ObjC代码。 所有发布版本都使用最新可用的GCC构建。

[!注意] 许多依赖项都使用子模块捆绑到仓库中,因此请确保使用--recurse-submodules选项克隆它。 所有未捆绑的依赖项都可以使用/dist文件夹中的依赖项安装脚本安装。

更多信息,请查看编译指南。

贡献

请参阅贡献

插件开发

要为ImHex开发插件,请使用以下模板项目开始。然后您就可以访问整个libimhex以及ImHex API和内容注册表,以与ImHex交互或添加新内容。

致谢

贡献者

  • iTrooz将ImHex搬上网络,并在项目的各个部分做出了数百次贡献
  • jumanji144对模式语言和ImHex的基础设施做出了巨大贡献
  • Mary在将ImHex移植到MacOS方面提供了巨大帮助,并在开发过程中给予了支持
  • Roblabla为ImHex添加了MSI安装程序支持
  • Mailaender将ImHex引入Flathub
  • 其他所有在Discord或GitHub上报告问题的人,我与他们进行了很好的交流 :)

依赖项

  • 非常感谢ocornut开发的令人惊叹的Dear ImGui,用于构建整个界面
    • 感谢epezent开发的ImPlot,用于在各个地方绘制数据
    • 感谢Nelarius开发的ImNodes,用作数据处理器的基础
    • 感谢BalazsJako开发的ImGuiColorTextEdit,用于模式语言语法高亮
  • 感谢nlohmann开发的json库,用于配置文件
  • 感谢vitaut开发的libfmt库,它使格式化和日志记录变得更好
  • 感谢btzy开发的nativefiledialog-extended及其出色的支持,用于处理所有平台上的文件对话框
  • 感谢danyspin97开发的xdgpp,用于处理Linux上的文件夹路径
  • 感谢aquynh开发的capstone,它是反汇编窗口的基础
  • 感谢rxi开发的microtar,用于提取下载的商店资产
  • 感谢VirusTotal开发的Yara,由Yara插件使用
  • 感谢Martinsos开发的edlib,用于比较视图中的序列搜索
  • 感谢ron4fun开发的HashLibPlus,它实现了每一种哈希算法
  • 感谢mackron开发的miniaudio,用于播放音频文件
  • 感谢所有其他在ImHex中使用其库的团体和组织

许可证

ImHex的大部分内容遵循GPLv2-only许可证。 值得注意的例外是以下部分,它们遵循LGPLv2.1许可证:

  • /lib/libimhex:允许插件与ImHex交互的库。
  • /plugins/ui:包含其他插件可以使用的一些常见UI元素的UI插件库。

这样做的原因是允许为ImHex开发专有插件。

编辑推荐精选

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

热门AI助手AI对话AI工具聊天机器人
Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

下拉加载更多