MIELPOPS PHP

📌 Description du projet

MielPops est un honeypot en PHP conçu pour surveiller et collecter des données sur les attaquants tentant d'exploiter des vulnérabilités web courantes.

Il simule des points d’entrée vulnérables souvent ciblés dans des systèmes comme WordPress, Drupal, WHMCS et d'autres applications populaires. Ces fausses interfaces attirent les attaquants en leur faisant croire qu'ils ont trouvé un accès sensible (backdoors, pages d'administration, scripts de configuration).

🔍 Collecte et analyse des attaques

MielPops enregistre automatiquement :

  • Toutes les requêtes POST et GET envoyées par les attaquants.
  • Les fichiers malveillants envoyés en $_FILES (backdoors, shells, malwares).
  • Les informations sur l'attaquant (IP, User-Agent, Referer, Accept-Language, etc.).

Les données sont stockées en base de données, et l'interface MielPops permet d’analyser les attaques via des statistiques, graphiques et notifications en temps réel (Telegram).

Les fichiers malveillants capturés sont automatiquement compressés en .zip avec le mot de passe infected, puis stockés dans un dossier uploads/ non accessible de l'extérieur, mais consultable uniquement via l'interface de MielPops.

L'objectif est d’aider les administrateurs à comprendre les techniques des attaquants, à suivre les tendances en matière d’exploitation et à tester leurs propres défenses.

🎭 Pages de Trappe

MielPops propose plusieurs fausses pages pour attirer les attaquants.

🔹 Pages ciblant les CMS

Simulent des fichiers vulnérables utilisés dans des CMS populaires :

  • wp-login.php – Faux formulaire de connexion WordPress.
  • wp-config-sample.php – Faux fichier de configuration.
  • /wp-admin/setup-config.php – Simulation d'installation WordPress.
  • xmlrpc.php – Fausse API XML-RPC ciblée par les attaques WordPress.
  • administrator.php – Faux accès admin Drupal.
  • /install/install.php – Fausse installation WHMCS.

🔹 Backdoors courantes

Imite les shells PHP utilisés par les attaquants pour obtenir un accès :

  • c99.php
  • r57.php
  • wso.php
  • p0wny.php
  • ... (50+ variantes incluses)

🔹 Web mailers

Ces fichiers simulent des scripts d’envoi d’e-mails malveillants :

  • mailer.php
  • leaf.php
  • alexus.php

🔹 Outils d'administration détournés

adminer.php – Faux Adminer.

phpMyAdmin – Faux phpMyAdmin

🔹 Faux fichiers de configuration

Des fichiers sensibles qui redirigent les attaquants vers une trappe invisible :

  • .env
  • serviceAccountKey.json

🔹 Fausse installations de hacktools

Des fausses instances de hacktools, simulant des outils de hacking ou des botnets axés cardings.

  • /BeEF/ – Framework de tests de sécurité sur les navigateurs.
  • /bh/ – Kit d'exploit utilisé pour injecter des malwares.
  • /frmcp0/, /maincp0/ – Cheval de Troie bancaire ciblant les données sensibles.
  • /alina/, /dexter/ – Malwares PoS (Point of Sale) volant les infos bancaires.
  • /seco/ – Système ATS (Automatic Transfer System) outil malveillant pour automatiser des transferts frauduleux sur des comptes bancaires.
  • /pony/ – Stealer de données sensibles.
  • /powerloader/ – Loader malveillant utilisé pour télécharger et exécuter d'autres malwares.
  • /zeus/ – Cheval de Troie destiné à voler des informations bancaires par récupération de formulaire.

🔹 Index de fichiers exposés

Un dossier de fausses données avec .htaccess pour piéger les attaques :

  • api/v1/
  • api/v1/config
  • api/v1/config/wp

💡 Ajout de nouvelles pages de trappe : Il suffit d'utiliser la fonction insert_log() dans le fichier concerné. Voir le fichier d'exemple: trappe.php

📊 Technologies utilisées

MielPops exploite plusieurs outils pour l’analyse des données :

  • Google Charts → Graphiques statistiques.
  • NES.css → Interface rétro gaming.
  • Day.js → Gestion des timestamps.
  • MaxMind GeoIP → Géolocalisation des IPs.

🚀 Installation

📦 Avec Docker :

Un conteneur est disponible pour éviter d’installer manuellement un serveur web.

🖥️ Installation manuelle :

  • Installer Apache + PHP + MySQL.
  • Configurer le fichier MielPops_inc/config.php avec vos informations de base de données.
  • Importer le fichier database.sql pour créer la table de logs.
  • Démarrer Apache et accéder à http://localhost/mielpops/.

🎯 Journal des modifications

  • v0.15
    • Nouvelle mascotte pour le projet
    • Ajout d'un filtre par pays
    • Mise à jour des exports CSV, XML, SQL, JSON
  • v0.14
    • Ajout d'un limiteur de logs sur la recherche et la pagination.
    • Ajout de boutons 'Début' et 'Fin' sur la pagination.
    • Ajout d'une fonctionnalité en JS pour fermer les modales si on clique ailleurs que sur la modale.
    • Ajout de la langue anglaise, et d'un sélectionneur de langage sur l'application.
    • Ajout d'un filtre 'uploads' pour afficher uniquement les fichiers uploadés par les attaquants.
    • Ajout d'un graphique pour les statistiques d'extensions des fichiers attrapés.
  • v0.13
    • Ajout de nouvelles colonnes en base SQL : http_method, referer, language, post_data, uploaded_files, archive_link.
    • Collecte des fichiers uploadés par les attaquants (uploads/ sécurisé par .htaccess).
    • Ajout d’une modale avec plus de détails sur chaque attaque.
    • Amélioration des logs avec drapeaux de pays et informations Accept-Language.
  • v0.12
    • Ajout d’un captcha sur la page de connexion.
  • v0.11
    • Sécurisation du honeypot avec un mot de passe configurable (MielPops_inc/config.php).
    • Fusion des pages d’exports dans l’interface principale.
  • v0.10
    • Centralisation des constantes de configuration (MielPops_inc/config.php).
  • v0.9
    • Intégration d’un système de notification Telegram.
  • v0.8
    • Ajout d’une API pour interroger la base et détecter les IPs connues.
  • v0.7
    • Graphique circulaire pour le Top 10 des chemins les plus attaqués.
    • Ajout d’un flux RSS pour les dernières attaques.
    • Export des logs en JSON, XML, SQL.
  • v0.6
    • Graphique en 3D pour le Top 10 des attaquants.
    • Ajout d’un export CSV pour les logs.
  • v0.5
    • Suppression de la colonne host, maintenant affichée au survol de l'IP.
    • Déplacement de la carte géographique en bas de page pour les statistiques.
    • Ajout d'un compteur pour le nombre total de logs.
    • Ajout d'une colonne pour suivre le nombre d'attaques par mois.
    • Ajout d'un logo et d'un favicon.
  • v0.4
    • Refonte complète du code pour encapsuler tout dans des fonctions.
    • Ajout du framework CSS NES pour le design de la page des journaux d'attaque.
    • Suppression de l'emoji ⌚ pour l'horodatage.
    • Ajout de la carte géographique des attaques.
    • Ajout d'icônes pour les user-agents, avec tranchage à 25 caractères dans le tableau.
    • Premier pull du projet sur le GitHub du HG2.0.
  • v0.3
    • Ajout de la pagination, du module de recherche, et mise en place d'un emoji '⌚' au survol pour afficher l'horodatage de l'attaque.
  • v0.2
    • Ajout des drapeaux avec la librairie MaxMind GeoIP Legacy PHP API.
  • v0.1
    • Réécriture de la page des journaux d'attaque (index.php).
    • Réécriture de la trappe et création d'une base de données SQL pour sauvegarder les logs.
    • Suppression de honeylogs.html.

📬 Contributions et retours bienvenus pour améliorer le projet ! 🚀