Built by Egyan | Red Parrot Accounting Ltd
VaultSentry is a backup integrity monitoring system designed to detect tampering, ransomware encryption, corruption, missing files, stale backups, and abnormal backup size drops.
The system automatically hashes every file in backup storage, stores a trusted baseline, and verifies the integrity of the entire backup set every night.
If anything suspicious occurs, VaultSentry immediately alerts administrators and includes the issue in a daily digest report.
Python 3 SQLite Database Tkinter Desktop GUI SMTP Email Alerts Windows Task Scheduler
| Feature | Description |
|---|---|
| π SHA-256 Integrity Hashing | Cryptographically strong file verification |
| π§ Entropy Analysis | Detects ransomware encryption patterns |
| π‘ Tamper Detection | Identifies modified or corrupted files |
| π¨ Ransom Note Detection | Flags common ransomware note filenames |
| π Backup Size Monitoring | Alerts if total backup size drops β₯30% |
| π Missing File Detection | Detects deleted or moved backup files |
| β³ Stale Backup Alerts | Warns when newest backup exceeds threshold age |
| π§ Email Alerts | Immediate critical alerts + daily digest |
| π Excel Reports | Multi-sheet colour-coded reports |
| πΈ Baseline Snapshots | Point-in-time baseline versions |
| β» Restore Engine | Restore files with folder structure |
| π₯ Desktop Dashboard | Dark-mode monitoring GUI |
| π Scheduled Verification | Automatic nightly verification |
| π§ͺ Automated Tests | 162 unit tests with CI pipeline |
Run the installer as Administrator:
right-click Install_VaultSentry.bat β Run as administratorThe installer will:
-
install VaultSentry to
C:\SecurityLogs\VaultSentry\ -
create a Windows scheduled task
-
generate the initial integrity baseline
Command line interface:
python main.py --gui
python main.py --baseline
python main.py --verify
python main.py --snapshot "Before audit Mar 2026"
python main.py --list-snapshots
python main.py --restore
python main.py --digest
python main.py --report
python main.py --statusVaultSentry includes a desktop monitoring dashboard.
| Tab | Purpose |
|---|---|
| Dashboard | Live stats, backup size trend, scan controls |
| Alerts | Alert history with severity filtering |
| Reports | Generate and browse Excel reports |
| Restore | Restore files with preview plan |
| Snapshots | Create, browse, diff, delete snapshots |
| Settings | Configuration viewer and diagnostics |
VaultSentry supports both instant alerts and daily digest reporting.
Immediate alerts
Triggered instantly for critical events such as:
- ransomware suspected
- backup size drop
- missing backup files
Enable in config.py:
EMAIL_ENABLED = TrueDaily digest
A single HTML report summarising:
- last verification run
- all alerts in previous 25 hours
- backup system health
DIGEST_ENABLED = True
DIGEST_TIME = 8Store SMTP credentials securely as an environment variable:
[System.Environment]::SetEnvironmentVariable(
'VAULTSENTRY_EMAIL_PASSWORD',
'your_app_password',
'Machine'
)VaultSentry
β
βββ CLI + GUI (main.py)
β
βββ Scanner Engine
β β baseline hash creation
β β nightly verification
β β ransomware entropy detection
β β backup size analysis
β
βββ Database Layer (SQLite)
β β file hashes
β β snapshots
β β alert history
β β backup size trend
β
βββ Alert System
β β desktop alerts
β β email notifications
β β alert deduplication
β
βββ Reporting Engine
β Excel reports
β daily digest email
β system health summaries
VaultSentry uses Shannon entropy analysis to detect encryption activity.
Normal files typically score:
4.0 β 6.5 entropy
Encrypted files typically score:
7.5 β 8.0 entropy
If a file's hash changes AND entropy exceeds 7.8, VaultSentry triggers:
CRITICAL: RANSOMWARE SUSPECTED
A second detection layer monitors backup size trends.
If total backup size drops β₯30% overnight, VaultSentry generates another CRITICAL alert.
Note on compressed/Office formats:
.zip,.xlsx,.docx,.gz,.7z,.rar,.xls,.tarfiles are excluded from entropy-based ransomware escalation because these formats naturally exceed the 7.8 threshold when healthy. Hash changes on these files still raise aWARNINGalert, and structural integrity checking provides a second layer.
VaultSentry includes 162 automated unit tests.
Run tests with:
pip install pytest pytest-cov
pytest tests/ -vCurrent test coverage: 73%
VaultSentry
β
β main.py
β config.py
β logger.py
β Install_VaultSentry.bat
β Uninstall_VaultSentry.bat
β
β core
β β database.py
β β alerts.py
β β scanner.py
β β restore.py
β β digest.py
β β reports.py
β
β gui
β β app.py
β β theme.py
β β tab_dashboard.py
β β tab_alerts.py
β β tab_reports.py
β β tab_restore.py
β β tab_snapshots.py
β β tab_settings.py
β
β utils
β β file_utils.py
β
β tests
Future improvements planned for VaultSentry:
- Cloud backup monitoring (S3 / Backblaze)
- Ransomware pattern learning
- Web dashboard
- Slack / Teams alerts
- Anomaly detection on backup trends
- Cross-platform support (Linux)
v1.0.1 (current β security & reliability fixes)
- Fix 1 β Digest date persisted to database:
_last_digest_datewas a module-level variable lost on every process restart. Now persisted in asettingsDB table β the once-per-day guard survives nightly scheduled task restarts correctly. - Fix 2 β Removed test credential file from repository: Deleted
testpasswordfile accidentally committed. Added*.password,*.secret,*.key,*.pem,*.pfxto.gitignore. - Fix 3 β Email alert failures now visible in GUI: Failures were logged but invisible. Now persisted to
settings.email_failurein the DB. Dashboard shows a red banner when email alerts are failing; clears when email succeeds. - Fix 4 β Entropy false positives on PDF/ZIP/Office files eliminated:
.pdf,.xlsx,.docx,.zip,.gz,.7z,.rar,.xls,.tarfiles naturally score above 7.8 entropy. These extensions now skip the CRITICAL ransomware escalation. Hash-change WARNING still fires.is_file_openableintegrity check still runs.
v1.0 (original release)
- SHA-256 hashing, Shannon entropy ransomware detection, 4-step nightly pipeline
- Backup size trend tracking with drop alert, baseline snapshot versioning + diff viewer
- Restore capability with per-file overwrite prompts, daily HTML email digest
- Dark blue GUI: Dashboard, Alerts, Reports, Restore, Snapshots, Settings
- 162 tests, 73% coverage, CI on Python 3.10/3.11/3.12
VaultSentry detects backup integrity violations but does not block ransomware or automatically restore data.
Any CRITICAL alert should be treated as an immediate security incident.
Egyan07
Developed for Red Parrot Accounting Ltd
Backup Integrity Monitoring. Ransomware Detection. Peace of Mind.