{"_id":"@arex21/usb-guard","_rev":"5-82276de7c04b8dff0d34c8c42ae6be7a","name":"@arex21/usb-guard","dist-tags":{"latest":"1.0.4"},"versions":{"1.0.0":{"name":"@arex21/usb-guard","version":"1.0.0","keywords":["usb","usb-guard","storage","block","windows","security"],"author":{"url":"https://www.linkedin.com/in/muhammad-owais-678622405/","name":"Arex","email":"contact@itsarex.com"},"license":"MIT","_id":"@arex21/usb-guard@1.0.0","maintainers":[{"name":"arex21","email":"riotsystudio@gmail.com"}],"os":["win32"],"bin":{"usb-guard":"release/usb-guard.exe"},"cpu":["x64"],"dist":{"shasum":"cb491492428bd0606b64a86841443e9a00787dd6","tarball":"https://registry.npmjs.org/@arex21/usb-guard/-/usb-guard-1.0.0.tgz","fileCount":3,"integrity":"sha512-oGvUDsSMSEvWISPBquckl30KIUG9AmNzy1VLPb3nHv31lY1iBS7/5Fn8XlZXTU2lkPOOv2ev4K9OZJRkJEww6A==","signatures":[{"sig":"MEUCIBz+pACacWn363kEpslZt1ctiwuQdJr/18odp/4/PLM6AiEA0IMAyvXwGiWScdSwW6zZKp4Cb61wlPgSeUjTfAAYZ54=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322106},"engines":{"node":">=14"},"gitHead":"d9d205ddc772396dbd898cdfca2390f218adcb17","_npmUser":{"name":"arex21","email":"riotsystudio@gmail.com"},"repository":{"url":"","type":"git"},"_npmVersion":"11.9.0","description":"Block USB storage devices (disks/flash drives) on Windows while keeping mouse/keyboard working. Prebuilt Windows binary.","directories":{},"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/usb-guard_1.0.0_1783947275396_0.6955345547154075","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@arex21/usb-guard","version":"1.0.1","keywords":["usb","usb-guard","storage","block","windows","security"],"author":{"url":"https://www.linkedin.com/in/muhammad-owais-678622405/","name":"Arex","email":"contact@itsarex.com"},"license":"MIT","_id":"@arex21/usb-guard@1.0.1","maintainers":[{"name":"arex21","email":"riotsystudio@gmail.com"}],"os":["win32"],"bin":{"usb-guard":"release/usb-guard.exe"},"cpu":["x64"],"dist":{"shasum":"d61b3108a543cec642dd54cf1e70eaeb676d1e1d","tarball":"https://registry.npmjs.org/@arex21/usb-guard/-/usb-guard-1.0.1.tgz","fileCount":3,"integrity":"sha512-G2/a+zv2jsoAHaq4HtBFKcyBX2IE2avc0EhrI83AYpTRR7IZDOV6YeHn7ycISgRaKD2YZB1IZmHwrIlbr5gAOw==","signatures":[{"sig":"MEYCIQCVe1x/N3ana3npUcilHTX02nfTIRzx53g7fPFvFsh+0QIhAKDJFZXuWjMbRT5ui+iIPhiDqJUd5pky60Q9W9TYgpZJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322104},"engines":{"node":">=14"},"gitHead":"d9d205ddc772396dbd898cdfca2390f218adcb17","_npmUser":{"name":"arex21","email":"riotsystudio@gmail.com"},"repository":{"url":"","type":"git"},"_npmVersion":"11.9.0","description":"Block USB storage devices (disks/flash drives) on Windows while keeping mouse/keyboard working. Prebuilt Windows binary.","directories":{},"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/usb-guard_1.0.1_1783947404306_0.6376085512892364","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@arex21/usb-guard","version":"1.0.2","keywords":["usb","usb-guard","storage","block","windows","security"],"author":{"url":"https://www.linkedin.com/in/muhammad-owais-678622405/","name":"Arex","email":"contact@itsarex.com"},"license":"MIT","_id":"@arex21/usb-guard@1.0.2","maintainers":[{"name":"arex21","email":"riotsystudio@gmail.com"}],"os":["win32"],"bin":{"usb-guard":"release/usb-guard.exe"},"cpu":["x64"],"dist":{"shasum":"50ae167e8833fb40ae0d87e1bb9ea32774cfaae2","tarball":"https://registry.npmjs.org/@arex21/usb-guard/-/usb-guard-1.0.2.tgz","fileCount":3,"integrity":"sha512-eJ77BpoCXF65e+wyScyFMz0+t+S1eqD5hYWBovbTVdPwRM36cgZ8llK9PbfModtLDs5ZEvZ2cMvM/VagrElmQw==","signatures":[{"sig":"MEQCIGetarK98sCT66rGcXjKB8KcXuFQeh3l3bUjyKf0pOvjAiA/dfig/egoMyY5yohqssuy4crkjNW+fQSdCPDLEtTR2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322104},"engines":{"node":">=14"},"gitHead":"d9d205ddc772396dbd898cdfca2390f218adcb17","_npmUser":{"name":"arex21","email":"riotsystudio@gmail.com"},"repository":{"url":"","type":"git"},"_npmVersion":"11.9.0","description":"Block USB storage devices (disks/flash drives) on Windows while keeping mouse/keyboard working. Prebuilt Windows binary.","directories":{},"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/usb-guard_1.0.2_1783947504781_0.25574429698678225","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@arex21/usb-guard","version":"1.0.3","keywords":["usb","usb-guard","storage","block","windows","security"],"author":{"url":"https://www.linkedin.com/in/muhammad-owais-678622405/","name":"Arex","email":"contact@itsarex.com"},"license":"MIT","_id":"@arex21/usb-guard@1.0.3","maintainers":[{"name":"arex21","email":"riotsystudio@gmail.com"}],"os":["win32"],"bin":{"usb-guard":"release/usb-guard.exe"},"cpu":["x64"],"dist":{"shasum":"8a1e310dee8cef0ae7c2aa8757f6f78a74b45f45","tarball":"https://registry.npmjs.org/@arex21/usb-guard/-/usb-guard-1.0.3.tgz","fileCount":3,"integrity":"sha512-tfdEfa03xPBNEWh19WxjB8EyfyuU7aD3F/KmOXOMnapcSa/3/OX9Mw9JgbxT0aofOUBKjUvaLqYYPxAMM57xXw==","signatures":[{"sig":"MEUCIGpSLL+C/WwbFjEtHLVZce597zallIuyO9upKJ4RKA57AiEA2nisU6MJ97Q6w9M/+1X8GWlA9Hrpy2QDxs07JSSeE/M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":321929},"engines":{"node":">=14"},"gitHead":"d9d205ddc772396dbd898cdfca2390f218adcb17","_npmUser":{"name":"arex21","email":"riotsystudio@gmail.com"},"repository":{"url":"","type":"git"},"_npmVersion":"11.9.0","description":"Block USB storage devices (disks/flash drives) on Windows while keeping mouse/keyboard working. Prebuilt Windows binary.","directories":{},"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/usb-guard_1.0.3_1783947597635_0.40480665739951793","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@arex21/usb-guard","version":"1.0.4","description":"Block USB storage devices (disks/flash drives) on Windows while keeping mouse/keyboard working. Prebuilt Windows binary.","bin":{"usb-guard":"release/usb-guard.exe"},"os":["win32"],"cpu":["x64"],"engines":{"node":">=14"},"keywords":["usb","usb-guard","storage","block","windows","security"],"author":{"name":"Arex","email":"contact@itsarex.com","url":"https://www.linkedin.com/in/muhammad-owais-678622405/"},"license":"MIT","repository":{"type":"git","url":""},"gitHead":"d9d205ddc772396dbd898cdfca2390f218adcb17","_id":"@arex21/usb-guard@1.0.4","_nodeVersion":"25.6.1","_npmVersion":"11.9.0","dist":{"integrity":"sha512-wbUfgu8K8SU6oNKonz5VD6iI8Wq/SYE+/inixg69HufwbxJeXGbgxZ8yet2UYaPKOAmzVWASP1LQ54gWPcBhQA==","shasum":"c5467100aa25a5894934393d906309e4e49f8e3c","tarball":"https://registry.npmjs.org/@arex21/usb-guard/-/usb-guard-1.0.4.tgz","fileCount":3,"unpackedSize":321902,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDHg0joc5ERNcKkcmhTivrJrxa+pa0/A6kzxDw/qa4hfAiEAw6svB7+iA2SbkS02pUo1h6aNaRtyE+UonTyIscq5tnU="}]},"_npmUser":{"name":"arex21","email":"riotsystudio@gmail.com"},"directories":{},"maintainers":[{"name":"arex21","email":"riotsystudio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/usb-guard_1.0.4_1783948100588_0.13907203540330793"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-13T12:54:35.255Z","modified":"2026-07-13T13:08:20.848Z","1.0.0":"2026-07-13T12:54:35.537Z","1.0.1":"2026-07-13T12:56:44.440Z","1.0.2":"2026-07-13T12:58:24.943Z","1.0.3":"2026-07-13T12:59:57.775Z","1.0.4":"2026-07-13T13:08:20.741Z"},"author":{"name":"Arex","email":"contact@itsarex.com","url":"https://www.linkedin.com/in/muhammad-owais-678622405/"},"license":"MIT","keywords":["usb","usb-guard","storage","block","windows","security"],"repository":{"type":"git","url":""},"description":"Block USB storage devices (disks/flash drives) on Windows while keeping mouse/keyboard working. Prebuilt Windows binary.","maintainers":[{"name":"arex21","email":"riotsystudio@gmail.com"}],"readme":"# USB Guard\n\nBlock USB **storage** devices (external HDDs, flash drives, etc.) on Windows while keeping your mouse and keyboard fully working. USB Guard installs itself as a Windows service that auto-blocks newly plugged-in storage devices, and can re-enable everything with a single command.\n\n## Features\n\n- Blocks USB storage devices (matched by `USBSTOR` / `USB\\CLASS_08`) — disks and flash drives.\n- Keeps mouse, keyboard, and their ancestor hubs safe (they are never disabled).\n- Runs as an auto-start Windows service so devices plugged in later get blocked too.\n- One-command **start** (install + run) and **stop** (stop + re-enable + uninstall).\n- Requires administrator privileges (auto-relaunches elevated via `runas` if needed).\n\n## Install (as a CLI via npm)\n\n```powershell\nnpm i -g @arex21/usb-guard\n```\n\nThis downloads a prebuilt Windows (`win32-x64`) binary. \n\n## Usage\n\n```text\nUSB Guard - block USB storage devices (disks/flash drives)\nUsage:\n  usb-guard start - Start blocking the usb ports for storage devices\n  usb-guard stop  - Allow ports to be allocated for storage device\n\nCredits:\n  Created by: Arex\n  LinkedIn : https://www.linkedin.com/in/muhammad-owais-678622405/\n  Email    : contact@itsarex.com\n```\n\n### Commands\n\n| Command | What it does |\n| --- | --- |\n| `usb-guard start` | Installs the `UsbGuard` service and starts it. The service continuously blocks USB storage. |\n| `usb-guard stop`  | Stops the service, re-enables all previously blocked USB devices, and uninstalls the service. |\n\nBoth commands automatically request administrator elevation.\n\n## How it works\n\n- **`start`** → `install` (creates the `UsbGuard` auto-start service) + `sc start UsbGuard`.\n- The service scans the PnP device tree every ~30s, disabling only USB storage devnodes. Mouse/keyboard devnodes and every ancestor hub above them are protected.\n- **`stop`** → `sc stop UsbGuard` + re-enables all disabled devices (including phantom ghost disk nodes) and re-enumerates the bus to remount volumes + uninstalls the service.\n\n\n## Credits\n\n- **Created by:** Arex\n- **LinkedIn:** https://www.linkedin.com/in/muhammad-owais-678622405/\n- **Email:** contact@itsarex.com\n\n## License\n\nMIT\n","readmeFilename":"README.md"}