offensive-z-wave
This Claude Code skill provides techniques for attacking Z-Wave smart home networks across both legacy S0 and modern S2 security schemes. It covers hardware setup (EZ-Wave, RTL-SDR, HackRF), network sniffing during device commissioning, exploitation of S0's fixed-PSK derivation flaw, S2 implementation weaknesses, and replay attacks on unauthenticated nodes. Use when assessing Z-Wave-based home automation deployments, particularly mid-2010s installations still running vulnerable S0 security.
git clone --depth 1 https://github.com/SnailSploit/Claude-Red /tmp/offensive-z-wave && cp -r /tmp/offensive-z-wave/Skills/wireless/offensive-z-wave ~/.claude/skills/offensive-z-waveSKILL.md
# Z-Wave Attacks Z-Wave runs in the 800/900 MHz ISM band (US: 908 MHz, EU: 868 MHz). Older networks used the S0 security scheme with a fixed-derivation network key — long-known to be flawed. S2 (mandatory for Z-Wave Plus v2 since 2017) uses ECDH commissioning and is significantly stronger. ## Quick Workflow 1. Identify region (US 908 MHz / EU 868 MHz) — adapter frequency must match 2. Sniff inclusion (commissioning) traffic — that's where keys are exchanged 3. Determine S0 vs S2 from frame format 4. For S0: derive/replay; for S2: analyze ECDH and look for implementation flaws --- ## Hardware | Adapter | Use | |---|---| | Z-Force (legacy, hard to find) | Original research tool | | EZ-Wave (custom HackRF firmware) | Modern, full transceiver | | Aeotec Z-Stick | Commercial controller, useful as legitimate node | | HackRF + open Z-Wave firmware | Multi-band SDR approach | | RTL-SDR + ZniffMobile (passive only) | Cheap sniffer | ## Sniffing ```bash # EZ-Wave (HackRF firmware-based) git clone https://github.com/cureHsu/EZ-Wave ezwave-sniff -f 908.4MHz -o capture.pcap # Wireshark with the Z-Wave dissector parses captured frames wireshark capture.pcap ``` Look for the inclusion phase (controller adding new device) — that's where the network key is exchanged. ## S0 Security Flaw S0 derives the network key from a fixed all-zero PSK during the inclusion of the first device. That fixed material is well-known — any S0 network you sniff during inclusion can be decrypted offline. ``` S0 commissioning: 1. New node joins → controller sends key with zero-PSK encryption 2. Attacker sniffs commissioning frame → derives session key 3. All future S0 traffic on that network is decryptable ``` If you can: - Trigger inclusion (factory-reset a node, or wait for legitimate inclusion) - Sniff during the ~2-second key-exchange window You own the network key for that mesh. ## S2 (Z-Wave Plus / S2 Authenticated) S2 fixes S0 by using ECDH for commissioning: - Each device has a Curve25519 keypair - Inclusion uses DSK (Device Specific Key) verified out-of-band (sticker/QR) - Network key never traverses the air in plaintext S2 attack surface is mostly implementation: - Inclusion-mode-always-open (controller misconfig) - Firmware bugs in S2 verification - Side-channel on ECDH on resource-constrained chips - DSK printed on a sticker → physical access yields it ## Replay / Injection on Unauthenticated Nodes Many low-end Z-Wave devices (older sensors, basic switches) don't enforce S0 or S2 — they accept commands in cleartext. ```python # scapy-zwave (community fork) for crafted frames from scapy.contrib.zwave import * frame = ZWave(home_id=0x12345678)/ZWaveBasic(set_value=0xff) sendp(frame, iface='ezwave0') ``` This unlocks doors / switches lights / unarms sensors when the target lacks authentication. ## Key Brute-Force For old test deployments using default home IDs / network keys: ```bash # Try default home IDs for hid in 0x00000000 0x12345678 ...; do ezwave-test --home-id $hid --target-node 1 done ``` Hit rate on production is low; useful only for default-config IoT lab gear. ## Hub Pivots Z-Wave devices are typically controlled by a hub (SmartThings, Hubitat, Vera, Home Assistant, Z-Wave JS UI). The hub is a Linux device with the Z-Wave PSK in plaintext storage: - SmartThings Hub: previously cloud-only credentials; modern v3 stores network key locally - Home Assistant: `~/.homeassistant/zwave_js.json` typically contains keys - Hubitat: web UI with default password on older versions Compromise the hub → walk away with the Z-Wave PSK + every paired device's command authority. See `offensive-iot` for hub firmware extraction. ## Engagement Cheatsheet ```bash # 1. Identify region + frequency # US: 908.4 MHz; EU: 868.4 MHz; CN: 868.4 MHz # 2. Sniff ezwave-sniff -f 908.4MHz -o cap.pcap wireshark cap.pcap # filter zwave # 3. Identify S0 vs S2 from frame format # 4. For S0: capture inclusion → derive key → decrypt history + control devices # 5. For S2: focus on hub compromise / DSK theft / implementation bugs # 6. Test unauthenticated cleartext devices with crafted frames ``` ## Detection - Most Z-Wave deployments have no IDS comparable to Wi-Fi/Zigbee monitoring - Hub may log unexpected commands but UI rarely surfaces these to users - Inclusion-mode-open is visible in hub UI but ignored by inattentive admins ## Reporting - Identify chipset / firmware revision per device (ZW0500 series, ZW7000 series) - Map S0 vs S2 per node — note any S0 left on a network with S2-capable nodes - Document hub compromise paths separately --- ## Key References - EZ-Wave: github.com/cureHsu/EZ-Wave (HackRF-based) - "Z-Force and the Z-Wave Sniffer" — original research - Silicon Labs Z-Wave 700-series spec - Source: https://github.com/SnailSploit/offensive-checklist/blob/main/wireless.md
Active Directory attack methodology for internal network red team engagements. Covers reconnaissance (BloodHound, PowerView, ADExplorer), credential abuse (Kerberoasting, ASREProasting, NTLM relay, LLMNR/NBT-NS poisoning), privilege escalation (ACL abuse, GPO abuse, unconstrained/constrained delegation), lateral movement (Pass-the-Hash, Pass-the-Ticket, Overpass-the-Hash, WMI/WinRM/PsExec), persistence (Golden/Silver/Diamond Tickets, DCSync, DCShadow, AdminSDHolder, Skeleton Key), forest trust attacks, ADCS abuse (ESC1-ESC15), and modern MDI/Defender for Identity evasion. Use when assessing on-prem AD, hybrid AD/Entra ID environments, or ADCS deployments.
Comprehensive red team operations methodology covering full engagement lifecycle from planning through reporting. Addresses engagement scoping and rules of engagement negotiation, multi-tier C2 infrastructure design with redirectors and domain fronting, malleable traffic profiles and beacon tradecraft, OPSEC discipline including attribution avoidance and indicator management, EDR and AMSI evasion techniques using direct syscalls and unhooking, data collection with chain-of-custody controls, and structured reporting with purple team debrief workflows. Covers assumed-breach, external-to-internal, insider threat, and hybrid physical-cyber engagement scenarios with MITRE ATT&CK mapping throughout. Targets operators planning or executing adversary simulation engagements against mature defenders.
Anti-forensics and evidence destruction techniques for red team operators conducting authorized engagements. Covers log clearing on Windows (wevtutil, Clear-EventLog, ETW provider patching) and Linux (journal truncation, utmp/wtmp binary editing, syslog manipulation), timestamp manipulation via Timestomp and SetMACE to defeat timeline analysis, filesystem-level anti-forensics including NTFS Alternate Data Streams for payload hiding and secure deletion with sdelete/shred, memory artifact removal to counter live forensics, disk artifact manipulation targeting MFT entries and USN journal records, network forensics evasion through encrypted C2 channels and DNS-over-HTTPS tunneling, and anti-VM/sandbox detection to avoid dynamic analysis environments. Tools: Timestomp, wevtutil, sdelete, shred, MimiPenguin, Invoke-Phant0m. Aligns to MITRE ATT&CK T1070 (Indicator Removal), T1027 (Obfuscated Files or Information), T1497 (Virtualization/Sandbox Evasion). Each technique includes the forensic artifact it targets, the destruction or manipulation method, and the defender perspective so operators understand detection gaps they must account for.
Advanced API exploitation methodology focused on business logic abuse and sophisticated attack patterns that bypass traditional security controls. Covers business logic bypass through API call chaining and workflow manipulation. Addresses GraphQL-specific attacks including batching for credential brute-force, query depth exploitation, and introspection abuse. Includes pagination exploitation for data exfiltration, webhook hijacking for SSRF and data interception, and resource exhaustion through algorithmic complexity attacks. Covers race conditions in API transactions using parallel request techniques. Provides comprehensive JWT manipulation including algorithm confusion, kid injection, jku/x5u abuse, and claim tampering. Details API key leakage detection across source repositories, client-side code, and error messages. Covers undocumented endpoint discovery through predictable naming, debug routes, and source map analysis. Tooling includes Arjun, ParamSpider, jwt_tool, and GraphQL Voyager. Designed for authorized penetration testers targeting business logic layers that automated scanners miss.
Comprehensive API security testing methodology covering REST, gRPC, and WebSocket attack surfaces. Addresses the full OWASP API Security Top 10 2023 including BOLA/IDOR, broken authentication, excessive data exposure, rate limiting bypass, BFLA, mass assignment, SSRF, and security misconfiguration. Includes REST-specific attacks such as HTTP verb tampering, content-type switching, and parameter pollution. Covers gRPC exploitation through protobuf interception, reflection API enumeration, and metadata injection. Addresses WebSocket vulnerabilities including origin bypass, message injection, and cross-site WebSocket hijacking. Provides tooling guidance for Burp Suite, Postman, grpcurl, websocat, and mitmproxy. Each technique includes detection signatures and defensive indicators so you understand what artifacts your testing leaves behind. Designed for authorized penetration testing engagements against API-driven architectures.
Bluetooth Low Energy (BLE) attack methodology — GATT enumeration, characteristic read/write without auth, pairing downgrade (Just Works forced), LE Secure Connections bypass, MITM via active relay, sniffing with Sniffle (TI CC1352) / Ubertooth / Frontline, encryption key extraction (LE Legacy Pairing crackable, LE Secure Connections strong), proximity authentication abuse (cars, locks), and companion-app trust analysis. Use for IoT BLE devices, smart locks, fitness trackers, medical devices, BLE beacons, or any device pairing over BLE.