Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Log4Shell-Honeypot — Honeypot dockerisé pour CVE-2021-44228. | Kitploit
Outils/GitHubGitHub/michaelsanford/log4shell-honeypot
Sécurité des ConteneursAnalyse des VulnérabilitésRenseignement sur les MenacesDétection d'IntrusionAnalyse de JournauxArchived
GitHubmichaelsanford/log4shell-honeypot

Log4Shell-Honeypot

Honeypot dockerisé pour CVE-2021-44228.

Voir le dépôt
429il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web

Honeypot Log4Shell

Honeypot dockerisé amélioré pour CVE-2021-44228 avec des fonctionnalités complètes de sécurité, de surveillance et d'alerte.

Snyk Container CodeQL Pylint

Fonctionnalités

Détection améliorée

  • Correspondance complète de motifs : détecte plus de 20 motifs d'exploitation Log4Shell, notamment les recherches JNDI, LDAP, RMI, DNS et de variables d'environnement
  • Détection multi-sources : surveille les en-têtes HTTP, les données de formulaire et les paramètres de requête
  • Journalisation en temps réel : journalisation JSON structurée avec informations détaillées sur les attaques

Sécurité et performances

  • Limitation de débit : limitation de débit configurable par IP pour prévenir les abus
  • Proxy inverse : configuration Nginx avec en-têtes de sécurité et terminaison SSL
  • Sécurité du conteneur : utilisateur non-root, système de fichiers en lecture seule, capacités supprimées
  • Intégration fail2ban : blocage automatique des adresses IP après des tentatives répétées

Surveillance et alertes

  • Contrôles de santé : endpoint de santé intégré pour l'orchestration des conteneurs
  • Endpoint de métriques : statistiques en temps réel sur les requêtes et les attaques
  • Analyse des journaux : script Python pour analyser les motifs et tendances d'attaques
  • Surveillance en temps réel : suivi des journaux avec sortie formatée

Fonctionnalités opérationnelles

  • Rotation des journaux : rotation automatique des journaux avec limites de taille configurables
  • Arrêt gracieux : gestion appropriée des signaux pour un arrêt propre des conteneurs
  • Configuration : configuration basée sur les variables d'environnement pour tous les paramètres
  • Support SSL : génération de certificats auto-signés pour HTTPS

Démarrage rapide

Déploiement simple

# Generate SSL certificates
./generate-ssl.sh

# Start with docker-compose
docker-compose up -d

# Monitor logs
./monitor.py --tail

Déploiement complet (avec fail2ban)

# Run as root for fail2ban setup
sudo ./deploy.sh

Exécution manuelle de Docker

# x86_64
docker run -d -p 8080:8080 \
  -e HONEYPOT_NAME="log4shell-honeypot" \
  -e LOG_FORMAT="json" \
  -e RATE_LIMIT_REQUESTS="100" \
  --name="log4shell-honeypot" \
  msanford/log4shell-honeypot:latest

# ARM (e.g., Raspberry Pi)
docker run -d -p 8080:8080 \
  -e HONEYPOT_NAME="log4shell-honeypot" \
  --name="log4shell-honeypot" \
  msanford/log4shell-honeypot:arm-latest

Configuration

Variables d'environnement

VariableDefaultDescription
HONEYPOT_NAMElog4shell-honeypotIdentifiant du honeypot
LOG_LEVELINFONiveau de journalisation (DEBUG, INFO, WARNING, ERROR, CRITICAL)
LOG_FORMATjsonFormat de journalisation (json ou texte)
MAX_LOG_SIZE10485760Taille maximale du fichier journal en octets (10 Mo)
LOG_BACKUP_COUNT5Nombre de fichiers journaux de sauvegarde à conserver
RATE_LIMIT_REQUESTS100Nombre maximal de requêtes par IP par fenêtre
RATE_LIMIT_WINDOW3600Fenêtre de limitation de débit en secondes (1 heure)

Utilisation d'un fichier de configuration

# Load from config file
docker-compose --env-file config.env up -d

Motifs de détection

Le honeypot détecte les motifs Log4Shell suivants :

  • ${jndi: - Recherches JNDI (vecteur d'attaque principal)
  • ${ldap: - Recherches dans l'annuaire LDAP
  • ${rmi: - Invocation de méthodes distantes RMI
  • ${dns: - Recherches DNS
  • ${env: - Accès aux variables d'environnement
  • ${sys: - Accès aux propriétés système
  • ${java: - Informations sur l'environnement d'exécution Java
  • Et plus de 15 motifs supplémentaires

Surveillance

Surveillance en temps réel

# Tail logs with formatted output
./monitor.py --tail

# Analyze last 24 hours
./monitor.py --hours 24

# Analyze last hour
./monitor.py --hours 1

Contrôle de santé

curl http://localhost/health

Métriques

curl http://localhost/metrics

Statut de fail2ban

sudo fail2ban-client status log4shell-honeypot

Format des journaux

Le format de journal JSON amélioré comprend :

{
  "timestamp": "2024-01-15T10:30:45Z",
  "honeypot": "log4shell-honeypot",
  "event_type": "log4shell_attempt",
  "source_ip": "192.168.1.100",
  "real_ip": "10.0.0.5",
  "method": "POST",
  "url": "http://honeypot.local/",
  "user_agent": "Mozilla/5.0...",
  "detected_patterns": ["${jndi:", "${env:"],
  "detection_source": "form_field:username",
  "headers": {...},
  "form_data": {...},
  "query_params": {...},
  "content_length": 45
}

Fonctionnalités de sécurité

Sécurité du conteneur

  • Exécution avec un utilisateur non-root
  • Système de fichiers racine en lecture seule
  • Capacités Linux supprimées
  • Aucun nouveau privilège
  • Système de fichiers temporaire pour /tmp

Sécurité réseau

  • Proxy inverse Nginx avec en-têtes de sécurité
  • Limitation de débit à plusieurs niveaux
  • Terminaison SSL/TLS
  • Intégration fail2ban pour le blocage d'adresses IP

Sécurité de la journalisation

  • Journalisation structurée pour l'intégration SIEM
  • Rotation des journaux pour prévenir la saturation du disque
  • Volumes de journaux séparés
  • Gestion des erreurs pour les pannes de journalisation

Intégration

Intégration SIEM

Les journaux JSON structurés peuvent être facilement ingérés par :

  • ELK Stack (Elasticsearch, Logstash, Kibana)
  • Splunk
  • Graylog
  • Fluentd/Fluent Bit

Alertes

Configurez des alertes basées sur :

  • Seuils de fréquence d'attaques
  • Nouveaux motifs d'attaque
  • Anomalies géographiques
  • Motifs de user-agent

Compilation à partir des sources

# Build container
docker build -t log4shell-honeypot:latest .

# Build with specific tag
docker build -t log4shell-honeypot:v2.0 .

Résolution des problèmes

Vérifier l'état du conteneur

docker-compose ps
docker-compose logs log4shell-honeypot

Vérifier la santé

curl -f http://localhost/health || echo "Health check failed"

Vérifier fail2ban

sudo fail2ban-client status
sudo tail -f /var/log/fail2ban.log

Analyse des journaux

# Check for recent attacks
./monitor.py --hours 1

# View raw logs
tail -f /var/log/log4shell-honeypot.log

Réglage des performances

Environnements à fort trafic

  • Augmentez RATE_LIMIT_REQUESTS pour un trafic élevé légitime
  • Ajustez MAX_LOG_SIZE et LOG_BACKUP_COUNT pour la rétention des journaux
  • Utilisez une agrégation externe des journaux pour réduire le stockage local

Limites de ressources

# In docker-compose.yml
deploy:
  resources:
    limits:
      cpus: '0.5'
      memory: 256M
    reservations:
      cpus: '0.1'
      memory: 128M

Contribution

  1. Forkez le dépôt
  2. Créez une branche de fonctionnalité
  3. Effectuez vos modifications
  4. Ajoutez des tests si nécessaire
  5. Soumettez une pull request

Considérations de sécurité

Télécharger l’outil