# ret-sync

> 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.

- Type: Tool
- Targets: Binary
- Category: Debugging and dynamic analysis
- Relationship: Foundation tool
- Sources reviewed: 2026-10-19
- Added to the catalog: 2026-10-19
- Original resource: <https://github.com/bootleg/ret-sync>
- Primary source: <https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md>
- Catalog page: <https://awesomerea.org/resources/ret-sync/>
- Record JSON: <https://awesomerea.org/resources/ret-sync/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/ret-sync/index.md)

## Requirements & limits

- 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.

## Primary sources

1. <https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md>
2. <https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L102-L113>
3. <https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L519-L571>
4. <https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L1060-L1115>
5. <https://github.com/bootleg/ret-sync/tree/60e7b0fd1bea7bad44da7688801b2bd12fb02040/ext_ghidra/dist>
6. <https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/COPYING>
7. <https://github.com/bootleg/ret-sync/releases/tag/ext_bn_community_release_v0.1.0>

## More in Native binaries

- [PyInstaller Extractor (pyinstxtractor)](https://awesomerea.org/resources/pyinstxtractor/index.md) · Tool
- [Binary Analysis Platform (BAP)](https://awesomerea.org/resources/bap/index.md) · Tool
- [Reko](https://awesomerea.org/resources/reko/index.md) · Tool
- [Dyninst](https://awesomerea.org/resources/dyninst/index.md) · Tool
- [goblin](https://awesomerea.org/resources/goblin/index.md) · Tool
- [FLOSS (FLARE Obfuscated String Solver)](https://awesomerea.org/resources/flare-floss/index.md) · Tool

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
