offensive-tools/rev/renode/SKILL.md
Auth/lab ref: Renode board and SoC simulation for MCU/RTOS firmware, UART/GPIO/peripheral modeling, GDB remote debugging, REPL platforms, and RESC scripts.
npx skillsauth add aeondave/malskill renodeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Renode is the first public tool to try when firmware behavior depends on a modeled MCU board, RTOS peripherals, UART, GPIO, timers, storage, or multi-core SoC state.
.repl platform description for the minimum needed peripheralsDo not treat CPU stepping as board parity. Prove the peripheral behavior relevant to the objective.
.repl: platform description; CPUs, memory maps, buses, UARTs, GPIOs, timers, and peripherals..resc: Renode monitor script; creates machines, loads platforms, loads binaries, configures analyzers, starts emulation.mach create
machine LoadPlatformDescription @platforms/boards/<board>.repl
sysbus LoadELF @firmware.elf
showAnalyzer sysbus.uart0
machine StartGdbServer 3333
start
Useful commands:
peripherals
sysbus WhatPeripheralIsAt 0x40000000
sysbus ReadDoubleWord 0x40000000
sysbus WriteDoubleWord 0x40000000 0x1
sysbus.cpu Step
pause
quit
For raw binaries, set load address and reset vector deliberately; ELF is safer when available because it carries sections and entry point.
When no board exists:
.repl from known CPU, RAM/flash, and MMIO ranges.Sources for modeling clues: vendor datasheet, SVD, linker script, map file, DTB, SDK headers, strings, disassembly xrefs to MMIO addresses, and logic/UART captures.
machine StartGdbServer 3333
Then connect with the matching toolchain:
arm-none-eabi-gdb firmware.elf
(gdb) target remote :3333
Use GDB to prove reset handler, RTOS task creation, peripheral driver paths, memory state, and breakpoints on fault handlers.
.repl/.resc or monitor command sequencedevelopment
Auth/lab ref: Unicorn Engine CPU-only emulation for shellcode, decryptors, custom VM handlers, instruction tracing, memory hooks, and register-level experiments.
development
Auth/lab ref: Qiling OS-layer binary emulation for PE/ELF/Mach-O/UEFI/shellcode with rootfs, syscall/API hooks, filesystem mapping, and runtime patching.
databases
Auth/lab ref: QEMU user-mode and full-system emulation for cross-arch binaries, firmware, kernels, disks, serial consoles, networking, and GDB stubs.
tools
Drive the NeuroMatrix reverse-engineering emulation MCP server: create sessions, discover backend tools via list_catalog/get_tool/run_tool, choose Unicorn/Qiling/QEMU/Renode lanes, upload large binaries through the artifact data plane, manage detached jobs, use session workspaces, expose guest endpoints, collect emulator evidence, and avoid false support claims for kernels, firmware, MCU boards, Windows/macOS assets, ESP8266, and Renode profiles.