Skip to content

juergen2025sys/NETSHIELD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6,257 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

NETSHIELD β€” Automated Threat Intelligence


Combined Β  Feed Health Β  Confidence Β  False Positive

⚑ Quick Start Β· πŸ“Š Blocklisten Β· 🎯 Scoring Β· πŸ—οΈ Architektur Β· βš™οΈ Workflows Β· πŸ“‘ Feeds


πŸ“Š Key Statistics

152

IP-Quellen
(dynamisch)

414,606

Aktive IP-Drohungen
(Confidence β‰₯65)

34,756

CVE/Exploit IPs
Β 

72,928

Honeypot IPs
Β 
πŸ•’ Letztes Update 2026-06-12 07:22 UTC πŸ”„ Intervall 8Γ— tΓ€glich
πŸ“… IP-Retention 180 Tage βš™οΈ Aktive Workflows 24
🌍 Abdeckung 250+ LÀnder

NETSHIELD aggregiert, bewertet und bereinigt tΓ€glich IP-Bedrohungsdaten aus ΓΌber 120 Quellen (dynamisch, wΓ€chst laufend durch Auto-Discovery): rund 100 ΓΆffentliche Remote-Feeds, 5 lokale Sub-Workflow-Feeds (CVE, Honeypot, Honigtopf, Bot-Detector, AbuseIPDB API) und laufend neu per GitHub-Discovery entdeckte Feeds. Das System unterscheidet aktive Bedrohungen von veralteten statischen Listen und liefert daraus qualitativ hochwertige Blocklisten fΓΌr OPNsense, pfSense und iptables.


πŸ“‹ Blocklisten

Datei Zweck EintrΓ€ge Empfohlen fΓΌr
πŸ›‘οΈ active_blacklist_ipv4.txt Aktive Bedrohungen Β· letzte 30 Tage Β· Score β‰₯ 65 414,606 OPNsense / pfSense / Firewall
πŸ”Ά blacklist_confidence40_ipv4.txt Mittleres bis hohes Vertrauen Β· Score β‰₯ 40 5,108,880 Erweiterte Filterregeln
πŸ“¦ combined_threat_blacklist_ipv4.txt Alle IPs Β· 180-Tage-Fenster 6,263,824 Audit / SIEM
πŸ‘οΈ watchlist_confidence25to39_ipv4.txt Watchlist Β· Score 25–39 70,447 Monitoring
πŸ’£ cve_exploit_ips.txt CVE-Exploits & aktive C2-Server 34,756 IDS / IPS
🍯 honeypot_ips.txt Honeypot-bestÀtigte Angreifer 72,928 ErgÀnzung
🍯 honigtopf_ips.txt Honigtopf Community Honeypot (API) 15,291 ErgÀnzung
πŸ€– bot_detector_blacklist_ipv4.txt Bot- & Scanner-IPs 17,949 Web-Schutz
πŸ”— reputation_blacklist.txt Reputation Top-IPs (API, Score β‰₯50) 9,967 ErgΓ€nzung
🌐 asn_blocklist_firewall.txt Hochrisiko-ASNs Β· Score β‰₯ 50 19 ASN-Blocking

Note

combined_threat_blacklist_ipv4.txt: Wenn die Datei über 90 MB wÀchst, werden zusÀtzlich Parts combined_threat_blacklist_ipv4_part1.txt, _part2.txt (etc.) mit je ca. 40 MB erzeugt. Die Hauptdatei bleibt bestehen, solange sie unter 100 MB ist (GitHub-Limit). Firewall-Konsumenten, die am GitHub-Limit angestoßen werden, sollten stattdessen die Parts als separate URLs importieren.

🌍 Geo-Listen
countries/              β†’  IPv4-Ranges pro Land, nach Kontinent sortiert
continents/             β†’  Zusammengefasste Ranges pro Kontinent
all_countries_ipv4.txt  β†’  Alle LΓ€nder in einer Datei

🎯 Wie funktioniert die Bewertung

Jede IP bekommt einen Confidence-Score (0–100) aus vier Dimensionen:

Score = Quellen-QualitΓ€t (40) + AktualitΓ€t (30) + Persistenz (20) + Bekannt seit (10)
Dimension Gewicht Logik
πŸ… Quellen-QualitΓ€t 40 HQ-Feed = 40 Β· 5+ Feeds heute = 35 Β· 3+ heute = 28 Β· 2+ heute = 20 Β· 5+ gesamt = 15 Β· 3+ gesamt = 10 Β· 2+ gesamt = 5
⏱️ AktualitΓ€t 30 Heute = 30 Β· ≀ 3 Tage = 25 Β· ≀ 7 Tage = 20 Β· ≀ 14 Tage = 12 Β· ≀ 30 Tage = 6
πŸ” Persistenz 20 14+ Tage = 20 Β· 7 Tage = 15 Β· 3 Tage = 10 Β· 2 Tage = 6 Β· 1 Tag = 2
πŸ“† Bekannt seit 10 90+ Tage = 10 Β· 30+ Tage = 6 Β· 14+ Tage = 3

Important

Nur HQ-Feeds (Feodo, AbuseIPDB, Spamhaus, DataPlane, FireHOL u. a.) bestimmen die Lebenszeit einer IP. Statische Mega-Listen erhΓΆhen den Score, kΓΆnnen eine IP aber nicht am Leben halten. Nach 180 Tagen ohne HQ-BestΓ€tigung wird eine IP automatisch entfernt. Watchlist-IPs ohne HQ-BestΓ€tigung laufen bereits nach 30 Tagen ab.

Score-Schwellen

Score Liste Verwendung
πŸ”΄ β‰₯ 65 active_blacklist Firewall Β· direktes Blocking
🟠 β‰₯ 40 confidence40 Erweiterte Regeln
🟑 25–39 watchlist Nur Monitoring
βšͺ < 25 combined Audit / SIEM

πŸ—οΈ Architektur

~120 Quellen Β· dynamisch (Remote + Lokal + Auto-Discovered)
        β”‚
        β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚         Update Combined Blacklist           β”‚  ← Haupt-Engine Β· 8Γ— tΓ€glich
β”‚                                             β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  seen_db    β”‚  β”‚ False-Positive-Set   β”‚  β”‚
β”‚  β”‚  (Cache)    β”‚  β”‚ (Whitelist-Filter)   β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚         β”‚                                   β”‚
β”‚   Score-Berechnung Β· HQ/Non-HQ Trennung     β”‚
β”‚   IP-Lebenszeit: 180T (HQ) / 30T (Watchlist)β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
           β”‚
     β”Œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
     β–Ό     β–Ό                 β–Ό
  active  combined      confidence40
  β‰₯65     180T          β‰₯40 / watchlist
    β”‚       β”‚                β”‚
    β–Ό       β–Ό                β–Ό
 OPNsense  Audit/SIEM    Analyse

Sub-Workflows (vor Combined):
  CVE Mapper ──────┐
  Honeypot Monitor β”œβ”€β”€β†’ Lokale .txt-Dateien ──→ Combined liest ein
  Honigtopf        β”‚
  Bot-Detector β”€β”€β”€β”€β”˜

Enrichment (nach Combined):
  Geo-Tagger ──────→ blacklist_geo_enriched.json
  ASN Scorer ──────→ asn_reputation_db.json
  Score Decay ─────→ Alterungs-Report (read-only)

βš™οΈ Workflows

πŸ”§ Kern-Pipeline
Workflow Zeitplan Aufgabe
Update Combined Blacklist 8Γ— tΓ€glich (alle 3h) Feeds laden, seen_db aktualisieren, combined + active Blacklists schreiben
Confidence Blacklist 8Γ— tΓ€glich (+45 min) confidence40 + watchlist aus seen_db berechnen
False Positive Checker 3Γ— tΓ€glich Whitelist-CIDRs prΓΌfen β†’ false_positives_set.json
NETSHIELD Report Generator alle 30 Minuten NETSHIELD_REPORT.md + README-Statistiken aktualisieren
πŸ“‘ Datenquellen (Sub-Workflows)
Workflow Zeitplan Aufgabe
CVE-to-IP Mapper tΓ€glich 04:00 C2/Exploit-IPs β†’ cve_exploit_ips.txt
Honeypot Monitor tΓ€glich 23:00 Honeypot-Feeds β†’ honeypot_ips.txt
Honigtopf tΓ€glich 22:15 Honigtopf API β†’ honigtopf_ips.txt
Bot-Detector Blacklist tΓ€glich 22:45 Bot-IPs β†’ bot_detector_blacklist_ipv4.txt
Auto Feed Discovery wΓΆchentlich So 04:30 GitHub nach neuen Feeds durchsuchen
πŸ” Enrichment & Monitoring
Workflow Zeitplan Aufgabe
Geo-Tagger wΓΆchentlich So 07:45 Blacklist-IPs geo-anreichern via ScaniteX
ASN Reputation Scorer tΓ€glich 02:00 ASN-Scoring β†’ asn_reputation_db.json
Score Decay Monitor wΓΆchentlich So 07:00 Alterungs-Report (read-only)
Feed Health Monitor tΓ€glich 01:00 Feed-URLs auf Erreichbarkeit prΓΌfen
Workflow Health Checker 4Γ— tΓ€glich Python-Code + Production Health Checks (seen_db, Output-Sanity, Drift, Feed-AusfΓ€lle)
Update All Countries IPv4 Mo + Mi 01:30 LΓ€nder/Kontinente IPv4-Ranges synchronisieren
🀝 Community
Workflow Trigger Aufgabe
Community IP Report Issue mit Label community-report Community-gemeldete IPs validieren und eintragen

πŸ• Datenfluss & Timing

22:15  Honigtopf ─────────────────────────┐
22:45  Bot-Detector Blacklist ─────────────
23:00  Honeypot Monitor ───────────────────
00:00  Update Combined Blacklist ─────────┼──→ seen_db Cache
00:45  Confidence Blacklist β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    (8Γ— tΓ€glich wiederholt)
01:00  Feed Health Monitor
01:15  Workflow Health Checker ←──────────── (4Γ— tΓ€glich: 01:15, 07:15, 13:15, 19:15)
01:30  Update All Countries (Mo+Mi)
02:00  ASN Reputation Scorer
04:00  CVE-to-IP Mapper
04:30  Auto Feed Discovery (So)
05:00  False Positive Checker
07:00  Score Decay Monitor (So)
07:45  Geo-Tagger (So)

🀝 Community Reports

VerdΓ€chtige IPs kΓΆnnen ΓΌber das Issue-System gemeldet werden:

  1. Issue mit Label community-report erstellen
  2. System validiert die IP automatisch (nur ΓΆffentliche IPv4)
  3. IP landet als Watchlist-Eintrag in der seen_db
  4. Bei 3 unabhΓ€ngigen Meldungen β†’ Promotion zur aktiven Blacklist
  5. Issue wird automatisch geschlossen

Tip

Limit: 5 Reports pro User pro Tag.


πŸ“ˆ Reports & Monitoring

Datei Inhalt
πŸ“Š NETSHIELD_REPORT.md GesamtΓΌbersicht + Feed Health (alle 30 min)
πŸ’š feed_health_report.md Status aller Feed-URLs
βš™οΈ workflow_health_report.md Workflow-Analyse (Python-Syntax, Cron-Timing, Guards)
πŸ”€ combined_threat_blacklist_report.md Feed-Statistik pro Lauf
🌍 geo_tagger_report.md Geo-Verteilung der Blacklist-IPs
🏒 asn_reputation_report.md ASN-Scoring mit Abuse-Dichte
πŸ“‰ score_decay_report.md Alterungs-Analyse der seen_db
πŸ”Ž auto_feed_discovery_report.md Neu entdeckte Feeds + Bewertung

πŸ“‘ Feed-Quellen

NETSHIELD bezieht Daten aus folgenden Kategorien:

Kategorie Beispiele HQ
Abuse-Tracker Feodo, ThreatFox, URLhaus (abuse.ch) βœ…
Blocklist-Aggregatoren FireHOL Level 1–4, blocklist.de, DShield βœ…
Honeypot-Netzwerke DataPlane, Turris Sentinel, Honigtopf (API) βœ…
Reputation-Feeds AbuseIPDB (API + Mirrors), ipsum, CINSscore βœ…
C2/Botnet-Tracker C2-Tracker, MISP C2 Intel Feeds βœ…
Threat Intelligence Spamhaus DROP, Emerging Threats, Threatview βœ…
Community-Feeds GitHub-Repos (auto-discovered), Bot-Detector ❌
Brute-Force-Listen CrowdSec, danger.rulez.sk, blocklist.de/ssh βœ…

Important

HQ-Feeds (rund die HΓ€lfte aller Remote-Quellen) bestimmen die Lebenszeit einer IP. Non-HQ-Feeds erhΓΆhen den Confidence-Score, kΓΆnnen IPs aber nicht am Leben halten.


πŸ“ Dateistruktur

Repository-Layout anzeigen
NETSHIELD/
β”œβ”€β”€ .github/workflows/                   # GitHub Actions Workflows
β”œβ”€β”€ continents/                          # IPv4-Ranges pro Kontinent
β”œβ”€β”€ countries/                           # IPv4-Ranges pro Land
β”‚   β”œβ”€β”€ africa/ Β· asia/ Β· europe/
β”‚   β”œβ”€β”€ north_america/ Β· oceania/ Β· south_america/
β”‚
β”œβ”€β”€ active_blacklist_ipv4.txt            # β†’ Firewall (Score β‰₯65, 30 Tage)
β”œβ”€β”€ blacklist_confidence40_ipv4.txt      # β†’ Erweiterte Regeln (Score β‰₯40)
β”œβ”€β”€ combined_threat_blacklist_ipv4.txt   # β†’ Audit / SIEM (180 Tage)
β”œβ”€β”€ watchlist_confidence25to39_ipv4.txt  # β†’ Monitoring (Score 25–39)
β”‚
β”œβ”€β”€ cve_exploit_ips.txt                  # CVE/C2-IPs (tΓ€glich)
β”œβ”€β”€ honeypot_ips.txt                     # Honeypot-Feeds (tΓ€glich)
β”œβ”€β”€ honigtopf_ips.txt                    # Honigtopf API (tΓ€glich)
β”œβ”€β”€ bot_detector_blacklist_ipv4.txt      # Bot-Detector (tΓ€glich)
β”œβ”€β”€ reputation_blacklist.txt          # Reputation API (Round-Robin)
β”œβ”€β”€ asn_blocklist_firewall.txt           # ASN-Blocking (Score β‰₯50)
β”‚
β”œβ”€β”€ asn_reputation_db.json               # ASN-Scoring-Daten
β”œβ”€β”€ blacklist_geo_enriched.json          # Geo-Anreicherung
β”œβ”€β”€ auto_discovered_feeds.json           # Auto-entdeckte Feeds
β”œβ”€β”€ false_positives_set.json             # FP-Whitelist
β”œβ”€β”€ feed_health_status.json              # Feed-Status
β”œβ”€β”€ seen_db_meta.json                    # seen_db Metadaten (DB im Cache)
β”‚
β”œβ”€β”€ NETSHIELD_REPORT.md                  # Haupt-Dashboard
└── README.md

πŸ”’ Schutzmechanismen

Mechanismus Beschreibung
πŸ›‘ Leerungsschutz Jeder Workflow prΓΌft MIN_ENTRIES vor dem Schreiben β€” bei zu wenigen Ergebnissen bleibt die alte Datei erhalten
βšͺ False-Positive-Filter Umfangreiche Whitelist (CDN, DNS, Mail, Cloud-Provider) verhindert Blocking legitimer Infrastruktur
πŸ… HQ/Non-HQ-Trennung Nur verifizierte HQ-Feeds verlΓ€ngern die Lebenszeit einer IP β€” statische Listen kΓΆnnen IPs nicht am Leben halten
πŸ” Push-Retry 5 Versuche mit git rebase bei gleichzeitigen Commits
πŸ” Concurrency-Lock Jeder Workflow lΓ€uft max. 1Γ— gleichzeitig
πŸ“¦ Cache-Isolation Verschiedene Workflows nutzen eigene Cache-Prefixe (v2, fp, afd, community)

Automatisch aktualisiert Β· NETSHIELD_REPORT.md

⬆ Nach oben

About

Automated IPv4 threat intelligence: combined blacklist from 100+ feeds, confidence scoring, ASN reputation, geo-tagged per country. Updated every 3h.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages