Jtagprobe

SWD/JTAG-feilsøkingsport-pentest-probe via en fysisk SEGGER J-Link, klassifiserer OPEN/LOCKED/DEAD.

av BrownFineSecurity · BrownFineSecurity/iothackbot

Bestått ★ 9.6/10

Jtagprobe — SWD/JTAG-feilsøkingsport-pentest-probe via en fysisk SEGGER J-Link, klassifiserer OPEN/LOCKED/DEAD.

Hva den gjør

Kjører en ekte J-Link (via den medfølgende jtagprobe Python-CLI-en) for å søke gjennom SWD og deretter JTAG ved flere klokkehastigheter, identifisere silisium-leverandøren fra DPIDR/IDCODE, og forsøke halt+minnelesing for å klassifisere et måls feilsøkingsgrensesnitt som OPEN, LOCKED eller DEAD. Utløses når man vurderer om en on-chip feilsøkingsport er eksponert på fysisk maskinvare; krever JLinkExe og en tilkoblet J-Link, og forsøker ikke opplåsing eller masseslett.

Testrapport

Dette er et ekte 195-linjers Python-verktøy (ikke tomprat) koblet til SEGGERs JLinkExe; ga den eksempel-DPIDR/alle-0xFF-avlesningen fra dens egen dokumentasjon, og den resonnerte korrekt LOCKED-ikke-slettet (en vellykket halt pluss gyldig CPUID utelukker en blank/uprogrammert brikke) og siterte det eksakte STM32 RDP-registeret som må sjekkes — et maskinvareavhengig verktøy som er åpent om at det trenger en fysisk J-Link.

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

Installer

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-feilsøkingsport-pentest-probe via en fysisk SEGGER J-Link, klassifiserer OPEN/LOCKED/DEAD.

Skills utløses av vanlige forespørsler — ingen kommandoer å huske. Etter installasjonen 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