binsync/binsync

GitHub: binsync/binsync

基于 Git 的跨反编译器协同逆向工具,让使用不同反编译器的团队成员能够实时同步和共享逆向分析标注信息。

Stars: 691 | Forks: 53

# BinSync

BinSync Logo

BinSync 是一款基于 Git 版本控制系统构建的反编译协同工具,旨在实现跨反编译器的细粒度逆向工程协同。BinSync 由 [mahaloz](https://github.com/mahaloz)、[angr](https://angr.io) 团队以及 [SEFCOM](https://sefcom.asu.edu) 研究实验室共同构建。同时,这也很大程度上得益于 [Shellphish](https://shellphish.net) 黑客团队的使用。 所有优秀的反编译器都共享一些被称为逆向工程产物 的通用对象。这些 REA 是 BinSync 同步功能的核心。以下是支持的 REA: - 函数头(符号、参数、类型) - 栈变量(符号、类型) - 结构体 - 枚举 - 注释 注意:所有类型均支持用户自定义类型,如结构体。

Binja Sync

**加入我们的 Discord 以获取更多在线帮助**: [![Discord](https://img.shields.io/discord/900841083532087347?label=Discord&style=plastic)](https://discord.gg/wZSCeXnEvR) ## 快速开始 对于所有安装方式,最好使用我们基于 Python 的两部分安装程序: ``` pip3 install binsync && binsync --install ``` BinSync 也可以在 Binary Ninja 插件管理器中获取。 如果您计划将 BS 与 Ghidra 结合使用,必须在 [PyGhidra 模式](https://github.com/NationalSecurityAgency/ghidra/blob/stable/GhidraDocs/GettingStarted.md#pyghidra-mode) 下启动它。 如果您计划使用额外的 BS 功能,例如 ChatGPT User,请按以下方式安装软件包:`pip3 install binsync[extras]`,这将安装额外的支持包。 有关完整的安装信息,请阅读我们的[快速入门文档](https://binsync.net/docs/home)。 对于开发者,请以可编辑模式 (`-e`) 安装软件包,并确保使用 `pip>=23.0.0`。 ## 支持的平台 - IDA Pro: **>= 8.4**(如果您使用的是旧版本,请使用 [BinSync v4.10.1](https://github.com/binsync/binsync/commit/bac7b9d4a6cca64810bb07428391415702765cd4)) - Binary Ninja: **>= 2.4** - angr-management: **>= 9.0** - Ghidra: **>= 12.0**([PyGhidra 模式](https://github.com/NationalSecurityAgency/ghidra/blob/stable/GhidraDocs/GettingStarted.md#pyghidra-mode)) 所有版本都要求系统中安装了 **Python >= 3.10** 和 **Git**。 对 Ghidra 的支持目前仍处于非常早期的阶段,因此请仅期待诸如产物名称同步和注释等基本功能。 ## 反编译器支持进度 尽管我们在前面的章节中支持了这些反编译器,但并非每个反编译器都处于相同的同步支持级别。 要了解产物支持、拉取、推送和自动推送之间的区别,请阅读我们的[反编译器使用介绍](https://binsync.net/docs/dec-introduction/)。 ### IDA Pro | 操作     | 函数头     | 栈变量     | 全局变量     | 结构体     | 枚举     | 注释     | |------------------------------------|------------------------------------------|------------------------------------|-------------------------------------|---------------------------------|-------------------------------|----------------------------------| | 符号 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 类型 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 拉取 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 推送 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 自动推送 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |

IDA Sync

### Binary Ninja | 操作     | 函数头     | 栈变量     | 全局变量     | 结构体     | 枚举     | 注释     | |------------------------------------|------------------------------------------|------------------------------------|-------------------------------------|---------------------------------|-------------------------------|----------------------------------| | 符号 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 类型 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 拉取 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 推送 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 自动推送 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |

Binja Sync

### Ghidra | 操作     | 函数头     | 栈变量     | 全局变量     | 结构体     | 枚举     | 注释     | |------------------------------------|------------------------------------------|------------------------------------|-------------------------------------|---------------------------------|-------------------------------|----------------------------------| | 符号 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 类型 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 拉取 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | 推送 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | | 自动推送 | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: |

Ghidra Sync

### angr-management | 操作     | 函数头     | 栈变量     | 全局变量     | 结构体     | 枚举     | 注释     | |------------------------------------|------------------------------------------|------------------------------------|-------------------------------------|---------------------------------|-------------------------------|----------------------------------| | 符号 | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | | 类型 | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | | 拉取 | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | | 推送 | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | | 自动推送 | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | ## 脚本编程 有关脚本编程的信息,请参阅 [Lib BinSync](https://github.com/binsync/libbs),它允许您在 Python 中执行所有的转换和数据操作。 ## 赞助商 如果没有赞助,BinSync 及其相关项目将无法实现。 在此,我们想感谢所有曾经或目前正在赞助众多 BinSync 项目之一的组织(排名不分先后)。

NSF
DARPA
ARPA-H
RevEng AI

标签:angr, Binary Ninja, ChatGPT, DAST, Ghidra, Git, HTTPX, IDA Pro, Promptflow, Python, REA, Shellphish, URL提取, 二进制分析, 云安全运维, 云资产清单, 协作工具, 反编译, 同步, 安全可观测性, 恶意软件分析, 插件, 数据结构, 无后门, 漏洞分析, 版本控制, 符号恢复, 类型恢复, 网络安全研究, 路径探测, 逆向工具, 逆向工程