Serveur honeypot
Un serveur honeypot open source qui détecte les attaques et partage automatiquement des informations sur les menaces avec la ReportedIP . Déployez-le au sein de votre infrastructure pour intercepter les attaquants avant qu'ils n'atteignent vos systèmes réels.
Qu'est-ce qu'un honeypot ?
Un « honeypot » est un système leurre conçu pour attirer et détecter les pirates. Il imite des services réels mais n'a aucune utilité légitime : toute interaction avec lui est intrinsèquement suspecte.
Le serveur ReportedIP simule des installations de CMS vulnérables afin d'identifier les adresses IP malveillantes. Lorsqu'un pirate tente une attaque par force brute pour se connecter, recherche des failles connues ou analyse le système à la recherche de vulnérabilités, le honeypot enregistre l'adresse IP source et les détails de l'attaque, puis les transmet automatiquement à ReportedIP .
Émulation CMS
Le serveur honeypot simule les pages de connexion et les panneaux d'administration des systèmes de gestion de contenu les plus courants. Les pirates qui tentent des attaques par force brute ou par exploitation sont immédiatement détectés et signalés.
| CMS | Chemins émulés | Détection |
|---|---|---|
| WordPress | /wp-login.php, /wp-admin/, /xmlrpc.php |
Attaques par force brute lors de la connexion, utilisation abusive du protocole XML-RPC, failles dans les plugins |
| Drupal | /user/login, /admin/ |
Tentatives de connexion, signatures Drupalgeddon |
| Joomla | /administrator/, /index.php/component/users/ |
Attaques par force brute contre les comptes administrateur, failles de sécurité des composants |
Analyseurs de menaces
Le honeypot intègre 36 analyseurs qui examinent chaque requête entrante à la recherche de modèles et de techniques d'attaque connus :
| Analyseur | Description |
|---|---|
| Détection des attaques par force brute | Détecte les tentatives de connexion répétées provenant d'une même source |
| Injection SQL | Détecte les charges utiles d'injection SQL dans les paramètres et les en-têtes |
| Charges utiles XSS | Détecte les tentatives de cross-site scripting dans les données de requête |
| Parcours de chemin | Identifie les séquences de traversée de répertoires (../, ..\\) |
| Signatures d'exploits connus | Compare les requêtes à une base de données répertoriant les failles CVE connues |
| Attaque par réutilisation d'identifiants | Détecte les tentatives automatisées de piratage de comptes à l'aide de différentes combinaisons de nom d'utilisateur et de mot de passe |
| Énumération des répertoires | Identifie l'analyse systématique des fichiers et répertoires sensibles |
| Abus via XML-RPC | Détecte l'amplification des pingbacks et les attaques par force brute via XML-RPC |
Génération automatique de rapports
Chaque attaque détectée est automatiquement signalée à ReportedIP sans intervention manuelle. Chaque rapport comprend :
- Adresse IP source — l'adresse IP de l'attaquant
- Type d'attaque — le schéma d'attaque spécifique détecté
- ID de catégorie — associé à l'une des 30 catégories de menaces prédéfinies
- Horodatages — heure exacte de chaque incident de sécurité
Incidence sur l'indice de confiance
Les rapports issus des honeypots ont un poids particulier dans le système de réputation, car ils reflètent une activité malveillante confirmée — il n'y a aucune raison légitime d'interagir avec un honeypot. Le système applique un bonus « honeypot » spécifique en plus du score de confiance de base.
| Avantage | Détails |
|---|---|
| Bonus Honeypot | Jusqu'à +25 points ajoutés au score de confiance |
| Réduction de l'atténuation temporelle | Les rapports restent d'actualité plus longtemps ; le taux de honeypots réduit le facteur de décroissance |
| Poids de confiance plus élevé | Les rapports sur les honeypots se multiplient par honeypot_report_weight_multiplier (par défaut : 2.0x) |
| Confiance minimale | À partir de 2 rapports de honeypot, un niveau de confiance d'au moins 25 % est garanti |
Formule bonus Honeypot
base_bonus = honeypot_count * base_bonus_per_report
# Diversity requirement
diversity_factor = min(unique_reporters / diversity_divisor, 1.0)
base_bonus = base_bonus * diversity_factor
# Single reporter penalty (if > 5 honeypot reports & only 1 reporter)
if honeypot_reports > threshold AND unique_reporters == 1:
penalty = 10
final_bonus = min(base_bonus - penalty, 25)
# Time dampening reduction
honeypot_ratio = honeypot_reports_count / report_count
dampening_reduction = honeypot_ratio * 0.5
time_dampening_factor = min(1.0, time_dampening_factor + dampening_reduction)
Installation
Docker (recommandé)
La manière la plus rapide de démarrer. Téléchargez l'image officielle et exécutez-la avec votre clé API :
docker run -d \
--name reportedip-honeypot \
-e API_KEY="your-api-key-here" \
-e API_ENDPOINT="https://reportedip.de/wp-json/reportedip/v2/" \
-p 8080:8080 \
ghcr.io/reportedip/honeypot-server:latest
Configuration manuelle
Clonez le dépôt et installez les dépendances manuellement :
git clone https://github.com/reportedip/honeypot-server.git
cd honeypot-server
# Install dependencies
npm install
# Configure environment
cp .env.example .env
# Edit .env with your API key and settings
# Start the server
npm start
Configuration
Configurez le serveur honeypot à l'aide de variables d'environnement. Vous pouvez les définir dans votre
.env fichier ou transmis directement à Docker.
| Variable | Par défaut | Description |
|---|---|---|
API_KEY |
— | Votre clé ReportedIP (obligatoire). Utilisez une clé de type « Honeypot » pour bénéficier d'un accès illimité aux rapports. |
API_ENDPOINT |
https://reportedip.de/wp-json/reportedip/v2/ |
URL de base ReportedIP . |
LOG_LEVEL |
info |
Niveau de détail des journaux. Options : info, debug, warn. |
EMULATED_CMS |
wordpress,drupal,joomla |
Liste, séparée par des virgules, des plateformes CMS à imiter. |
PORT |
8080 |
Port sur lequel le serveur honeypot est à l'écoute. |
Dépôt GitHub
Le serveur honeypot est entièrement open source. Les contributions, les rapports de bogues et les demandes de fonctionnalités sont les bienvenus.