6 个仓库
Frameworks providing a unified interface for analyzing different binary executable formats.
Distinct from Binary Analysis: Candidates focus on serialization formats or general lists, not a consistent analysis interface across formats.
Explore 6 awesome GitHub repositories matching operating systems & systems programming · Cross-Format Binary Analysis. Refine with filters or upvote what's useful.
This project is a technical reference and documentation suite focused on the internal architecture and operational principles of the Java Virtual Machine. It provides comprehensive guides and analysis on how the virtual machine manages class loading, memory organization, and bytecode execution. The documentation distinguishes itself by providing deep dives into specific runtime mechanisms, such as the binary decoding of class files, the hierarchical delegation model for class loaders, and the precise sequence of the loading, linking, and initialization lifecycle. It also details memory reclam
Provides comprehensive analysis of the JVM binary format, including constant pools and bytecode instructions.
pwndbg is a GDB plugin and binary analysis framework designed for reverse engineering, exploit development, and low-level program analysis. It extends the core functionality of the debugger to provide advanced memory inspection and automation tools. The project distinguishes itself with specialized capabilities for heap analysis across glibc, jemalloc, and musl, as well as a comprehensive kernel debugging toolkit for inspecting Linux kernel tasks and slab allocators. It includes an integrated ROP gadget searcher for constructing exploit chains and an LLM-powered debugging assistant that provi
Provides a consistent interface for reverse engineering across different binary formats.
LIEF 是一个用于解析、修改和分析跨平台可执行二进制格式和系统共享缓存的框架。它作为一个跨平台库,用于程序化操作 ELF、PE 和 MachO 二进制文件。 该项目提供了用于更改可执行文件内部结构和段以改变程序行为的工具。它还包含一个专用解析器,用于从组合的系统共享缓存中恢复单个动态库。 该工具集涵盖了二进制可执行文件分析、机器码反汇编以及调试元数据和符号信息的提取。它进一步支持跨各种处理器架构的机器码和汇编的双向翻译。
Provides a unified framework for altering internal components across different binary executable formats.
JaCoCo 是一个 Java 代码覆盖率工具和字节码插桩工具,用于衡量测试过程中执行了源代码的哪些部分。它既可以作为运行时代理来实时监控应用执行,也可以作为离线字节码插桩库,从而在受限的运行时环境中捕获执行数据。 该项目的特点是提供动态和静态两种插桩路径来跟踪执行情况。它包含一个用于实时监控的运行时代理,并具备在执行前修改已编译类文件的能力。此外,它还支持在不中断活动应用的情况下,通过远程网络连接从运行中的进程检索执行指标。 该系统可计算指令、分支、行、方法和类级别的定量覆盖率指标,以及圈复杂度。它提供了合并多次测试运行数据、在 CI/CD 质量门禁中强制执行覆盖率阈值,以及生成将执行的字节码映射回源代码的报告等功能。此外,它还支持将结果直接显示在代码编辑器中的可视化集成。 该工具与构建自动化系统和命令行接口集成,以实现数据收集和报告生成的自动化。
Processes large sets of class files using streaming patterns to keep memory usage low during report generation.
w64devkit 是一个便携式 MinGW-w64 C/C++ 开发套件和适用于 Windows 的自包含 GCC 工具链。它提供了一个原生构建环境,用于将 C、C++ 和 Fortran 源代码编译为 x86 和 x64 可执行二进制文件,而无需系统级安装或对宿主注册表和环境变量的修改。 该工具链作为一套自包含的编译器、链接器和汇编器分发,可从任何目录运行。它包含一个专门的基于 Shell 的环境包装器,用于自动配置其二进制文件的路径,并利用静态链接消除外部运行时依赖冲突。 除编译外,该套件还包括用于检查内存和分析运行进程的调试工具,以及用于解码导入和导出表的 PE 二进制检查工具。它还涵盖构建工作流自动化、二进制代码签名以及 Windows 安装包的创建。
Includes utilities to decode import tables and name decorations within Windows portable executable files.
cargo-bloat is a binary size analyzer and compilation analysis tool for Rust. It identifies the largest functions and dependencies within compiled executables to locate space-consuming code and reduce the overall binary footprint. The tool functions as a build profile inspector and symbol size profiler, allowing users to analyze how different compiler options and build profiles affect the final binary size. It can export symbol data into human-readable tables or JSON format to monitor the footprint of specific crates. Capabilities include multi-target analysis across different platforms and
Analyzes binaries across different platforms and formats using a consistent analysis interface.