Jtagprobe

Pentest sonda pro debug port SWD/JTAG přes fyzický SEGGER J-Link, klasifikuje OPEN/LOCKED/DEAD.

od BrownFineSecurity · BrownFineSecurity/iothackbot

Otestováno · Funguje ★ 9.6/10

Jtagprobe — Pentest sonda pro debug port SWD/JTAG přes fyzický SEGGER J-Link, klasifikuje OPEN/LOCKED/DEAD.

Co umí

Řídí skutečný J-Link (přes přiložené Python CLI jtagprobe) k projetí SWD a poté JTAG na více rychlostech hodin, identifikuje výrobce čipu z DPIDR/IDCODE a pokusí se o halt+čtení paměti, aby klasifikoval debug rozhraní cíle jako OPEN, LOCKED nebo DEAD. Spouští se při posuzování, zda je on-chip debug port odhalený na fyzickém hardwaru; vyžaduje JLinkExe a připojený J-Link a nepokouší se o odemčení ani mass-erase.

Testovací report

Toto je skutečný 195řádkový Python nástroj (ne vaporware) propojený se SEGGER JLinkExe; zadal jsem mu ukázkový výstup DPIDR/all-0xFF z jeho vlastní dokumentace a správně usoudil LOCKED-not-erased (úspěšný halt plus platné CPUID vylučuje prázdný/nefusovaný čip) a citoval přesný registr STM32 RDP ke kontrole — hardwarově závislý nástroj, který je od začátku otevřený ohledně potřeby fyzického J-Link.

Testováno: 2026-07-13 · Claude Code 2.x (agent harness)

Instalace

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

Příkazy a ukázkové prompty

  • /jtagprobePentest sonda pro debug port SWD/JTAG přes fyzický SEGGER J-Link, klasifikuje OPEN/LOCKED/DEAD.

Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):

  • 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