feat: add cyber threat map layer with Feodo Tracker + URLhaus integration

Plot live botnet C2 servers, malware distribution nodes, and malicious IPs
on the globe using free abuse.ch APIs (Feodo Tracker + URLhaus).

- Vercel edge API with triple-layer caching (Redis → memory → stale fallback)
- IP geolocation via ipwho.is + ipapi.co (HTTPS-compatible with Edge runtime)
- Severity-based color coding (critical=red, high=orange, medium=amber, low=yellow)
- Feature-gated behind VITE_ENABLE_CYBER_LAYER=true env var
- Frontend circuit breaker, data sanitization, 10min auto-refresh
- Tauri desktop support: 3 new secret keys (URLHAUS, OTX, AbuseIPDB)
- Full test suite (6 unit tests), e2e harness updates, popup + tooltip rendering
This commit is contained in:
Elie Habib
2026-02-15 16:52:24 +04:00
parent ef389319a9
commit 5facae7105
25 changed files with 1674 additions and 19 deletions

View File

@@ -20,13 +20,16 @@ const DESKTOP_LOG_FILE: &str = "desktop.log";
const MENU_FILE_SETTINGS_ID: &str = "file.settings";
const MENU_HELP_GITHUB_ID: &str = "help.github";
const MENU_HELP_DEVTOOLS_ID: &str = "help.devtools";
const SUPPORTED_SECRET_KEYS: [&str; 15] = [
const SUPPORTED_SECRET_KEYS: [&str; 18] = [
"GROQ_API_KEY",
"OPENROUTER_API_KEY",
"FRED_API_KEY",
"EIA_API_KEY",
"CLOUDFLARE_API_TOKEN",
"ACLED_ACCESS_TOKEN",
"URLHAUS_AUTH_KEY",
"OTX_API_KEY",
"ABUSEIPDB_API_KEY",
"WINGBITS_API_KEY",
"WS_RELAY_URL",
"VITE_OPENSKY_RELAY_URL",