Network incident detection and flow filtering are usually done by devices implementing rules based on previous knowledge on what shall be allowed or denied :
- authorized and legitimate accesses - all other accesses are suspicious;
- known malicious behaviours - all other behaviors are legitimate and accepted.
Rules are, most of the time, a combination of the two.
Both operation modes require continuous updates, are not perfect, and have advantages and disadvantages.
In the last fifteen years, we have seen the emergence of research aiming to detect anomalies in traffic without needing to be based on this a priori knowledge. But these research products still remain in academia and are validated against synthetic data which, in our opinion, are not enough representative of real conditions.
In the aim of evaluating the usefulness of this kind of technique in our network administration environment, we established a prototype based on unsupervised learning (clustering), allowing for packets to be grouped according to their similarity. The data analyzed come from a 'netflow' probe in a site entry router.
The results we have obtained so far show that, with simple heuristics, the most obvious positive result is a better understanding of what's going on our network and that trivial anomalies (scans and so forth) are easily identifiable.
Les dispositifs de détection d'incidents réseau ou de filtrage de flux les plus courants basent leur fonctionnement sur des règles construites à partir des connaissances à priori :
- des accès autorisés ou légitimes – tout le reste est à proscrire;
- des comportements connus comme malveillants – tout le reste est légitime et accepté.
En général, les règles sont un mixte des deux.
Ces modes de fonctionnement exigent des mises à jour en permanence, ne sont pas parfaits et ont, chacun, des avantages et des inconvénients.
Depuis une quinzaine d'années on voit apparaître des travaux de recherche dans le but de détecter des anomalies dans le trafic sans faire appel à ces connaissances à priori. Mais ces produits de recherche restent encore dans le domaine académique, validés avec des données synthétiques ou, à notre avis, pas assez représentatifs.
Dans le but de voir ce que peut apporter ce type de technique dans un environnement interne d'une école, nous avons mis en place un prototype basé sur de l'apprentissage non supervisé (clustering), permettant de regrouper les paquets selon leur « ressemblance ». Les données analysés sont issus d'une sonde « netflow » en routeur d'entrée de site.
Les résultats que nous avons obtenu jusqu'à maintenant montrent que, avec des heuristiques simples, le résultat positif le plus évident est une meilleure connaissance du fonctionnement du réseau et que des anomalies triviales (scans et similaires) sont facilement identifiables.