Sign inSign up

41vi4p/breaknwipe

By 41vi4p

Updated 2 months ago

Secure data wiping and recovery utility with CLI and web GUI for IT asset recycling.

Image
Security
Databases & storage
0

917

41vi4p/breaknwipe repository overview

BreakNWipe: Secure Data Wiping & Recovery

BreakNWipe is a comprehensive, secure data wiping and data recovery utility designed for IT asset recycling and disk sanitization.

The Docker image bundles the complete stack:

  • A modern React/Next.js Web GUI
  • A FastAPI backend
  • A Python 3 command-line interface (CLI)
  • Essential system binaries and forensic tools (hdparm, nvme, smartctl, parted, sleuthkit, photorec, etc.)

💻 Platform Support Matrix

Because Docker on macOS and Windows runs inside a virtual machine, block-device visibility differs across host systems:

Host OSDevice AccessSupported Operations
LinuxFull (--privileged / /dev mount)Everything: secure-erase, overwrite, verify, recovery, SMART checks
WindowsUSB Drives Only (via usbipd-win forwarding)Wipe, verify, and recover forwarded USB drives (no internal drives)
macOSNone (VM limits block device access)UI & API demo only (ideal for sandbox testing/report verification)

🚀 Quick Start (Web GUI)

Linux (Full Access)

Run the web GUI with access to host drives:

docker run -d --name breaknwipe \
  --privileged \
  -v /dev:/dev \
  -v /run/udev:/run/udev:ro \
  -p 8000:8000 \
  -v breaknwipe-reports:/root/breaknwipe_reports \
  -v breaknwipe-history:/root/.breaknwipe \
  --restart unless-stopped \
  41vi4p/breaknwipe:latest

Open http://localhost:8000 in your browser.

Volume Mounts Explained:

  • -v /dev:/dev & --privileged: Required for raw block-device access, low-level ioctl calls, and ATA/NVMe sanitization.
  • -v /run/udev:/run/udev:ro: Grants access to the host's udev database for enhanced model/serial drive detection.
  • -v breaknwipe-reports:/root/breaknwipe_reports: Persists certificates and generated reports (PDFs, JSONs).
  • -v breaknwipe-history:/root/.breaknwipe: Persists the SQLite database for the GUI's reports history and logs.

🛠️ CLI Mode

The container's entrypoint is the BreakNWipe CLI. You can run CLI commands directly:

List all block devices:

docker run --rm --privileged -v /dev:/dev 41vi4p/breaknwipe:latest --list-devices

Run the interactive CLI utility:

docker run --rm --privileged -v /dev:/dev -it 41vi4p/breaknwipe:latest --interactive

🐳 Docker Compose Setup

Alternatively, use Docker Compose to manage the container:

services:
  breaknwipe:
    image: 41vi4p/breaknwipe:latest
    container_name: breaknwipe
    privileged: true
    ports:
      - "8000:8000"
      - "8000:8000/ws"
    volumes:
      - /dev:/dev
      - /run/udev:/run/udev:ro
      - breaknwipe-reports:/root/breaknwipe_reports
      - breaknwipe-history:/root/.breaknwipe
    restart: unless-stopped

volumes:
  breaknwipe-reports:
  breaknwipe-history:

🔒 Security Warnings

  • Privileged Access: The container runs as root. --privileged combined with mapping /dev means the container has write access to all disks on the host (including the host operating system disk). Use with extreme caution.
  • No Authentication: The web GUI does not contain authentication. Do not bind/publish port 8000 to a public-facing or untrusted network.

Tag summary

Content type

Image

Digest

sha256:71a655ccd

Size

176.6 MB

Last updated

2 months ago

docker pull 41vi4p/breaknwipe