Update cybersecurity/Network Reputation Service/ReadMe.md

This commit is contained in:
2025-09-04 13:25:18 +02:00
parent 94f89dbf63
commit dbce1cb2a3

View File

@@ -1,295 +1,216 @@
# 🛡️ Audit Firewall - Network Reputation Service
## Documentation Multilingue / Multilingual Documentation
![Version](https://img.shields.io/badge/version-1.3-blue.svg)
![PowerShell](https://img.shields.io/badge/PowerShell-5.1+-blue.svg)
![License](https://img.shields.io/badge/license-MIT-green.svg)
![Languages](https://img.shields.io/badge/languages-7-brightgreen.svg)
Un outil d'audit PowerShell professionnel pour évaluer l'efficacité du filtrage de votre firewall en testant des URLs catégorisées selon leur réputation réseau.
---
## 📋 Table des matières
## 🌍 Choisissez votre langue / Choose your language / Wählen Sie Ihre Sprache
- [Aperçu](#-aperçu)
- [Fonctionnalités](#-fonctionnalités)
- [Prérequis](#-prérequis)
- [Installation](#-installation)
- [Utilisation](#-utilisation)
- [Configuration](#-configuration)
- [Rapport généré](#-rapport-généré)
- [Structure des données](#-structure-des-données)
- [Système de scoring](#-système-de-scoring)
- [Dépannage](#-dépannage)
- [Contribution](#-contribution)
- [Licence](#-licence)
| Langue / Language | Fichier / File | Statut / Status |
|-------------------|----------------|-----------------|
| 🇫🇷 **Français** | [README-FR.md](README-FR.md) | ✅ Complet |
| 🇬🇧 **English** | [README-EN.md](README-EN.md) | ✅ Complete |
| 🇩🇪 **Deutsch** | [README-DE.md](README-DE.md) | ✅ Vollständig |
| 🇪🇸 **Español** | [README-ES.md](README-ES.md) | ✅ Completo |
| 🇮🇹 **Italiano** | [README-IT.md](README-IT.md) | ✅ Completo |
| 🇵🇹 **Português** | [README-PT.md](README-PT.md) | ✅ Completo |
| 🇵🇱 **Polski** | [README-PL.md](README-PL.md) | ✅ Kompletny |
## 🎯 Aperçu
---
Ce script PowerShell teste l'efficacité de votre firewall en vérifiant si des URLs malveillantes sont correctement bloquées et si des sites légitimes restent accessibles. Il génère un rapport HTML professionnel avec scoring, statistiques et recommandations.
## 🎯 À propos du projet / About this project
**Auteur :** Hubert Cornet
**Version :** 1.3
**Date :** 03/09/2025
### 🇫🇷 Français
Outil d'audit PowerShell professionnel pour évaluer l'efficacité du filtrage de votre firewall en testant des URLs catégorisées selon leur réputation réseau. Génère un rapport HTML détaillé avec système de notation de A+ à F.
## ✨ Fonctionnalités
### 🇬🇧 English
Professional PowerShell audit tool to evaluate your firewall's filtering effectiveness by testing categorized URLs based on their network reputation. Generates a detailed HTML report with A+ to F grading system.
- 🔍 **Test automatisé** de centaines d'URLs catégorisées
- 📊 **Scoring intelligent** avec notes de A+ à F
- 📱 **Rapport HTML responsive** avec interface interactive
- 🔧 **Support des proxies** avec authentification
-**Barres de progression** en temps réel
- 🎨 **Visualisations colorées** des résultats
- 💾 **Export JSON** des données brutes
- 🌐 **Détection multi-méthodes** des blocages
### 🇩🇪 Deutsch
Professionelles PowerShell-Audit-Tool zur Bewertung der Filtereffektivität Ihrer Firewall durch das Testen kategorisierter URLs basierend auf ihrer Netzwerk-Reputation. Generiert einen detaillierten HTML-Bericht mit Notensystem von A+ bis F.
## 📋 Prérequis
---
### Système requis
- Windows 10/11 ou Windows Server 2016+
- PowerShell 5.1 ou supérieur
- Connexion Internet active
- Droits d'écriture dans le répertoire du script
## ⚡ Démarrage rapide / Quick Start
### Modules PowerShell (installés automatiquement)
- `PSWriteHTML`
- `PSWriteColor`
### Fichiers requis
- `file-nrs.json` - Base de données des URLs catégorisées
## 🚀 Installation
1. **Téléchargez le script** dans un dossier dédié
2. **Téléchargez le fichier JSON** depuis :
```
https://gitea.tips-of-mine.com/Tips-Of-Mine/Powershell/src/branch/main/cybersecurity/Network%20Reputation%20Service/file-nrs.json
```
3. **Placez les deux fichiers** dans le même répertoire
## 💻 Utilisation
### Utilisation basique
```powershell
# Téléchargez le script et le fichier JSON
# Download the script and JSON file
.\AuditFirewall.ps1
# Avec proxy / With proxy
.\AuditFirewall.ps1 -ProxyUrl "http://proxy.company.com:8080"
```
---
## 📊 Fonctionnalités principales / Key Features
| Fonctionnalité | Description |
|----------------|-------------|
| 🔍 **Tests automatisés** | Centaines d'URLs catégorisées testées |
| 📊 **Scoring intelligent** | Système de notation de A+ à F |
| 📱 **Rapport HTML responsive** | Interface interactive moderne |
| 🔧 **Support proxy** | Avec authentification |
| ⚡ **Temps réel** | Barres de progression dynamiques |
| 🎨 **Visualisations** | Graphiques colorés des résultats |
| 💾 **Export JSON** | Données brutes exportables |
| 🌐 **Multi-détection** | Plusieurs méthodes de détection |
---
## 📋 Informations techniques / Technical Information
### Auteur / Author
**Hubert Cornet**
### Version
**1.3** (3 septembre 2025 / September 3, 2025)
### Prérequis / Prerequisites
- Windows 10/11 ou Windows Server 2016+
- PowerShell 5.1+
- Connexion Internet / Internet connection
- Modules PowerShell (installés automatiquement / installed automatically):
- `PSWriteHTML`
- `PSWriteColor`
### Fichiers requis / Required Files
- `AuditFirewall.ps1` - Script principal / Main script
- `file-nrs.json` - Base de données URLs / URLs database
---
## 🚀 Installation rapide / Quick Installation
### 1. Téléchargement / Download
```bash
# Clonez le repository / Clone the repository
git clone [URL_DU_REPO]
# Ou téléchargez directement / Or download directly
wget [URL_SCRIPT] -O AuditFirewall.ps1
wget [URL_JSON] -O file-nrs.json
```
### 2. Exécution / Execution
```powershell
# Navigation vers le dossier / Navigate to folder
cd audit-firewall
# Exécution du script / Run the script
.\AuditFirewall.ps1
```
### Avec proxy
```powershell
.\AuditFirewall.ps1 -ProxyUrl "http://proxy.entreprise.com:8080"
---
## 📊 Exemple de résultats / Sample Results
### Système de notation / Grading System
```
A+ (95-100%) 🟢 Excellent / Perfect
A (90-95%) 🟢 Very Good
B+ (85-90%) 🟡 Good
B (80-85%) 🟡 Good with adjustments
C+ (75-80%) 🟠 Fair
C (70-75%) 🟠 Average
D+ (65-70%) 🔴 Poor
D (60-65%) 🔴 Weak
E+ (55-60%) 🔴 Very Weak
E (50-55%) 🔴 Insufficient
F+ (45-50%) ⚫ Critical
F (0-45%) ⚫ Immediate action required
```
### Avec authentification proxy
```powershell
.\AuditFirewall.ps1 -ProxyUrl "http://proxy.entreprise.com:8080" -ProxyUseAuthentication
```
### Avec timeout personnalisé
```powershell
.\AuditFirewall.ps1 -TimeoutSeconds 15
```
## ⚙️ Configuration
### Paramètres disponibles
| Paramètre | Type | Description | Défaut |
|-----------|------|-------------|---------|
| `ProxyUrl` | String | URL du proxy réseau | Aucun |
| `ProxyUseAuthentication` | Switch | Active l'auth proxy | False |
| `TimeoutSeconds` | Integer | Délai d'attente par URL | 10 |
### Personnalisation des mots-clés de blocage
Modifiez la variable `$BlockKeywords` dans le script :
```powershell
$BlockKeywords = @("site bloqué", "access denied", "filtrage web", "Access Denied", "Site Blocked")
```
## 📊 Rapport généré
Le script génère automatiquement :
### 📁 Structure des fichiers de sortie
### Structure du rapport / Report Structure
```
Rapports/
└── [Date et Heure]/
├── Audit_Firewall_Report.html # Rapport principal
└── Results.json # Données brutes
├── Audit_Firewall_Report.html # Rapport principal / Main report
└── Results.json # Données brutes / Raw data
```
### 🎨 Contenu du rapport HTML
- **Résumé exécutif** : Score global et statistiques clés
- **Tableau des scores** : Performance par catégorie
- **Détails interactifs** : Tests individuels par URL
- **Barème de notation** : Explication du système de scoring
---
## 📁 Structure des données
## 🤝 Contribution / Contributing
### Format du fichier `file-nrs.json`
```json
{
"categorie": [
{
"id": "malware",
"nom": "Malware",
"description": "Sites distribuant des logiciels malveillants",
"urls": [
{
"url": "http://example-malware.com",
"reputation": "malicious",
"expected_action": "block"
},
{
"url": "https://legitimate-site.com",
"reputation": "safe",
"expected_action": "allow"
}
]
}
]
}
```
### Comment contribuer / How to contribute
1. Fork le projet / Fork the project
2. Créez votre branche / Create your branch (`git checkout -b feature/AmazingFeature`)
3. Committez vos changements / Commit your changes (`git commit -m 'Add AmazingFeature'`)
4. Poussez vers la branche / Push to the branch (`git push origin feature/AmazingFeature`)
5. Ouvrez une Pull Request / Open a Pull Request
### Actions attendues
- `"block"` : L'URL doit être bloquée par le firewall
- `"allow"` : L'URL doit rester accessible
### Traductions / Translations
Si vous souhaitez ajouter une traduction dans une nouvelle langue, suivez la structure des fichiers existants et soumettez une Pull Request.
## 📈 Système de scoring
If you'd like to add a translation in a new language, follow the structure of existing files and submit a Pull Request.
### Barème de notation
---
| Note | Score | Interprétation |
|------|--------|---------------|
| **A+** | 95-100% | 🟢 Excellent / Parfait |
| **A** | 90-95% | 🟢 Très bon niveau de filtrage |
| **B+** | 85-90% | 🟡 Très bon |
| **B** | 80-85% | 🟡 Bon, quelques ajustements |
| **C+** | 75-80% | 🟠 Assez bon |
| **C** | 70-75% | 🟠 Moyen, lacunes importantes |
| **D+** | 65-70% | 🔴 Passable |
| **D** | 60-65% | 🔴 Faible, filtrage inefficace |
| **E+** | 55-60% | 🔴 Très faible |
| **E** | 50-55% | 🔴 Insuffisant |
| **F+** | 45-50% | ⚫ Critique |
| **F** | 0-45% | ⚫ Action immédiate requise |
## 📞 Support multilingue / Multilingual Support
### Méthode de calcul
```
Score = (URLs correctement filtrées / Total URLs testées) × 100
```
| Langue | Contact | Statut |
|--------|---------|---------|
| 🇫🇷 Français | [Issues](../../issues) | Support principal |
| 🇬🇧 English | [Issues](../../issues) | Full support |
| 🇩🇪 Deutsch | [Issues](../../issues) | Community support |
| 🇪🇸 Español | [Issues](../../issues) | Community support |
| 🇮🇹 Italiano | [Issues](../../issues) | Community support |
| 🇵🇹 Português | [Issues](../../issues) | Community support |
| 🇵🇱 Polski | [Issues](../../issues) | Community support |
## 🔍 Méthodes de détection
### Comment le script détecte un blocage :
1. **Analyse du contenu** : Recherche de mots-clés de pages de blocage
2. **Timeouts réseau** : Requêtes qui expirent (probable blocage firewall)
3. **Erreurs de connexion** : Impossibilité d'atteindre le serveur
4. **Codes de statut HTTP** : Analyse des réponses serveur
### Headers HTTP simulés :
Le script simule un navigateur moderne pour éviter la détection :
```
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36...
Accept: text/html,application/xhtml+xml,application/xml...
Accept-Language: fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7
```
## 🔧 Dépannage
### Problèmes courants
#### ❌ "Le fichier 'file-nrs.json' n'existe pas!"
**Solution :** Téléchargez le fichier JSON depuis le lien fourni et placez-le dans le même dossier que le script.
#### ❌ "Impossible d'installer le module X"
**Solution :** Exécutez PowerShell en tant qu'administrateur ou utilisez :
```powershell
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
```
#### ❌ Timeouts fréquents
**Solutions :**
- Augmentez la valeur de `-TimeoutSeconds`
- Vérifiez votre connexion réseau
- Configurez correctement les paramètres proxy
#### ❌ Faux positifs/négatifs
**Solutions :**
- Mettez à jour les mots-clés de blocage
- Vérifiez la configuration de votre firewall
- Adaptez le fichier JSON à votre environnement
## 🏢 Cas d'usage recommandés
### 📅 Utilisation périodique
- **Audit mensuel** de l'efficacité du firewall
- **Validation** après mise à jour des règles
- **Benchmarking** entre solutions de sécurité
### 👥 Reporting managérial
- **Tableaux de bord** pour la direction IT
- **KPIs de sécurité** mesurables
- **Justification** des investissements sécurité
### 🔧 Tests de configuration
- **Validation** après changements réseau
- **Tests de régression** des règles firewall
- **Audit de conformité** sécurité
## ⚠️ Limitations techniques
### Points d'attention :
- **Tests séquentiels** : Pas de parallélisation (peut être lent)
- **Détection basique** : Repose sur des mots-clés prédéfinis
- **Faux positifs** : Sites légitimes temporairement inaccessibles
- **Sécurité** : Le script contacte réellement les URLs testées
### Bonnes pratiques :
1. 🕐 Exécuter en heures creuses
2. 📊 Analyser les résultats dans le contexte
3. 🔄 Maintenir à jour le fichier JSON
4. 📈 Suivre l'évolution des scores dans le temps
## 🤝 Contribution
### Pour contribuer :
1. Fork le projet
2. Créez votre branche feature
3. Committez vos changements
4. Poussez vers la branche
5. Ouvrez une Pull Request
### Idées d'améliorations :
- [ ] Parallélisation des tests pour améliorer les performances
- [ ] Détection plus sophistiquée des pages de blocage
- [ ] Support de bases de données de réputations externes
- [ ] Interface graphique pour la configuration
- [ ] Intégration avec des APIs de threat intelligence
---
## 🎯 Roadmap
### Version 1.4 (prévue)
- [ ] Tests parallèles pour améliorer les performances
- [ ] Support des certificats SSL personnalisés
- [ ] Notifications par email des résultats
### Version 1.4 (Planifiée / Planned)
- [ ] 🚀 Tests parallèles / Parallel testing
- [ ] 🔒 Support SSL personnalisé / Custom SSL support
- [ ] 📧 Notifications email / Email notifications
- [ ] 🌐 Plus de langues / More languages
### Version 2.0 (future)
- [ ] Interface web pour la configuration
- [ ] Intégration avec des solutions SIEM
- [ ] API REST pour l'automatisation
## 📞 Support
Pour obtenir de l'aide ou signaler des problèmes :
- 📧 Contactez l'auteur : Hubert Cornet
- 🐛 Ouvrez une issue sur le dépôt du projet
- 📚 Consultez la documentation technique
## 📄 Licence
Ce projet est sous licence MIT. Voir le fichier `LICENSE` pour plus de détails.
### Version 2.0 (Futur / Future)
- [ ] 🖥️ Interface web / Web interface
- [ ] 🔗 Intégration SIEM / SIEM integration
- [ ] 🤖 API REST / REST API
- [ ] 📱 Application mobile / Mobile app
---
**⭐ Si ce script vous a été utile, n'hésitez pas à lui donner une étoile !**
## 📄 Licence / License
Ce projet est sous licence MIT - voir le fichier [LICENSE](LICENSE) pour les détails.
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
---
*Dernière mise à jour : 03 septembre 2025*
## ⭐ Remerciements / Acknowledgments
- **Communauté PowerShell** pour les modules et l'inspiration
- **Contributeurs** de toutes les traductions
- **Testeurs** qui ont validé le fonctionnement sur différents environnements
- **Community** pour les retours et améliorations
---
## 📈 Statistiques / Statistics
![GitHub stars](https://img.shields.io/github/stars/username/repo)
![GitHub forks](https://img.shields.io/github/forks/username/repo)
![GitHub issues](https://img.shields.io/github/issues/username/repo)
![GitHub pull requests](https://img.shields.io/github/issues-pr/username/repo)
---
**⭐ Si ce projet vous est utile, n'hésitez pas à lui donner une étoile !**
**⭐ If this project is useful to you, feel free to give it a star!**
---
*Dernière mise à jour / Last updated: 3 septembre 2025 / September 3, 2025*