https://github.com/neotoxic-off/librarian
📂 Librarian is a Rust-based media malware scanner that recursively scans directories for hidden threats in media files
https://github.com/neotoxic-off/librarian
Last synced: 2 months ago
JSON representation
📂 Librarian is a Rust-based media malware scanner that recursively scans directories for hidden threats in media files
- Host: GitHub
- URL: https://github.com/neotoxic-off/librarian
- Owner: Neotoxic-off
- License: mit
- Created: 2025-03-31T11:16:17.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-05-06T14:44:16.000Z (11 months ago)
- Last Synced: 2025-05-06T15:54:04.823Z (11 months ago)
- Language: Rust
- Homepage:
- Size: 2.6 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 📂 Librarian
Librarian is a Rust-based media malware scanner that recursively scans directories for hidden threats in media files (MP4, MP3, AVI, MKV, DOC, PNG, etc.).
## Features
- [X] Deep File Inspection – Verifies file headers to prevent polyglot attacks
- [X] Entropy Analysis – Flags files with unusually high entropy (possible encryption or packing)
- [X] Script Injection Detection – Scans raw bytes for malicious patterns
- [X] Fast Recursive Scanning – Uses walkdir for deep directory analysis
- [X] Multi-threaded Processing – Parallel file scanning for maximum performance
- [X] CLI-based & Lightweight – Built with clap and log for efficiency
## Install
Ensure you have Rust installed. Then, clone the repository and build the project:
```sh
# Clone the repository
git clone https://github.com/Neotoxic-off/librarian.git
cd librarian
# Build the project
cargo build --release
```
## 🛠️ Usage
Run the scanner by specifying a folder to scan:
```sh
./librarian --folder /path/to/scan
```
### Optional Arguments
```sh
--entropy-threshold # Set a custom entropy threshold (default: 8.0)
--threads # Set a custom threads count (default: 2)
```
Example:
```sh
./librarian --folder /media --entropy-threshold 8.0 --threads 4
```