Iothackbot onvifscan
ONVIF device security scanner for testing authentication and brute-forcing credentials. Use when you need to assess security of IP cameras or ONVIF-enabled devices.
install
source · Clone the upstream repo
git clone https://github.com/BrownFineSecurity/iothackbot
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/BrownFineSecurity/iothackbot "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/onvifscan" ~/.claude/skills/brownfinesecurity-iothackbot-onvifscan && rm -rf "$T"
manifest:
skills/onvifscan/SKILL.mdsource content
Onvifscan - ONVIF Security Scanner
You are helping the user scan ONVIF devices for security issues including authentication bypasses and weak credentials using the onvifscan tool.
Tool Overview
Onvifscan is an ONVIF device security scanner that can:
- Test for unauthenticated access to ONVIF endpoints
- Perform credential brute-forcing attacks
Instructions
When the user asks to scan ONVIF devices, test IP cameras, or assess IoT device security:
-
Determine scan type:
: Authentication and access control testing (recommended to start)auth
: Credential brute-forcing on password-protected endpointsbrute
-
Get target information:
- Ask for the device URL/IP
- Determine which scan type to run
- Check if they have custom wordlists
-
Execute the scan:
- Use the onvifscan command from the iothackbot bin directory
- Format:
onvifscan <subcommand> <url> [options]
Subcommands
Auth Scan
Tests ONVIF endpoints for authentication requirements:
onvifscan auth http://192.168.1.100
Options:
: Show full XML responses-v, --verbose
: Test ALL endpoints including potentially destructive ones-a, --all
: Output format--format text|json|quiet
Brute Force
Attempts credential brute-forcing on protected endpoints:
onvifscan brute http://192.168.1.100
Options:
: Custom usernames wordlist (default: built-in onvif-usernames.txt)--usernames <file>
: Custom passwords wordlist (default: built-in onvif-passwords.txt)--passwords <file>
: Output format--format text|json|quiet
Examples
Quick auth check on a device:
onvifscan auth 192.168.1.100
Auth check with verbose output:
onvifscan auth http://192.168.1.100:8080 -v
Brute force with custom wordlists:
onvifscan brute 192.168.1.100 --usernames custom-users.txt --passwords custom-pass.txt
Important Notes
- URLs can omit
- it will be added automaticallyhttp:// - Auth scan is non-destructive and safe to run
- Use
flag with caution - may test destructive endpoints-a - Brute force is rate-limited to prevent device overload (max 20 attempts by default)
- Built-in wordlists located in
directorywordlists/