A privacy-first, security-hardened browser built on Electron with comprehensive threat detection, anti-fingerprinting, and encrypted credential management.
aegis-browser/
├── src/
│ ├── main/
│ │ └── main.js # Electron main process — tab management, IPC, security policy
│ ├── renderer/
│ │ ├── index.html # Browser chrome — cyberpunk command center UI
│ │ └── newtab.html # New tab page with security status dashboard
│ ├── preload/
│ │ ├── preload.js # Secure IPC bridge (main window)
│ │ └── webview-preload.js # Anti-fingerprinting injections for web content
│ └── security/
│ ├── SecurityEngine.js # Central security orchestration and policy enforcement
│ ├── PrivacyShield.js # Tracker blocking, anti-fingerprinting, WebRTC protection
│ ├── ThreatDetector.js # Phishing detection, homograph attacks, malware URLs
│ ├── AdBlockEngine.js # Network-level + cosmetic ad blocking (200+ domains)
│ ├── DNSResolver.js # DNS-over-HTTPS with multi-provider support
│ ├── CertificateValidator.js # TLS cert validation + certificate pinning
│ ├── VaultManager.js # AES-256-GCM encrypted credential vault
│ └── SessionIsolator.js # Per-tab process and data isolation
├── config/
│ └── default.json # Default security configuration
└── package.json
- HTTPS Enforcement — Automatic HTTP → HTTPS upgrade for all requests
- DNS-over-HTTPS — Encrypted DNS via Cloudflare, Google, Quad9, or Mullvad
- Certificate Pinning — Detect MITM attacks via certificate fingerprint validation
- Mixed Content Blocking — Block insecure resources on HTTPS pages
- Request Timeout — Configurable timeout to prevent slow-loris attacks
- Redirect Limiting — Max redirect chain depth to prevent loops
- Canvas Fingerprint Protection — Noise injection on canvas reads
- WebGL Fingerprint Protection — GPU/renderer string spoofing
- Audio Fingerprint Protection — AnalyserNode noise injection
- Navigator Spoofing — Normalize hardware concurrency, device memory, platform
- Screen Spoofing — Standardized screen dimensions
- User Agent Spoofing — Common/generic UA string
- Battery API Block — Prevent battery-based tracking
- Beacon API Filtering — Block tracking beacons
- WebRTC Leak Prevention — Block IP leak via ICE candidates
- Connection Info Block — Hide network type/speed
- DNT + GPC Headers — Send Do Not Track and Global Privacy Control
- Phishing URL Detection — Pattern-based analysis for fake login pages
- Homograph Attack Detection — IDN/Unicode lookalike domain detection
- Malware Domain Blocking — Block known malicious domains
- Cryptominer Blocking — Block in-browser cryptocurrency mining
- Suspicious URL Analysis — Score-based threat evaluation (0-100)
- Real-time Security Alerts — Toast notifications for blocked threats
- 200+ Ad Network Domains — Network-level request blocking
- URL Pattern Matching — Regex-based ad resource detection
- Cosmetic Filtering — DOM-level ad element hiding
- Tracker Domain Database — 60+ tracker/analytics domains blocked
- Third-Party Cookie Blocking — Cross-site cookie isolation
- AES-256-GCM Encryption — Military-grade vault encryption
- Scrypt Key Derivation — Memory-hard password hashing
- Auto-lock — Vault locks after 5 minutes of inactivity
- Secure Password Generator — Cryptographically random passwords (24+ chars)
- Per-domain Storage — Isolated credential entries
- Tab Process Isolation — Separate session partitions per tab
- Context Isolation — Full isolation between preload and renderer
- Sandbox Mode — Renderer processes run sandboxed
- Permission Control — Granular permission blocking per security level
- Private Tabs — Ephemeral sessions with auto-wipe on close
| Feature | Low | Medium | High | Paranoid |
|---|---|---|---|---|
| HTTPS Enforcement | ✅ | ✅ | ✅ | ✅ |
| Ad Blocking | ✅ | ✅ | ✅ | ✅ |
| Tracker Blocking | ❌ | ✅ | ✅ | ✅ |
| Anti-Fingerprinting | ❌ | ✅ | ✅ | ✅ |
| WebRTC Blocking | ❌ | ❌ | ✅ | ✅ |
| All Permissions Denied | ❌ | ❌ | ❌ | ✅ |
| Hardware Accel Disabled | ❌ | ❌ | ❌ | ✅ |
# Install dependencies
npm install
# Run in development
npm start
# Build for production
npm run build # All platforms
npm run build:win # Windows (NSIS + Portable)
npm run build:mac # macOS (DMG + ZIP)
npm run build:linux # Linux (AppImage + DEB)| Shortcut | Action |
|---|---|
Ctrl+T |
New Tab |
Ctrl+Shift+N |
New Private Tab |
Ctrl+W |
Close Tab |
Ctrl+L |
Focus URL Bar |
Ctrl+R |
Reload |
Enter (URL bar) |
Navigate / Search DuckDuckGo |
Edit AdBlockEngine.js — add domains to the adDomains Set or URL patterns to adPatterns.
Edit ThreatDetector.js — extend malwareDomains or add new detection patterns.
Edit DNSResolver.js — add provider URLs to the providers object.
Use CertificateValidator.pinCertificate(hostname, fingerprint) to pin specific site certs.
Aegis follows zero-trust principles: every request is evaluated, every permission is denied by default, and every surface is hardened. The browser assumes the network, the content, and the sites are hostile — and protects accordingly.
Built for operators who take their security seriously.