Tool

Binder Trace

Frida-based terminal tool, described by its authors as "Wireshark for Binder", that intercepts the Binder IPC transactions an Android process sends and parses each message and its reply. Bundled structure files for specific Android releases map transaction codes back to AIDL interface and method names and decode parcel arguments into typed fields beside a hex dump. A frequency pane and a JSON filter file narrow the stream by interface, method or type, showing which system services an app calls and with what data.

Requirements & limits

  • PyPI release at review: binder-trace 1.4.1, published 2024-08-01, requiring Python 3.9+. The reviewed main commit of 2025-09-11 is one README-only commit later, correcting the frida-server steps and the listed Android versions, and is the latest activity.
  • Needs a rooted Android device or emulator, adb running as root and a frida-server matching the installed Frida Python package, which requirements.txt leaves unpinned. It attaches to a process by PID or name, or spawns it, and should be used on devices and apps the analyst may analyse. Clipboard copy on Linux needs xclip or xsel.
  • Default structure sets cover Android 9 to 14, with extra sets for 8.1 and some point releases. STRUCTURES.md explains that AIDL method numbering and parcel layouts change between builds, so results on a device whose build differs from the bundled AOSP tags can be wrong and the files may need hand-editing. Only transactions the attached process issues through libbinder's IPCThreadState::transact are captured, together with their replies.
  • CI runs tox with isort, black, flake8, pydocstyle and pytest across several Python versions; the tests cover argument parsing, parcel parsing and the terminal interface, not live devices. MIT licensed. No device or app was traced for this entry.

About this entry

Type
Tool
Category
Android tools
Relationship
Foundation tool
Targets
App · Protocol

Sources reviewed

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · foundryzero/binder-trace · Revision a8a9a06
  2. STRUCTURES.md GitHub · foundryzero/binder-trace · Revision a8a9a06
  3. binder_trace/binder_trace/__main__.py GitHub · foundryzero/binder-trace · Revision a8a9a06
  4. binder_trace/binder_trace/js/interceptbinder.js GitHub · foundryzero/binder-trace · Revision a8a9a06
  5. binder_trace/binder_trace/structs GitHub · foundryzero/binder-trace · Revision a8a9a06
  6. binder_trace/requirements.txt GitHub · foundryzero/binder-trace · Revision a8a9a06
  7. binder_trace/setup.py GitHub · foundryzero/binder-trace · Revision a8a9a06
  8. tox.ini GitHub · foundryzero/binder-trace · Revision a8a9a06
  9. .github/workflows/style.yml GitHub · foundryzero/binder-trace · Revision a8a9a06
  10. LICENSE GitHub · foundryzero/binder-trace · Revision a8a9a06
  11. https://pypi.org/project/binder-trace/1.4.1/

More in Apps

All 100 entries in Apps