{
  "added_at": "2026-10-19",
  "additional_evidence_urls": [
    "https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L102-L113",
    "https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L519-L571",
    "https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L1060-L1115",
    "https://github.com/bootleg/ret-sync/tree/60e7b0fd1bea7bad44da7688801b2bd12fb02040/ext_ghidra/dist",
    "https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/COPYING",
    "https://github.com/bootleg/ret-sync/releases/tag/ext_bn_community_release_v0.1.0"
  ],
  "category": "dynamic-analysis",
  "description_en": "Reverse-Engineering Tools SYNChronization: plugins that keep IDA, Ghidra or Binary Ninja graph and decompiler views following a live WinDbg, GDB, LLDB, OllyDbg 1.10/2 or x64dbg session, rebasing addresses on the fly so ASLR does not break the mapping. Debugger commands push comments, labels, rebased addresses and command output into the disassembler database and resolve symbols from it, while disassembler hotkeys set breakpoints and step the debugger; several databases can be synced at once and the two sides may run on different hosts. A standalone Python library offers the same position syncing to custom tracing tools.",
  "description_zh": "ret-sync 即“逆向工程工具同步”：一组插件，让 IDA、Ghidra 或 Binary Ninja 的图形与反编译视图跟随运行中的 WinDbg、GDB、LLDB、OllyDbg 1.10/2 或 x64dbg 调试会话，并实时重定基址，使 ASLR 不影响地址对应。调试器命令可将注释、标签、重定基后的地址和命令输出写入反汇编数据库，并从中解析符号；反汇编器中的快捷键则可设置断点、单步执行调试器。可同时同步多个数据库，两端也可运行在不同主机上。独立的 Python 库可为自定义跟踪工具提供同样的位置同步。",
  "entry_url": "https://awesomerea.org/resources/ret-sync/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/ret-sync/",
  "evidence_url": "https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md",
  "group": "tools",
  "id": "ret-sync",
  "json_url": "https://awesomerea.org/resources/ret-sync/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/ret-sync/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/ret-sync/index.md",
  "name": "ret-sync",
  "name_zh": "ret-sync 调试器与反汇编器同步插件",
  "record_type": "resource",
  "relationship": "foundation",
  "requirements": [
    "No release tracks the reviewed master commit (2026-02-15): the only GitHub release is a 2022 Binary Ninja community build, prebuilt WinDbg, OllyDbg, OllyDbg2 and x64dbg plugins come from an Azure DevOps pipeline, and ext_ghidra/dist holds per-version Ghidra extension archives, the newest for Ghidra 11.4.2. Each Ghidra archive supports only the Ghidra version in its file name; other versions are built with Gradle against a local installation.",
    "The IDA plugin requires IDA 9.2+, with older IDA versions served by history before the ida9.2 tag; the Binary Ninja plugin needs Binary Ninja 2.2+ with Python 3 and is marked experimental; the WinDbg extension is built from a Visual Studio solution, reported working with Visual Studio 2017 and 2026; the IDA and GDB plugins need Python 2.7+ or Python 3. IDA, Binary Ninja and WinDbg are obtained separately, and users supply their own binaries and debugging targets.",
    "The README states there is no authentication or encryption between debugger and disassembler and that self-modifying code is out of scope; its tested-versions list is older (Python 2.7/3.7, IDA 7.7, Ghidra 10.1.1, Binary Ninja 3.0, GDB 8.1, LLDB 310.2.37), and it notes GDB signal issues with multi-threaded debugging and a possible WinDbg race condition. Remote and renamed-module setups are configured through an optional .sync INI file.",
    "GPL-3.0-or-later; the Binary Ninja plugin is MIT-licensed. ret-sync is a fork of Quarkslab's qb-sync."
  ],
  "requirements_zh": [
    "没有任何发布版本对应所审阅的 master 分支提交（2026-02-15）：GitHub 上唯一的发布是 2022 年的 Binary Ninja 社区版构建；WinDbg、OllyDbg、OllyDbg2 和 x64dbg 的预编译插件由 Azure DevOps 流水线产出；ext_ghidra/dist 存放按 Ghidra 版本区分的扩展压缩包，最新一个对应 Ghidra 11.4.2。每个 Ghidra 压缩包只支持文件名中标明的 Ghidra 版本，其他版本需针对本地安装用 Gradle 构建。",
    "IDA 插件需要 IDA 9.2+，更早的 IDA 版本需使用 ida9.2 标签之前的历史版本；Binary Ninja 插件需要 Binary Ninja 2.2+ 和 Python 3，并被标为实验性；WinDbg 扩展通过 Visual Studio 解决方案构建，README 报告 Visual Studio 2017 和 2026 均可成功构建；IDA 和 GDB 插件需要 Python 2.7+ 或 Python 3。IDA、Binary Ninja 和 WinDbg 需另行获取，用户需自备二进制文件和调试目标。",
    "README 说明调试器与反汇编器之间没有任何认证或加密，自修改代码不在支持范围内；其列出的测试版本较旧（Python 2.7/3.7、IDA 7.7、Ghidra 10.1.1、Binary Ninja 3.0、GDB 8.1、LLDB 310.2.37），并提到 GDB 调试多线程程序时存在信号问题、WinDbg 可能存在竞态条件。远程调试和模块名不一致等场景通过可选的 .sync INI 文件配置。",
    "采用 GPL-3.0-or-later 许可，Binary Ninja 插件采用 MIT 许可。ret-sync 是 Quarkslab qb-sync 的分支。"
  ],
  "targets": [
    "binary"
  ],
  "url": "https://github.com/bootleg/ret-sync",
  "verification": "source-reviewed",
  "verified_at": "2026-10-19"
}
