Jtagprobe

SWD/JTAG debug-port-pentest-probe via en fysisk SEGGER J-Link, klassificerer OPEN/LOCKED/DEAD.

Af BrownFineSecurity · BrownFineSecurity/iothackbot

Testet · Virker ★ 9.6/10

Jtagprobe — SWD/JTAG debug-port-pentest-probe via en fysisk SEGGER J-Link, klassificerer OPEN/LOCKED/DEAD.

Hvad det gør

Kører en rigtig J-Link (via den medfølgende jtagprobe Python-CLI) til at sweepe SWD og derefter JTAG ved flere clock-hastigheder, identificere silicium-leverandøren ud fra DPIDR/IDCODE, og forsøge halt+hukommelseslæsning for at klassificere et targets debug-interface som OPEN, LOCKED eller DEAD. Trigges når man vurderer, om en on-chip debug-port er eksponeret på fysisk hardware; kræver JLinkExe og en tilsluttet J-Link, og forsøger ikke unlock eller mass-erase.

Testrapport

Dette er et rigtigt 195-linjers Python-værktøj (ikke vaporware) koblet til SEGGERs JLinkExe; gav den eksempel-DPIDR/all-0xFF-aflæsningen fra sin egen dokumentation, og den ræsonnerede korrekt LOCKED-not-erased (et vellykket halt plus gyldig CPUID udelukker en blank/ufuset chip) og citerede det præcise STM32 RDP-register, der skal tjekkes — et hardware-afhængigt værktøj, der er åbent om at kræve en fysisk J-Link.

Testet: 2026-07-13 · Claude Code 2.x (agent harness)

Installation

git clone https://github.com/BrownFineSecurity/iothackbot
cd iothackbot
mkdir -p ~/.claude/skills
cp -r skills/jtagprobe ~/.claude/skills/jtagprobe
# also add iothackbot/bin to PATH for the actual jtagprobe CLI (tools/iothackbot/jtagprobe.py) to run

Kommandoer og eksempelprompter

  • /jtagprobeSWD/JTAG debug-port-pentest-probe via en fysisk SEGGER J-Link, klassificerer OPEN/LOCKED/DEAD.

Skills udløses af almindelige forespørgsler — ingen kommandoer at huske. Efter installationen aktiverer prompter som disse skillen (på engelsk):

  • Check whether the debug port on this board is exposed over SWD
  • Sweep JTAG and SWD on this chip and tell me if it's locked or open
  • Identify the silicon vendor on this target using its debug port