{"adoption": {"forks": 252, "observed_at": "2026-08-28T04:05:40.028035+00:00", "stars": 1816}, "canonical_url": "https://ross.abutalabs.com/products/whid", "card": {"archived": false, "artifact_type": "application", "description": "WiFi HID Injector - An USB Rubberducky / BadUSB On Steroids.", "domain": ["security", "penetration-testing", "hardware"], "enriched": true, "function": ["security", "embedded", "workflow-automation"], "health_score": 20, "homepage": null, "language": "C++", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["whid-injector/WHID"], "name": "whid-injector/WHID", "platform": ["embedded", "iot", "cross-platform"], "pushed_at": "2024-07-27T16:37:46+00:00", "repo": "whid-injector/WHID", "stars": 1816, "tags": ["badusb", "hid-injection", "wifi", "esp8266", "usb-rubber-ducky", "offensive-security", "hardware-hacking", "keystroke-injection"], "topics": [], "urls": [], "use_cases": ["inject keystrokes over wifi into a target computer", "run badusb payload attacks remotely", "demonstrate hid injection attacks in pentests", "learn offensive hardware hacking", "control a usb rubber ducky style device from a phone"], "what_it_is": "WHID Injector is an open-source WiFi HID injection tool that combines an ESP8266 with an ATmega32u4 to remotely deliver BadUSB keystroke attacks over WiFi. It is based on ESPloit and is used for offensive security demonstrations and hardware hacking training.", "when_to_avoid": ["you need a purely software USB emulation tool without dedicated hardware", "you lack authorization - this is an offensive tool for legitimate security testing only", "you want a maintained general-purpose microcontroller framework rather than a purpose-built attack device"], "when_to_choose": ["you need remote-triggered HID/keystroke injection over WiFi", "you want an open-source BadUSB platform with an Android companion app", "you are doing physical security assessments or hardware hacking training"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/whid", "repo": "whid-injector/WHID", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:40.028035+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:20:37.099839+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4853653d9988fc194a190823316031ffa451be1c6246159eab2792751463779d", "fetched_at": "2026-08-28T04:05:40.028035+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whid-injector/WHID"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3466, "days_push": 767, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}