apktool
Android APK unpacking and resource extraction tool for reverse engineering. Use when you need to decode APK files, extract resources, examine…
Probe IoT/embedded targets for exposed SWD/JTAG debug interfaces using a SEGGER J-Link. Detects whether debug is OPEN, LOCKED (readout-protected), or DEAD (fused off). Use when assessing whether a target's on-chip debug port can be reached, identifying the silicon vendor from
$ npx -y skills add brownfinesecurity/iothackbot --skill jtagprobe --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/jtagprobeContext preview
The summary Claude sees to decide when to auto-load this skill.
Probe IoT/embedded targets for exposed SWD/JTAG debug interfaces using a SEGGER J-Link. Detects whether debug is OPEN, LOCKED (readout-protected), or DEAD (fused off). Use when assessing whether a target's on-chip debug port can be reached, identifying the silicon vendor from
name: jtagprobe description: Probe IoT/embedded targets for exposed SWD/JTAG debug interfaces using a SEGGER J-Link. Detects whether debug is OPEN, LOCKED (readout-protected), or DEAD (fused off). Use when assessing whether a target's on-chip debug port can be reached, identifying the silicon vendor from DPIDR/IDCODE, and confirming halt+memory access for full debugger control.
You are helping the user determine whether a target's on-chip debug interface is exposed via SWD or JTAG, using the `jtagprobe` tool. This drives a SEGGER J-Link physically wired to the target.
Three nested access layers are checked, and the target is classified into one of:
If `JLinkExe` cannot be found at all, tell the user to install SEGGER J-Link software from segger.com. Do not attempt to install it without explicit approval.
Default — sweep SWD then JTAG at 4000/1000/100 kHz, halt, read memory, classify:
jtagprobe
Save per-attempt JLinkExe logs as evidence (recommended for pentest writeups):
jtagprobe --evidence-dir ./evidence/jtagprobe-$(date +%Y%m%d-%H%M%S)
JSON for chaining:
jtagprobe --format json
Just run with defaults. The tool will: 1. Try SWD at 4 MHz → 1 MHz → 100 kHz 2. Fall back to JTAG with the same speed sweep 3. Run a JTAG chain auto-scan as last resort 4. Identify vendor from DPIDR/IDCODE JEP106 designer field 5. Halt CPU and read memory to confirm access level
jtagprobe --evidence-dir ./evidence
If the user knows the chip, pass `--device` for a more accurate halt/memory test. Use the same device strings J-Link accepts (`STM32F407VG`, `nRF52840_xxAA`, `MK64FN1M0xxx12`, etc.):
jtagprobe --device STM32F407VG
Some pirate-flagged boards or long ribbon cables need a slower clock. Limit the sweep:
jtagprobe --speeds 1000,100,10
If the target is in a state where halting would crash an active firmware path you care about (rare in pentests, common in live systems), stop after the connect probe:
jtagprobe --skip-memory
jtagprobe --interfaces SWD jtagprobe --interfaces JTAG --speeds 4000,1000
The text format leads with the classification and reason:
CLASSIFICATION: LOCKED DP/IDCODE accessible but CPU halt or memory read failed. Typical of RDP / CRP / APPROTECT engaged. Vendor: STMicroelectronics SW-DP DPIDR=0x2BA01477 partno=0xBA version=2 designer_identity=0x20 Access test: Halted: True CPUID @ 0xE000ED00 = 0x410FC241 0x08000000: 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF [all-0xFF, possible RDP] Protection hint: STM32 RDP Level 1/2 (see RM, FLASH_OPTR bits 15:8).
Key signals:
For a pentest finding under CWE-1191 (improper access control on debug interface) or CWE-1244 (asset exposed via debug):
Default assumption: they want both SWD and JTAG checked, full halt+memory test, and evidence captured. Run:
jtagprobe --evidence-dir ./evidence/jtagprobe-$(date +%Y%m%d-%H%M%S)
If `JLinkExe` isn't on PATH, stop and report that the SEGGER tools aren't installed.
Open-source IoT security testing toolkit with integrated Claude Code skills for automated vulnerability discovery.
Android APK unpacking and resource extraction tool for reverse engineering. Use when you need to decode APK files, extract resources, examine…
Static analysis of UEFI/BIOS firmware dumps using Intel's chipsec framework. Decode firmware structure, detect known malware and rootkits (LoJax, ThinkPwn,…
Advanced file finder with type detection and filesystem extraction for analyzing firmware and extracting embedded filesystems. Use when you need to analyze…
IoT network traffic analyzer for detecting IoT protocols and identifying security vulnerabilities in network communications. Use when you need to analyze…
Android APK decompiler that converts DEX bytecode to readable Java source code. Use when you need to decompile APK files, analyze app logic, search for…
Analyze digital and analog captures from Saleae Logic MSO devices. Decode protocols like UART, SPI, I2C from exported binary files. Use when analyzing logic…