Open-source IoT security testing toolkit with integrated Claude Code skills for automated vulnerability discovery.
> /plugin marketplace add brownfinesecurity/iothackbot> /plugin install iothackbot@iothackbot-marketplace
What's inside
Open-source IoT security testing toolkit with integrated Claude Code skills for automated vulnerability discovery.
IoTHackBot is a collection of specialized tools and Claude Code skills designed for security testing of IoT devices, IP cameras, and embedded systems. It provides both command-line tools and AI-assisted workflows for comprehensive IoT security assessments.
chipsec (skill) - UEFI/BIOS firmware static analysis
ffind - Advanced file finder with type detection and filesystem extraction
apktool (skill) - APK unpacking and resource extraction
jadx (skill) - APK decompilation
jtagprobe - SWD/JTAG debug interface probe via SEGGER J-Link
picocom (skill) - IoT UART console interaction for hardware testing
telnetshell (skill) - IoT telnet shell interaction
# Python dependencies
pip install colorama pyserial pexpect requests
# System dependencies (Arch Linux)
sudo pacman -S nmap e2fsprogs f2fs-tools python python-pip inetutils
# For other distributions, install equivalent packages
git clone https://github.com/BrownFineSecurity/iothackbot.git
cd iothackbot
export PATH="$PATH:$(pwd)/bin"
echo 'export PATH="$PATH:/path/to/iothackbot/bin"' >> ~/.bashrc
wsdiscovery 192.168.1.0/24
onvifscan auth http://192.168.1.100
onvifscan brute http://192.168.1.100
# Analyze PCAP file for IoT protocols
iotnet capture.pcap
# Live capture
sudo iotnet -i eth0 -d 60
# Extract flows from device with DNS resolution
netflows capture.pcap --source-ip 192.168.1.100
# Get just hostname:port list
netflows capture.pcap -s 192.168.1.100 --format quiet
# Identify file types
ffind firmware.bin
# Extract filesystems (requires sudo)
sudo ffind firmware.bin -e
IoTHackBot is available as a Claude Code plugin, providing AI-assisted security testing with specialized skills.
| Skill | Description |
|---|---|
| chipsec | UEFI/BIOS firmware static analysis - malware detection, EFI inventory |
| apktool | Android APK unpacking and resource extraction |
| jadx | Android APK decompilation to Java source |
| ffind | Firmware file analysis with filesystem extraction |
| iotnet | IoT network traffic analysis |
| jtagprobe | SWD/JTAG debug interface probe via J-Link |
| netflows | Network flow extraction with DNS hostname resolution |
| nmap | Professional network reconnaissance |
| onvifscan | ONVIF device security testing |
| picocom | UART console interaction |
| telnetshell | Telnet shell enumeration |
| wsdiscovery | WS-Discovery device discovery |
Option 1: Use directly during development
claude --plugin-dir /path/to/iothackbot
Option 2: Install as local marketplace (persistent)
Add to ~/.claude/settings.json:
{
"extraKnownMarketplaces": {
"iothackbot-local": {
"source": {
"source": "directory",
"path": "/path/to/iothackbot"
}
}
},
"enabledPlugins": {
"iothackbot": true
}
}
Then restart Claude Code for the settings to take effect.
Option 3: Project-specific setup
For use within a specific project, the skills are also available via the .claude/skills/ symlink for backwards compatibility.
All tools follow a consistent design pattern:
tools/iothackbot/*.py) - Command-line interface with argparsetools/iothackbot/core/*_core.py) - Core functionality implementing ToolInterfacebin/*) - Executable wrapper scriptsThis separation enables:
config/iot/detection_rules.json - Custom IoT protocol detection rules for iotnet
wordlists/onvif-usernames.txt - Default usernames for ONVIF deviceswordlists/onvif-passwords.txt - Default passwords for ONVIF devicesSee TOOL_DEVELOPMENT_GUIDE.md for detailed information on:
All tools support multiple output formats:
# Human-readable text with colors (default)
onvifscan auth 192.168.1.100
# Machine-readable JSON
onvifscan auth 192.168.1.100 --format json
# Minimal output
onvifscan auth 192.168.1.100 --format quiet
IMPORTANT: These tools are designed for authorized security testing only.
Contributions are welcome! Please ensure:
TOOL_DEVELOPMENT_GUIDE.mdMIT License - See LICENSE file for details
This toolkit is provided for educational and authorized security testing purposes only. Users are responsible for ensuring they have proper authorization before testing any systems. The authors are not responsible for misuse or damage caused by this toolkit.
.claude/
.claude-plugin/
marketplace.json
plugin.json
skills
.gitignore
bin/
ffind
iotnet
jtagprobe
netflows
onvifscan
wsdiscovery
config/
iot/
detection_rules.json
LICENSE
README.md
skills/
apktool/
SKILL.md
chipsec/
SKILL.md
ffind/
SKILL.md
iotnet/
SKILL.md
jadx/
SKILL.md
jtagprobe/
SKILL.md
logicmso/
analyze_protocol.py
examples.md
SKILL.md
netflows/
SKILL.md
nmap/
SKILL.md
onvifscan/
SKILL.md
picocom/
examples.md
OBSERVING_SESSIONS.md
serial_helper.py
SKILL.md
telnetshell/
enum_files.txt
enum_network.txt
enum_security.txt
enum_system.txt
examples.md
OBSERVING_SESSIONS.md
SKILL.md
telnet_helper.py
wsdiscovery/
SKILL.md
TOOL_DEVELOPMENT_GUIDE.md
tools/
iothackbot/
__init__.py
core/
ffind_core.py
interfaces.py
iotnet_core.py
jtagprobe_core.py
netflows_core.py
onvifscan_core.py
wsdiscovery_core.py
ffind.py
iotnet.py
jtagprobe.py
netflows.py
onvifscan.py
wsdiscovery.py
wordlists/
onvif-passwords.txt
onvif-usernames.txtFAQ
iothackbot is a Claude Code plugin with 13 hand-picked skills for security work, indexed on Flowy. Install it with the command on its page. It includes apktool, chipsec, ffind. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.