1
0
Fork 0
mirror of https://github.com/dbarzin/pandora-box.git synced 2025-07-19 05:19:40 +02:00
pandora-box est une station d'analyse USB conçue pour détecter et supprimer les logiciels malveillants des clés USB.
Find a file
2025-04-18 09:22:57 +02:00
.github/workflows work on code quality 2025-04-17 15:20:06 +02:00
3D add 3D model 2022-10-25 23:15:02 +02:00
images add error image 2022-09-25 10:40:05 +02:00
rsyslog.d config file for rsyslog 2023-03-10 15:54:02 +01:00
tests fix 2025-04-08 09:25:25 +02:00
.gitignore work in progress 2022-06-28 17:52:32 +02:00
INSTALL.md fix install 2025-04-09 15:17:59 +02:00
install.sh work on exfat 2025-04-18 09:13:37 +02:00
LICENSE Initial commit 2022-07-07 07:20:09 +02:00
pandora-box.curses fix bug 2023-03-04 21:48:48 +01:00
pandora-box.ini.curses fix bug 2023-03-04 21:48:48 +01:00
pandora-box.ini.rpi fix bug 2023-03-04 21:48:48 +01:00
pandora-box.ini.ubuntu fix bug 2023-03-04 21:48:48 +01:00
pandora-box.py mount for all users 2025-04-18 09:22:57 +02:00
pandora-box.txt add logo 2023-02-15 14:58:55 +01:00
pandora.service bugfix 2023-02-13 17:19:00 +01:00
quality.sh work on code quality 2025-04-17 15:20:06 +02:00
README.md typo 2025-04-17 20:00:40 +02:00
ROADMAP.md fix mouse or enter 2023-03-23 14:14:48 +01:00

PandoraBox

PandoraBox is a USB scanning station designed to detect and remove malware from USB disks. It is based on Pandora by CIRCL and is distributed under the GPLv3 license.

Key Features

  • Detects USB insertion/removal in real time
  • Automatically or manually mounts USB devices
  • Multithreaded scanning using pypandora
  • Automatic quarantine of infected files
  • Manual file removal after user confirmation
  • Interactive terminal interface (curses) or graphical feedback using images
  • Uses well-known malware detection tools:

Other malware detection tools can be configured using Pandora antivirus-workers.

Interface

PandoraBox supports:

Graphical Feedback

Text Interface (Advanced Users)

Installation

PandoraBox runs on Ubuntu 24.04 server LTS.

Dependencies

  • Python 3.8+
  • Python modules: psutil, pyudev, pypandora, curses, logging, subprocess

Install dependencies:

pip install psutil pyudev pypandora

Configuration

Edit pandora-box.ini at the root of the project:

[DEFAULT]
FAKE_SCAN = false
USB_AUTO_MOUNT = true
PANDORA_ROOT_URL = http://localhost
QUARANTINE = true
QUARANTINE_FOLDER = /var/quarantine
CURSES = true
THREADS = 4

Setup & Usage

More details in the installation guide.

Application States

  • START: Initialization and config loading
  • WAIT: Wait for USB insertion
  • SCAN: Scan device contents
  • CLEAN: Prompt for infected file removal
  • STOP: Application ends or error

Roadmap

If you'd like to contribute, check the roadmap.

Architecture

PandoraBox is implemented as a Python class (PandoraBox) which handles:

  • Configuration parsing
  • Device detection with pyudev
  • File scanning using pypandora
  • Logging and progress tracking
  • Interactive interface handling

Security and Customization

  • Uses a system lock to prevent multiple instances
  • Can be integrated with additional tools or security measures
  • Easily extendable to new malware detection engines or logging systems

Author

License

PandoraBox is open source software released under the GPLv3 license.