Upload files to "cybersecurity/Network Reputation Service"
This commit is contained in:
295
cybersecurity/Network Reputation Service/readme-de.md
Normal file
295
cybersecurity/Network Reputation Service/readme-de.md
Normal file
@@ -0,0 +1,295 @@
|
||||
# 🛡️ Firewall-Audit - Network Reputation Service
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
Ein professionelles PowerShell-Audit-Tool zur Bewertung der Filtereffektivität Ihrer Firewall durch das Testen kategorisierter URLs basierend auf ihrer Netzwerk-Reputation.
|
||||
|
||||
## 📋 Inhaltsverzeichnis
|
||||
|
||||
- [Überblick](#-überblick)
|
||||
- [Funktionen](#-funktionen)
|
||||
- [Voraussetzungen](#-voraussetzungen)
|
||||
- [Installation](#-installation)
|
||||
- [Nutzung](#-nutzung)
|
||||
- [Konfiguration](#-konfiguration)
|
||||
- [Generierter Bericht](#-generierter-bericht)
|
||||
- [Datenstruktur](#-datenstruktur)
|
||||
- [Bewertungssystem](#-bewertungssystem)
|
||||
- [Fehlerbehebung](#-fehlerbehebung)
|
||||
- [Mitwirken](#-mitwirken)
|
||||
- [Lizenz](#-lizenz)
|
||||
|
||||
## 🎯 Überblick
|
||||
|
||||
Dieses PowerShell-Skript testet die Effektivität Ihrer Firewall, indem es überprüft, dass schädliche URLs korrekt blockiert werden, während legitime Websites zugänglich bleiben. Es generiert einen professionellen HTML-Bericht mit Bewertung, Statistiken und Empfehlungen.
|
||||
|
||||
**Autor:** Hubert Cornet
|
||||
**Version:** 1.3
|
||||
**Datum:** 3. September 2025
|
||||
|
||||
## ✨ Funktionen
|
||||
|
||||
- 🔍 **Automatisiertes Testen** von Hunderten kategorisierter URLs
|
||||
- 📊 **Intelligente Bewertung** mit Noten von A+ bis F
|
||||
- 📱 **Responsive HTML-Berichte** mit interaktiver Benutzeroberfläche
|
||||
- 🔧 **Proxy-Unterstützung** mit Authentifizierung
|
||||
- ⚡ **Echtzeit-Fortschrittsbalken**
|
||||
- 🎨 **Farbkodierte Visualisierungen** der Ergebnisse
|
||||
- 💾 **JSON-Export** der Rohdaten
|
||||
- 🌐 **Multi-Methoden-Erkennung** von Blockierungen
|
||||
|
||||
## 📋 Voraussetzungen
|
||||
|
||||
### Systemanforderungen
|
||||
- Windows 10/11 oder Windows Server 2016+
|
||||
- PowerShell 5.1 oder höher
|
||||
- Aktive Internetverbindung
|
||||
- Schreibrechte im Skript-Verzeichnis
|
||||
|
||||
### PowerShell-Module (werden automatisch installiert)
|
||||
- `PSWriteHTML`
|
||||
- `PSWriteColor`
|
||||
|
||||
### Erforderliche Dateien
|
||||
- `file-nrs.json` - Datenbank kategorisierter URLs
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
1. **Laden Sie das Skript** in einen dedizierten Ordner herunter
|
||||
2. **Laden Sie die JSON-Datei** von hier herunter:
|
||||
```
|
||||
https://gitea.tips-of-mine.com/Tips-Of-Mine/Powershell/src/branch/main/cybersecurity/Network%20Reputation%20Service/file-nrs.json
|
||||
```
|
||||
3. **Platzieren Sie beide Dateien** im selben Verzeichnis
|
||||
|
||||
## 💻 Nutzung
|
||||
|
||||
### Grundlegende Nutzung
|
||||
```powershell
|
||||
.\AuditFirewall.ps1
|
||||
```
|
||||
|
||||
### Mit Proxy
|
||||
```powershell
|
||||
.\AuditFirewall.ps1 -ProxyUrl "http://proxy.unternehmen.com:8080"
|
||||
```
|
||||
|
||||
### Mit Proxy-Authentifizierung
|
||||
```powershell
|
||||
.\AuditFirewall.ps1 -ProxyUrl "http://proxy.unternehmen.com:8080" -ProxyUseAuthentication
|
||||
```
|
||||
|
||||
### Mit benutzerdefiniertem Timeout
|
||||
```powershell
|
||||
.\AuditFirewall.ps1 -TimeoutSeconds 15
|
||||
```
|
||||
|
||||
## ⚙️ Konfiguration
|
||||
|
||||
### Verfügbare Parameter
|
||||
|
||||
| Parameter | Typ | Beschreibung | Standard |
|
||||
|-----------|-----|--------------|----------|
|
||||
| `ProxyUrl` | String | Netzwerk-Proxy-URL | Keine |
|
||||
| `ProxyUseAuthentication` | Switch | Proxy-Authentifizierung aktivieren | False |
|
||||
| `TimeoutSeconds` | Integer | Timeout pro URL | 10 |
|
||||
|
||||
### Anpassung der Block-Schlüsselwörter
|
||||
Bearbeiten Sie die Variable `$BlockKeywords` im Skript:
|
||||
```powershell
|
||||
$BlockKeywords = @("Seite blockiert", "Zugriff verweigert", "Web-Filterung", "Access Denied", "Site Blocked")
|
||||
```
|
||||
|
||||
## 📊 Generierter Bericht
|
||||
|
||||
Das Skript generiert automatisch:
|
||||
|
||||
### 📁 Ausgabe-Dateistruktur
|
||||
```
|
||||
Rapports/
|
||||
└── [Datum und Uhrzeit]/
|
||||
├── Audit_Firewall_Report.html # Hauptbericht
|
||||
└── Results.json # Rohdaten
|
||||
```
|
||||
|
||||
### 🎨 HTML-Berichtsinhalt
|
||||
- **Zusammenfassung**: Gesamtpunktzahl und wichtige Statistiken
|
||||
- **Punktetabelle**: Leistung nach Kategorie
|
||||
- **Interaktive Details**: Einzelne Tests pro URL
|
||||
- **Bewertungsskala**: Erklärung des Bewertungssystems
|
||||
|
||||
## 📁 Datenstruktur
|
||||
|
||||
### Format von `file-nrs.json`
|
||||
```json
|
||||
{
|
||||
"categorie": [
|
||||
{
|
||||
"id": "malware",
|
||||
"nom": "Malware",
|
||||
"description": "Websites, die schädliche Software verbreiten",
|
||||
"urls": [
|
||||
{
|
||||
"url": "http://beispiel-malware.com",
|
||||
"reputation": "malicious",
|
||||
"expected_action": "block"
|
||||
},
|
||||
{
|
||||
"url": "https://legitime-website.com",
|
||||
"reputation": "safe",
|
||||
"expected_action": "allow"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Erwartete Aktionen
|
||||
- `"block"`: URL sollte von der Firewall blockiert werden
|
||||
- `"allow"`: URL sollte zugänglich bleiben
|
||||
|
||||
## 📈 Bewertungssystem
|
||||
|
||||
### Notenskala
|
||||
|
||||
| Note | Punktzahl | Interpretation |
|
||||
|------|-----------|---------------|
|
||||
| **A+** | 95-100% | 🟢 Ausgezeichnet / Perfekt |
|
||||
| **A** | 90-95% | 🟢 Sehr gutes Filtering-Niveau |
|
||||
| **B+** | 85-90% | 🟡 Sehr gut |
|
||||
| **B** | 80-85% | 🟡 Gut, einige Anpassungen nötig |
|
||||
| **C+** | 75-80% | 🟠 Ziemlich gut |
|
||||
| **C** | 70-75% | 🟠 Durchschnittlich, erhebliche Lücken |
|
||||
| **D+** | 65-70% | 🔴 Akzeptabel |
|
||||
| **D** | 60-65% | 🔴 Schwach, ineffektives Filtering |
|
||||
| **E+** | 55-60% | 🔴 Sehr schwach |
|
||||
| **E** | 50-55% | 🔴 Unzureichend |
|
||||
| **F+** | 45-50% | ⚫ Kritisch |
|
||||
| **F** | 0-45% | ⚫ Sofortige Maßnahmen erforderlich |
|
||||
|
||||
### Berechnungsmethode
|
||||
```
|
||||
Punktzahl = (Korrekt gefilterte URLs / Gesamtzahl getesteter URLs) × 100
|
||||
```
|
||||
|
||||
## 🔍 Erkennungsmethoden
|
||||
|
||||
### Wie das Skript Blockierungen erkennt:
|
||||
1. **Inhaltsanalyse**: Suche nach Schlüsselwörtern von Blockierungsseiten
|
||||
2. **Netzwerk-Timeouts**: Anfragen, die ablaufen (wahrscheinliche Firewall-Blockierung)
|
||||
3. **Verbindungsfehler**: Unfähigkeit, den Server zu erreichen
|
||||
4. **HTTP-Statuscodes**: Analyse der Serverantworten
|
||||
|
||||
### Simulierte HTTP-Header:
|
||||
Das Skript simuliert einen modernen Browser, um Erkennung zu vermeiden:
|
||||
```
|
||||
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36...
|
||||
Accept: text/html,application/xhtml+xml,application/xml...
|
||||
Accept-Language: de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7
|
||||
```
|
||||
|
||||
## 🔧 Fehlerbehebung
|
||||
|
||||
### Häufige Probleme
|
||||
|
||||
#### ❌ "Datei 'file-nrs.json' existiert nicht!"
|
||||
**Lösung:** Laden Sie die JSON-Datei vom bereitgestellten Link herunter und platzieren Sie sie im selben Ordner wie das Skript.
|
||||
|
||||
#### ❌ "Modul X kann nicht installiert werden"
|
||||
**Lösung:** Führen Sie PowerShell als Administrator aus oder verwenden Sie:
|
||||
```powershell
|
||||
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
|
||||
```
|
||||
|
||||
#### ❌ Häufige Timeouts
|
||||
**Lösungen:**
|
||||
- Erhöhen Sie den `-TimeoutSeconds` Wert
|
||||
- Überprüfen Sie Ihre Netzwerkverbindung
|
||||
- Konfigurieren Sie die Proxy-Einstellungen korrekt
|
||||
|
||||
#### ❌ Falsch-Positive/Negative
|
||||
**Lösungen:**
|
||||
- Aktualisieren Sie die Block-Schlüsselwörter
|
||||
- Überprüfen Sie die Firewall-Konfiguration
|
||||
- Passen Sie die JSON-Datei an Ihre Umgebung an
|
||||
|
||||
## 🏢 Empfohlene Anwendungsfälle
|
||||
|
||||
### 📅 Regelmäßige Nutzung
|
||||
- **Monatliches Audit** der Firewall-Effektivität
|
||||
- **Validierung** nach Regel-Updates
|
||||
- **Benchmarking** zwischen Sicherheitslösungen
|
||||
|
||||
### 👥 Management-Berichterstattung
|
||||
- **Dashboards** für IT-Management
|
||||
- **Messbare Sicherheits-KPIs**
|
||||
- **Investitionsbegründung** für Sicherheit
|
||||
|
||||
### 🔧 Konfigurationstests
|
||||
- **Validierung** nach Netzwerkänderungen
|
||||
- **Regressionstests** der Firewall-Regeln
|
||||
- **Sicherheits-Compliance-Audit**
|
||||
|
||||
## ⚠️ Technische Einschränkungen
|
||||
|
||||
### Beachtenswertes:
|
||||
- **Sequenzielle Tests**: Keine Parallelisierung (kann langsam sein)
|
||||
- **Grundlegende Erkennung**: Basiert auf vordefinierten Schlüsselwörtern
|
||||
- **Falsch-Positive**: Legitime Websites zeitweise unzugänglich
|
||||
- **Sicherheit**: Skript kontaktiert tatsächlich getestete URLs
|
||||
|
||||
### Best Practices:
|
||||
1. 🕐 Führen Sie während schwacher Verkehrszeiten aus
|
||||
2. 📊 Analysieren Sie Ergebnisse im Kontext
|
||||
3. 🔄 Halten Sie JSON-Datei aktuell
|
||||
4. 📈 Verfolgen Sie die Entwicklung der Punktzahlen über Zeit
|
||||
|
||||
## 🤝 Mitwirken
|
||||
|
||||
### Um beizutragen:
|
||||
1. Forken Sie das Projekt
|
||||
2. Erstellen Sie Ihren Feature-Branch
|
||||
3. Committen Sie Ihre Änderungen
|
||||
4. Pushen Sie zum Branch
|
||||
5. Öffnen Sie eine Pull Request
|
||||
|
||||
### Verbesserungsideen:
|
||||
- [ ] Test-Parallelisierung für bessere Performance
|
||||
- [ ] Ausgeklügeltere Blockseiten-Erkennung
|
||||
- [ ] Externe Reputationsdatenbank-Unterstützung
|
||||
- [ ] Grafische Benutzeroberfläche für Konfiguration
|
||||
- [ ] Threat Intelligence API-Integration
|
||||
|
||||
## 🎯 Roadmap
|
||||
|
||||
### Version 1.4 (geplant)
|
||||
- [ ] Parallele Tests für verbesserte Performance
|
||||
- [ ] Benutzerdefinierte SSL-Zertifikat-Unterstützung
|
||||
- [ ] E-Mail-Benachrichtigungen für Ergebnisse
|
||||
|
||||
### Version 2.0 (zukünftig)
|
||||
- [ ] Web-Interface für Konfiguration
|
||||
- [ ] SIEM-Lösungsintegration
|
||||
- [ ] REST API für Automatisierung
|
||||
|
||||
## 📞 Support
|
||||
|
||||
Für Hilfe oder um Probleme zu melden:
|
||||
- 📧 Kontaktieren Sie den Autor: Hubert Cornet
|
||||
- 🐛 Öffnen Sie ein Issue im Projekt-Repository
|
||||
- 📚 Konsultieren Sie die technische Dokumentation
|
||||
|
||||
## 📄 Lizenz
|
||||
|
||||
Dieses Projekt steht unter MIT-Lizenz. Siehe die `LICENSE`-Datei für weitere Details.
|
||||
|
||||
---
|
||||
|
||||
**⭐ Wenn Ihnen dieses Skript nützlich war, geben Sie ihm gerne einen Stern!**
|
||||
|
||||
---
|
||||
|
||||
*Zuletzt aktualisiert: 3. September 2025*
|
Reference in New Issue
Block a user