Skip to content

Latest commit

 

History

12 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GrandparentShield

A lightweight Windows 11 system tray application that hardens a laptop against the most common attack vectors targeting non-technical elderly users: malicious downloads, phishing sites, rogue software installs, fake popups, and social engineering.

This is not an antivirus replacement. It works alongside Windows Defender by eliminating the human-error vectors that Defender can't prevent.

Features

  • Download Watchdog — Monitors Downloads and Desktop folders in real time. Quarantines dangerous files (.exe, .msi, .bat, .ps1, .vbs, etc.) the moment they appear, including executables hidden inside ZIP archives.
  • Browser Hardening — Applies managed policies to Chrome and Edge via the Windows Registry: blocks dangerous downloads, enables Safe Browsing / SmartScreen, disables developer tools, blocks popups, and restricts extensions to an allowlist (uBlock Origin + uBlock Origin Lite).
  • DNS Protection — Configures Cloudflare Families (1.1.1.3 / 1.0.0.3) or Quad9 (9.9.9.9) to block malware and adult content at the DNS level.
  • Windows Defender Enforcement — Checks every 30 minutes that Defender is enabled and signatures are up to date. Alerts if anything is off.
  • Windows Update Monitoring — Warns if no updates have been installed in 30+ days.
  • Remote Alerts — Sends email notifications when files are quarantined and a daily health digest so you can monitor remotely.
  • System Tray UI — Green/yellow/red shield icon shows protection status at a glance. Password-protected exit prevents accidental closure.

Quick Start

Requirements

  • Windows 11
  • Python 3.12+ (for building from source)
  • Google Chrome (set as default browser)

Build

pip install -r requirements.txt
python -m PyInstaller installer/build.spec

Output: dist/GrandparentShield.exe

Install

  1. Copy GrandparentShield.exe and installer/install.bat to the target machine
  2. Right-click install.batRun as administrator

The installer will:

  • Copy the executable to C:\Program Files\GrandparentShield\
  • Register auto-start via Task Scheduler (runs on login)
  • Configure Cloudflare Families DNS
  • Harden UAC settings
  • Launch the application

Uninstall

Run installer/uninstall.bat as administrator to reverse all changes.

How It Works

On startup, GrandparentShield:

  1. Starts monitoring Downloads and Desktop for dangerous files
  2. Scans those folders for any dangerous files that already exist
  3. Applies browser security policies to Chrome and Edge
  4. Sets Chrome as the default browser (if not already)
  5. Checks DNS configuration
  6. Verifies Windows Defender status
  7. Checks Windows Update recency
  8. Sits in the system tray showing a green shield

When a dangerous file is detected:

  1. The file is moved to %APPDATA%/GrandparentShield/quarantine/
  2. A toast notification tells the user to contact their family member for help
  3. An email alert is sent to the configured caretaker

Configuration

All configuration lives in %APPDATA%/GrandparentShield/config.json. There is no settings UI by design — configuration changes are made by the caretaker editing the file directly.

Key settings in config/default_config.json:

  • watched_folders — Folders to monitor for dangerous files
  • dangerous_extensions — File extensions to quarantine
  • allowed_executables — Known-safe executables to skip
  • dns.provider — DNS provider (cloudflare_families or quad9)
  • alerts.email — Caretaker email for remote notifications
  • exit_password — Password required to close the application

Project Structure

├── main.py                     # Entry point, tray app orchestration
├── config/
│   └── default_config.json     # Default settings
├── modules/
│   ├── browser_hardening.py    # Chrome/Edge registry policies
│   ├── dns_protection.py       # Protective DNS configuration
│   ├── download_watchdog.py    # File system monitoring + quarantine
│   ├── defender_check.py       # Windows Defender status checks
│   ├── update_check.py         # Windows Update monitoring
│   ├── notifications.py        # Local toast notifications
│   ├── remote_alert.py         # Email alerts to caretaker
│   └── uac_hardening.py        # UAC policy enforcement
├── ui/
│   └── tray.py                 # System tray icon + menu
├── utils/
│   ├── registry.py             # Windows Registry helpers
│   ├── powershell.py           # PowerShell command runner
│   └── logger.py               # Logging with rotation
├── installer/
│   ├── build.spec              # PyInstaller build config
│   └── install.bat             # One-click installer
└── tests/                      # Unit tests

License

Private use only.

About

Windows 11 system tray app that hardens laptops against phishing, malicious downloads, and fake popups for elderly users

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages