Franck BARBIEU – Romain GARDON Analyse des logs d'un firewall - Génération d'un compte-rendu sous forme de pages HTML Franck BARBIEU – Romain GARDON Projet technique – 2004-2005 Responsable : Philippe DUMONT
Introduction – État de l’art – Objectifs – Solution – Conclusion Plan Plan État de l’art Changements d’objectifs Notre solution Conclusion Introduction – État de l’art – Objectifs – Solution – Conclusion
État de l’art Analyse des logs d'un firewall Génération d'un compte-rendu sous forme de pages HTML État de l’art Projet technique – 2004-2005
Introduction – État de l’art – Objectifs – Solution – Conclusion Traitement des logs Traitement FWAnalog Outils Soit gratuits et trop génériques Soit professionnels et trop onéreux Exemples LogSurfer Abandonné Trop peu pertinent NetSecure Log Prix Autres parsers Ulog PHP Firewall Eyes Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion FWAnalog Traitement FWAnalog 2001 Code non optimisé Parsing Lourd et inadapté aux logs de firewall Logs transformés en logs de serveur Web Conséquence sur le temps de traitement Présentation Absence de lisibilité Autres parsers Ulog PHP Firewall Eyes Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Autres parsers Traitement FWAnalog 2000 – 2004 Nombreux petits projets Aucun ne donnait satisfaction Abandonnés Autres parsers Ulog PHP Firewall Eyes Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Ulog PHP Traitement FWAnalog Monitoring en temps réel Requêtes ciblées Présentation à revoir Non repris Trouvé trop tard Autres parsers Ulog PHP Firewall Eyes Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Firewall Eyes Traitement FWAnalog Projet professionnel Développé pour les clients de la société Creabilis Sortie en licence GPL fin 2004 Produit satisfaisant Portabilité : PHP Nombreuses fonctionnalités Analyse à posteriori Fichier par fichier Traitement et résultat non stockés Autres parsers Ulog PHP Firewall Eyes Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Firewall Eyes Traitement FWAnalog Autres parsers Ulog PHP Firewall Eyes Introduction – État de l’art – Objectifs – Solution – Conclusion
Changement d’objectifs Analyse des logs d'un firewall Génération d'un compte-rendu sous forme de pages HTML Changement d’objectifs Projet technique – 2004-2005
Introduction – État de l’art – Objectifs – Solution – Conclusion IPTables IPTables Données Uniquement un firewall Élément inactif Filtre selon ses règles Log de manière « brute » Objectif Informations loggées moindres Moins de possibilités de détection d’attaques Statistique Non loggé ICMP Database Objectifs Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Données non loggées IPTables Données Seules les en-têtes sont loggées Contenu des paquets non conservé Attaques Analyse de fonctionnement d’IDS Attaques majoritairement basées sur le contenu Objectifs Se contenter des attaques visibles dans les en-têtes Statistique Non loggé ICMP Database Objectifs Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Analyse statistique IPTables Données Paquets attendus et dans le bon ordre Procédés Pour chaque triplet ( @IPsrc , @IPdst , service ) Bon ordre de réception des paquets Bon ordre de log des ports Résultat Lourdeur du code Lourdeur de l’exécution Objectifs Analyse statistique difficile Statistique Non loggé ICMP Database Objectifs Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Paquets non loggés IPTables Données Rejets de paquets Paquets trop longs Paquets malformés Attaques d’un pirate Erreur de transmission Exemple Numéro de séquence invalide Objectifs Analyse statistique impossible Statistique Non loggé ICMP Database Objectifs Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion ICMP IPTables Données Quelles attaques dans les en-têtes ? 5 à 8 sur 6 000 Attaques Détection de fausses attaques Absence de détection de vraies attaques Objectifs Oublier les attaques ICMP Statistique Non loggé ICMP Database Objectifs Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Base de données ? IPTables Données Inconvénients Lenteur d’insertion Copie regrettable du fichier de logs Effectuer un pré-traitement Avantages Rapidité d’affichage Simplicité de filtrage Utilisation d’une base de données Similaire au fichier de logs Statistique Non loggé ICMP Database Objectifs Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion IPTables Données Revus à la baisse Firewall ≠ IDS Attaques très difficilement détectables Nécessité d’une IA Travailler majoritairement sur la présentation Existant intéressant en PHP Développer en PHP Utilisation d’une base de données Statistique Non loggé ICMP Database Objectifs Introduction – État de l’art – Objectifs – Solution – Conclusion
Notre solution Analyse des logs d'un firewall Génération d'un compte-rendu sous forme de pages HTML Notre solution Projet technique – 2004-2005
Introduction – État de l’art – Objectifs – Solution – Conclusion Outils utilisés Outils utilisés Général Système Windows XP Pro Easy PHP Apache MySQL Graphes JPGraph 1.17 Insertion Lecture Protocole TTL Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Aspect général Outils utilisés Général Insertion des logs dans la base de données Lecture des logs Possibilité d’effectuer un filtrage Accès aux services Choix du service Statistiques Dynamisées selon les filtres Insertion Lecture Protocole TTL Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Insertion des logs Outils utilisés Général Choix Fichier, mois, année Message de confirmation ou d’erreur Ici : nombre de logs insérés Insertion Lecture Protocole TTL Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Lecture des logs Outils utilisés Général Choix du nombre de logs par page Navigation page précédente / suivante Résolutions IP et service Insertion Lecture Protocole TTL Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion Protocole Outils utilisés Général Graphe camembert filtré sur l’année 2004 Insertion Lecture Protocole TTL Introduction – État de l’art – Objectifs – Solution – Conclusion
Introduction – État de l’art – Objectifs – Solution – Conclusion TTL Outils utilisés Général Filtrage sur l’année 2004 Graphes Année, et chaque mois de l’année Insertion Lecture Protocole TTL Introduction – État de l’art – Objectifs – Solution – Conclusion
Conclusion Analyse des logs d'un firewall Génération d'un compte-rendu sous forme de pages HTML Conclusion Projet technique – 2004-2005
Introduction – État de l’art – Objectifs – Solution – Conclusion Nécessité de beaucoup de recherches Trop ambitieux Changements d’objectifs Solution proposée Logs de forme fixe Interface entièrement développée Interface optimisée en traitement Tous les graphes ne sont pas générés Introduction – État de l’art – Objectifs – Solution – Conclusion