Skip to content

juergen2025sys/NETSHIELD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,413 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ NETSHIELD

Automatisiertes IP-Threat-Intelligence-System mit dynamischer Blacklist-Verwaltung

NETSHIELD aggregiert, bewertet und bereinigt täglich IP-Bedrohungsdaten aus über 130 öffentlichen Feeds. Das System unterscheidet zwischen aktiven Bedrohungen und veralteten statischen Listen – und stellt daraus qualitativ hochwertige Blocklisten für Firewalls (OPNsense, pfSense, iptables) bereit.


📋 Inhalt


Architektur

HQ-Feeds Feodo · Talos · AbuseIPDB · Spamhaus Non-HQ-Feeds romainmarcoux · ipsum · littlejake

setzt last_seen erhöht feed_count

Update Combined Blacklist 8× täglich · seen_db · IP-Lebenszeit 180 Tage active_blacklist 30T + Score ≥ 50 → OPNsense / Firewall combined_blacklist 180 Tage · alle IPs → Audit / SIEM confidence40 Score ≥ 50 · watchlist → Analyse

IP ohne HQ-Bestätigung → altert aus nach 180 Tagen · kehrt zurück wenn wieder aktiv

Kernprinzip: Nur HQ-Feeds (Feodo, Talos, AbuseIPDB, Spamhaus etc.) bestimmen die Lebenszeit einer IP. Statische Mega-Listen erhöhen den Confidence-Score, können eine IP aber nicht am Leben halten. Das System bereinigt automatisch was die Feeds selbst nicht können.


Blocklisten

Datei Beschreibung Einträge Update Empfohlen für
active_blacklist_ipv4.txt Aktive Bedrohungen (30T + Conf≥50) 2,589,483 8x täglich OPNsense / Firewall
combined_threat_blacklist_ipv4.txt Alle IPs (180 Tage) 3,880,095 8x täglich Audit / SIEM
blacklist_confidence40_ipv4.txt Hohe Konfidenz (Score ≥50) 2,331,037 8x täglich Strenge Umgebungen
watchlist_confidence20to39_ipv4.txt Watchlist (Score 25–49) 13,568 8x täglich Monitoring
cve_exploit_ips.txt CVE-Exploit & C2-Server 230,234 täglich 04:00 IDS/IPS
honeypot_ips.txt Honeypot-bestätigte IPs 11,235 täglich 23:00 Ergänzung
honeydb_ips.txt HoneyDB Community Honeypot (API) 12,656 täglich 22:15 Ergänzung
bot_detector_blacklist_ipv4.txt Bot-Detector 17,950 täglich 23:45 Web-Schutz
asn_blocklist_firewall.txt Hochrisiko-ASNs (Score≥50) 19 täglich 02:00 ASN-Blocking

Geo-Listen

Verzeichnis Beschreibung
continents/ IPv4-Ranges pro Kontinent (africa, asia, europe, north_america, oceania, south_america)
countries/ IPv4-Ranges pro Land, organisiert nach Kontinent
all_countries_ipv4.txt Alle Länder zusammengeführt

Für OPNsense / Firewall

Alias URL (aktive Blockliste):

https://raw.githubusercontent.com/juergen2025sys/NETSHIELD/main/active_blacklist_ipv4.txt

Hohe Konfidenz:

https://raw.githubusercontent.com/juergen2025sys/NETSHIELD/main/blacklist_confidence40_ipv4.txt

Wie funktioniert die Bewertung

Jede IP erhält einen Confidence-Score von 0–100 aus vier Dimensionen:

Score = A (Quellen-Qualität) + B (Aktualität) + C (Persistenz) + D (Bekannt seit)
Dimension Max Beschreibung
A – Quellen-Qualität 40 HQ-Feed = 40 Pkt, mehrere Feeds = 20–35 Pkt
B – Aktualität 30 Letzte HQ-Bestätigung: heute = 30, vor 7T = 20, vor 30T = 6
C – Persistenz 20 Über mehrere Tage bestätigt: 14+ Tage = 20 Pkt
D – Bekannt seit 10 Länger im System = stabiler Score

Schwellwerte:

  • Score ≥ 50 → active_blacklist + blacklist_confidence40
  • Score 25–49 → watchlist
  • Score < 25 → nur in combined (Audit)

HQ-Feeds (bestimmen Lebenszeit)

Feodo C2, Talos Intelligence, AbuseIPDB (API + Score100), Spamhaus DROP/EDROP, Emerging Threats, FireHOL Level 1/2/3, blocklist.de, CINS Score, C2-Tracker, Cobalt Strike Tracker, ThreatFox IOC, URLhaus, Binary Defense, Turris Greylist, GreenSnow, ThreatView High Confidence, DShield u.v.m.


Workflows

Workflow Zeitplan Aufgabe
Update Combined Blacklist 8x täglich (alle 3h) Haupt-Engine: Feeds laden, seen_db aktualisieren, Stufe 1+2 schreiben
Confidence Blacklist 8x täglich (15min nach Combined) confidence40 + watchlist aus seen_db berechnen
False Positive Checker 3x täglich (05:00/13:00/20:00) Whitelist-CIDRs prüfen, FP aus combined entfernen
Honeypot Monitor täglich 23:00 Honeypot-Feeds aggregieren → honeypot_ips.txt
HoneyDB Monitor täglich 22:15 HoneyDB API abfragen → honeydb_ips.txt
Bot-Detector Blacklist täglich 22:45 bot_detector_blacklist_ipv4.txt aktualisieren
CVE-to-IP Mapper täglich 04:00 C2/Exploit-IPs → cve_exploit_ips.txt
Duplicate Cleaner täglich 05:30 Duplikate in Sub-Listen bereinigen
Update All Countries IPv4 Mo + Mi 01:30 Länder/Kontinente/all_countries synchron erzeugen
Auto Feed Discovery wöchentlich So 04:30 GitHub nach neuen IP-Feeds durchsuchen + bewerten
Geo-Tagger wöchentlich So 06:45 Blacklist-IPs mit Länder-Geo-Daten anreichern
ASN Reputation Scorer täglich 02:00 ASN-Reputationsscoring → asn_reputation_db.json
Score Decay Monitor wöchentlich So 07:00 Alterungs-Report (read-only, löscht nichts)
Feed Health Monitor täglich 01:00 Alle Feed-URLs auf Erreichbarkeit prüfen
Workflow Health Checker täglich 01:15 YAML-Workflows auf Fehler/Warnungen analysieren
NETSHIELD Report Generator alle 30 Minuten NETSHIELD_REPORT.md + README IP-Zahlen aktualisieren
Community IP Report bei Issue-Erstellung Community-gemeldete IPs verarbeiten und in seen_db eintragen

Community Reports

Verdächtige IPs können über das Issue-System gemeldet werden. Das System:

  1. Validiert die IP (nur öffentliche IPv4, keine DNS-Whitelist)
  2. Trägt sie mit hq=False in seen_db ein (Watchlist)
  3. Schließt das Issue automatisch mit Feedback
  4. Promoted die IP zur aktiven Blacklist sobald 3 unabhängige Meldungen vorliegen

Limit: 5 Reports pro User pro Tag.

Verwende das Label community-report beim Erstellen des Issues.


Dateistruktur

NETSHIELD/
├── .github/workflows/          # 17 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           # → OPNsense
├── combined_threat_blacklist_ipv4.txt  # → Audit
├── blacklist_confidence40_ipv4.txt     # → Hohe Konfidenz
├── watchlist_confidence20to39_ipv4.txt # → Monitoring
├── cve_exploit_ips.txt
├── honeypot_ips.txt
├── bot_detector_blacklist_ipv4.txt
├── all_countries_ipv4.txt
├── asn_blocklist_firewall.txt
├── asn_reputation_db.json
├── blacklist_geo_enriched.json
├── auto_discovered_feeds.json
├── seen_db_meta.json
├── NETSHIELD_REPORT.md                 # Automatisch generiert
└── README.md

Reports & Monitoring

Datei Beschreibung
NETSHIELD_REPORT.md Übersicht aller Listen + Feed Health (alle 30min)
feed_health_report.md Status aller Feed-URLs
workflow_health_report.md Workflow-Analyse (Fehler/Warnungen)
geo_tagger_report.md Geo-Verteilung der Blacklist-IPs
asn_reputation_report.md ASN-Scoring-Report
score_decay_report.md Alterungs-Analyse der seen_db
auto_feed_discovery_report.md Neu entdeckte Feeds

Automatisch aktualisiert durch NETSHIELD · NETSHIELD_REPORT.md

About

Complete IPv4 blocklist for all 249 countries worldwide - 254,556 CIDR ranges

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors