• Aucun résultat trouvé

5.3. Détection des logiciels malveillants par N-grammes et SVDD

5.3.3. Résultats obtenus pour une base standard de virus informatiques

La méthode proposée a été évaluée en utilisant une base de données expérimentale, constituée de 1258 fichiers exécutables, dont 600 fichiers bénins provenant de différentes versions des systèmes d'exploitation (Windows XP et Windows 7), et 658 virus informatiques [171]. La répartition détaillée des fichiers de la base expérimentale est illustrée dans la figure 5.5.

Classification et détection des spams et des virus informatiques par SVDD

123 Figure 5.5 - La distribution des fichiers exécutables dans la base de données

expérimentale

Trois expériences ont été effectuées sur la base susmentionnée : La première vise à discriminer entre une famille virale nommée Dos.Vienna et un ensemble de fichiers bénins, tandis que la seconde fait intervenir un ensemble de trois familles virales (Dos.BadBoy, Dos.Ash et Dos.BW) contre des fichiers bénins. La dernière évalue le pouvoir séparateur entre des virus appartenant à deux familles virales différentes (Dos.Burger et Dos.Austalian). Chaque expérience est réalisée en deux étapes :

− L’apprentissage de la base d’entrainement : Dans cette étape, nous commençons par extraire les N-grammes et leurs fréquences d’apparition dans chaque fichier de la base d’entrainement, puis nous combinons les N-grammes de tous les fichiers en éliminant les redondantes. L’objectif est de construire une base commune. Après, nous calculons le gain d'information IG de chaque N-grammes, ensuite nous les trions dans l'ordre décroissant de l'IG afin de sélectionner les X premières les plus pertinentes pour former une nouvelle base réduite. À la fin de cette étape chaque fichier exécutable (malveillant ou bénin) est représenté par sa signature (vecteur de X N-grammes). Ces dernières vont servir comme entrées pour les classifieurs SVDD et SSPV-SVDD. Nous évaluons le taux de reconnaissance relatif à la base d’entrainement selon les valeurs prises par Q.

− L’identification d’un exécutable de test: Dans cette étape, nous visons à évaluer la capacité de généralisation de notre méthode afin de détecter les nouveaux virus. A partir d’un programme de la base de test nous extrayons ses N-grammes distinctes ainsi que leurs fréquences d’apparition, nous constituons sa signature par la projection de l'ensemble de ces N-grammes dans la base réduite (construite dans l'étape d’entrainement). Ensuite, nous identifions sa classe adéquate en utilisant la fonction de décision des classifieurs SVDD et SSPV-SVDD. La même procédure est répétée pour l’ensemble des fichiers de la base de test afin d’évaluer le taux moyen de reconnaissance selon les valeurs prises par σ.

Dans toutes les expériences, nous employons le noyau Gaussien. Afin d’évaluer la moyenne et l’écart-type du taux de reconnaissance chaque expérience est répétée 10 fois. Une description détaillée de la méthode proposée est représentée dans la figure 5.6.

Base des fichiers viraux

Base de données expérimentale

Base des fichiers bénins (Win XP et Win 7 ): 658 exécutables

Vienna 334exécutables BadBoy 42exécutables Ash 54 exécutables Burger 95 exécutables BW 48exécutables Austratlian 85exécutables

Classification et détection des spams et des virus informatiques par SVDD

124 Figure 5.6 - Etapes de la méthode proposée pour la détection

des virus informatiques

Résultats numériques

La première expérience illustrée par la figure 5.7, concerne la classification d’une seule famille virale contre des fichiers bénins, elle montre la variation du taux moyen de reconnaissance et l'écart type des classifieurs SVDD et SSPV-SVDD selon la largeur du noyau Gaussien Q. La figure est divisée en deux parties:

Calculer la moyenne du taux de reconnaissance de virus et son écart type

Convertir chaque fichier exécutable en une séquence hexadécimale Sélectionner un fichier de test x et sa

classe (virale ou bénigne) y

Extraire les N-grammes distinctes de chaque fichier ainsi que leurs fréquences d’apparition

Extraire la séquence hexadécimale de x

Evaluer la classe de x par les deux fonctions de décision

de SVDD et SSPV-SVDD

Diviser aléatoirement la base expérimentale en deux ensembles d’entrainement (80% bénins, 80% virus) et de test (20% bénins, 20% virus)

Ensemble d’entrainement Ensemble

de test

Construire une base B avec les N-grammes concaténées et leurs fréquences dans chaque fichier.

Calculer la mesure appelée le gain d’information (IG)

Former une nouvelle base de taille réduite, en sélectionnant les k premieres N-grammes, selon l’ordre décroissant de (IG)

Extraire les N-grammes distinctes ainsi que leurs fréquences d’apparition

Projeter les N-grammes de x dans la base réduite

Construire les deux hypersphères relatives aux fichiers (viraux et bénins) moyennant SVDD et SSPV-SVDD

Répéter pour Les autres

fichiers

Classification et détection des spams et des virus informatiques par SVDD

125 – La première concerne la base d’entrainement. On observe que la classification par la méthode SVDD donne un taux moyen de reconnaissance qui atteint un maximum de 74 % avec un grand écart type, contrairement à SSPV-SVDD qui est stable et qui atteint environ 100 % quelque soit la valeur de Q.

– La seconde concerne la base de test. On remarque que le taux moyen de reconnaissance relatif à la méthode SSPV-SVDD dépasse celui de SVDD (maximum de 97% contre 58%), également l'écart type de SSPV-SVDD est inférieur à SVDD.

Figure 5.7 - Le taux moyen de reconnaissance de SSPV-SVDD et SVDD pour Dos.Vienna

La deuxième expérience (Figure 5.8) a le même objectif que la première, la seule différence est que la famille virale mise en expérience est hétérogène, elle est composée de trois types de virus : Dos.BadBoy, Dos.Ash et Dos.BW. Egalement la figure est divisée en deux parties:

– La première concerne la base d’entrainement : On constate qu’en moyen 100% des fichiers d’entrainement sont correctement classés par SSPV-SVDD, mais lors du passage à SVDD les résultats diminuent considérablement (maximum de 70%) et l’écart type devient plus important.

– La seconde concerne la base de test. On observe qu’environ 94% des nouveaux exécutables sont correctement classés, avec une faible variance lors de l'utilisation de SSPV-SVDD, contrairement à SVDD qui donne de faibles résultats (maximum de 44%) avec une grande variance.

Classification et détection des spams et des virus informatiques par SVDD

126 Figure 5.8 - Le taux moyen de reconnaissance de SSPV-SVDD et SVDD

pour Dos.BadBoy, Dos.Ash et Dos.BW

La troisième expérience (Figure 5.9) a pour but d'évaluer la capacité des classifieurs SVDD et SSPV-SVDD à distinguer entre deux familles virales différentes Dos.Burger et Dos.Austalian. La figure peut être divisée en deux parties:

– La première partie concerne la base d’entrainement : On remarque que le meilleur taux de reconnaissance avec une faible variance a été atteint en utilisant SSPV-SVDD (maximum de 95%) par rapport à SVDD (maximum de 85%).

– La seconde partie concerne la base de test : On voit que le classificateur SSPV-SVDD donne un meilleur taux de reconnaissance (maximum de 90%) en comparaison avec SVDD (maximum de 82%).

Figure 5.9 - Le taux moyen de reconnaissance de SSPV-SVDD et SVDD pour Dos.Burger contre Dos.Austalian

Classification et détection des spams et des virus informatiques par SVDD

127 En conclusion. Toutes les expériences ont montré que les meilleurs résultats de classification ont été atteints en appliquant la combinaison de N-grammes et la version améliorée de SVDD appelée SSPV-SVDD.

5.4.

Conclusion

Dans ce chapitre nous nous sommes focalisés sur certains problèmes qui menacent la sécurité des systèmes informatiques, qui sont les courriels indésirables communément connus sous le nom de spams et les logiciels malveillants. Ces menaces électroniques qui ne cessent d’augmenter peuvent entraîner des dommages conséquents pour les utilisateurs particuliers comme pour les entreprises. L’utilisation des méthodes ordinaires pour lutter contre ces attaques comme la signature virale, le filtrage anti-spam, etc. s’avèrent inefficaces face aux techniques constamment développées pour masquer leurs contenus et ainsi les rendre indétectables. Récemment de nouvelles méthodes plus intelligentes, capables d’analyser et de détecter les spams et les logiciels malveillants ont été introduites, parmi elles figurent les méthodes d’apprentissage automatique et les techniques de fouille de données.

A l’issue des contributions intéressantes et prometteuses présentées dans les deux chapitres précédents, et qui ont pour objectif l’amélioration de la performance du classifieur SVDD, nous avons essayé de bénéficier de certaines d’entre elles en les appliquant aux problèmes susmentionnés. En effet, nous avons développé une version améliorée du SVDD nommée SSPV-SVDD avec une fonction de décision floue, pour le filtrage anti-spam. Aussi, nous avons combiné SSPV-SVDD et N-grammes pour la détection des virus informatiques. Les résultats expérimentaux obtenus sur des bases réelles des spams et des virus informatiques, ont été très convaincants et très intéressants en termes de détection et d’identification de spams et de virus informatiques.

Ces applications nous ont permis de toucher aux vrais problèmes du classifieur SVDD dont héritent les versions améliorées notamment la classification des grandes bases de données qui nécessitent un temps d’apprentissage trop élevé. D’autres problèmes sont intrinsèques aux applications choisies, comme le choix d’une méthode efficace pour l’extraction d’information pertinente à partir des fichiers exécutables et la prise des précautions nécessaires lors du traitement de ces derniers qui peuvent endommager l’ordinateur utilisé dans l’expérience ou le rendre inopérable.

128

Conclusion générale

Au cours de ces travaux de recherche nous nous sommes intéressés principalement à deux sujets, le premier est l’amélioration de la capacité de généralisation du classifieur Support Vector Domain Description, le second est l’application de certaines desdites améliorations à deux problèmes qui concerne la sécurité des systèmes informatiques à savoir la détection des virus informatiques et le filtrage anti-spam.

Tout d’abord, Nous avons commencé nos travaux de recherche par une étude bibliographique, elle concerne principalement le dressage d’un panorama des principales méthodes utilisées dans le domaine de l’apprentissage automatique supervisé et non-supervisé. Il s’agit d’une étude comparative dans laquelle nous avons présenté le concept, les avantages, les inconvénients, et les principales variantes de chaque méthode. Parmi ces dernières nous nous sommes particulièrement attirés par les machines à apprentissage vu les multiples avantages et variantes qu’elles possèdent. Ce choix nous a conduit à l’étude des machines à apprentissage à noyaux en particulier les SVMs et SVDD, qui sont basées sur un fondement mathématique solide issu de la théorie d’apprentissage statistique de Vapnik [114,115]. Ces classifieurs ont connu une grande évolution et ont montré d’excellentes performances pour un large champ d’applications. A travers cette étude nous avons expliqué le principe de la minimisation du risque structurel adopté

Conclusion générale

129 par ces classifieurs, aussi nous avons analysé leurs développements mathématiques dans le cas mono-classe, bi-classes, et multi-classes, également nous avons exposé en détails quelques variantes de ces classifieurs et enfin nous avons abordé les fonctions noyaux utilisées par SVMs et SVDD et permettant d’effectuer un passage implicite de l’espace d’origine vers un autre augmenté afin de classifier les données non linéairement séparables. L’objectif derrière cette partie de thèse est de détecter les limitations et les points faibles de ces classifieurs afin d’y remédier par la suite.

Nos travaux se sont ensuite focalisés sur l’amélioration du classifieur SVDD, le choix de se concentrer sur ce classifieur est motivé par sa performance de classification et sa capacité de généralisation. Afin d’augmenter sa performance, nous avons tiré profit de deux stratégies. La première est l’optimisation de la séparabilité entre les classes d’une base d’apprentissage. La deuxième est le paramétrage optimal de l’espace des caractéristiques.

La première stratégie a donné naissance à trois améliorations du SVDD. En effet, nous avons maximisé la séparation inter-sphères et par suite la séparabilité entre les classes ; nous avons aussi introduit un paramètre pour contrôler le volume des sphères minimales pour mieux cerner les classes ; et enfin, nous avons exploité la notion d’appartenance floue et établit une nouvelle fonction de décision plus précise.

La deuxième stratégie a également produit trois améliorations du SVDD, les deux premières ont pour objectif l’optimisation des paramètres du classifieur afin de trouver un meilleur espace de caractéristiques. Elles ont permet d’optimiser la largeur du noyau Gaussien, Quant à la dernière amélioration, elle a essayé de remédier au problème des données incertaines qui existent dans les bases d’apprentissage et qui faussent les frontières de séparation entre les classes.

Afin de valider leur performance, les améliorations proposées ont été évaluées sur des jeux de données artificielles comme le problème d’échiquier, la double spirales ou encore des ensembles de données aléatoires et sur des bases de données réelles, les résultats du taux de reconnaissance ont montré que ces versions améliorées du SVDD sont performantes.

Enfin, pour tester l’efficacité de ces versions sur des cas pratiques, nous nous sommes intéressés à deux problèmes dont souffrent les systèmes informatiques qui sont le filtrage anti- spams et la détection des virus informatiques. Nous avons utilisé deux versions améliorées du classifieur SVDD ainsi qu’une technique d’extraction des caractéristiques à partir des fichiers exécutables connue sous le nom de N-gramme pour remédier auxdits problèmes. Les méthodes proposées ont été testées sur des bases de données réelles de spams et de virus. Les résultats en termes du taux de reconnaissance ont prouvé que ces méthodes sont capables de détecter la majorité des virus et des spams inconnus de la base expérimentale.

Les perspectives de ce travail sont nombreuses, elles portent à la fois sur la recherche de nouvelles améliorations du SVDD et sur l’application de ce classifieur ainsi que ces versions améliorées sur d’autres problèmes de classification. L’un des problèmes importants qui reste posé est la minimisation de la complexité temporelle de SVDD. En effet, l’apprentissage par ce dernier

Conclusion générale

130 impose la résolution d’un problème quadratique convexe sous contraintes, ce qui demande un temps d’apprentissage trop élevé, en particulier pour les grandes bases. Ajouté à cela le problème de la séparabilité des classes qui n’est jamais résolu complètement malgré les améliorations apportées de nos jours.

Bibliographie

131

Bibliographie

[1] T. Oda and T. White. "Developing an Immunity to Spam". In Proceedings of the Genetic and Evolutionary Computation Conference, pages 231-242, Chicago, IL, July 12-16, 2003.

[2] D.O. Hebb, "The organization of behaviour". Wiley, New York, 1949.

[3] T.S. Lim, W.Y. Loh, and Y.S. Shih. "A comparison of prediction accuracy, complexity and training of thirty-three old and new classification algorithms". Machine Learning, Vol. 40, N°. 3, pages 203-228, 2000.

[4] J. Ghosh and A. Nag. "An overview of radial basis function networks". Radial Basis Function Neural Network Theory and Applications, Physica-Verlag, Heidelberg, 2000.

[5] J. J. Hopfield. "Neural Networks and Physical System with Emergent Collective Computational Abilities". In proceedings of the National Academy of Sciences, Vol. 79, N°. 8, pages 2554-2558, USA, 1982.

[6] M. Cochez and H. Mouy, "Twister Tries: Approximate Hierarchical Agglomerative Clustering for Average Distance in Linear Time". In proceedings of the ACM SIGMOD International Conference on Management of Data, pages 505-517, Melbourne, Australia, May 31 - June 4, 2015.

[7] K.P. Wu and S.D. Wang. "Choosing the kernel parameters for support vector machines by the inter- cluster distance in the feature space". Pattern Recognition, Vol. 42, N°. 5, pages 710-717, 2009.

[8] C.F. Lin and S.D. Wang. "Training algorithms for fuzzy support vector machines with noisy data". Pattern Recognition Letters, Vol. 25, N°. 14, pages 1647-1656, 2004.

[9] E. Cantu-Paz and C. Kamath. "Inducing Oblique Decision Trees with Evolutionary Algorithms". IEEE Transactions on Evolutionary Computation, Vol. 7, N°. 1, pages 54-68, 2003.

[10] R. Polikar, L. Upda, S.S. Upda, and V. Honavar. "Learn++ : an incremental learning algorithm for supervised neural networks" . IEEE Transactions on Systems, Man, and Cybernetics, Part C, Vol. 31, N°. 4, pages 497- 508, 2001.

[11] T. Hofmann, B. Scholkopf, and A.J. Smola. "Kernel methods in machine learning", The Annals of Statistics, Vol. 36, N°. 3, pages 1171-1220, 2008.

[12] C. Richard, F. Abdallah, and R. Lengellé. "Algorithmes séquentiels pour l'analyse de données par méthodes à noyau ". Traitement du signal, Vol. 21, N°. 2, pages 97-108, 2004.

[13] S.W. Lin, Z.J. Lee, S.C. Chen, and T.Y. Tseng. "Parameter determination of support vector machine and feature selection using simulated annealing approach". Applied Soft Computing, Vol. 8, N°. 4, pages 1505-1512, 2008.

[14] O. Chapelle, B. Schölkopf, and A. Zien. "Semi-Supervised Learning". Adaptive computation and machine learning. MIT Press, Cambridge, Mass., USA, 2006.

[15] R. Rojas. "Neural Networks - A Systematic Introduction", Springer-Verlag, Berlin, New-York, 1996. [16] M. El boujnouni, M. Jedra, and N. Zahid. “Email Spam filtering using the combination of two

improved versions of Support Vector Domain Description”, In Proceedings of the 10th International Conference on Computational Intelligence in Security for Information Systems (CISIS15), International Joint Conference Advances in Intelligent Systems and Computing Volume 369, pages 99- 109, Burgos, Spain, 15-17 June, 2015.

[17] A. Almaksour, H. Mouchère, and E. Anquetil. "Apprentissage incrémental et synthèse de données pour la reconnaissance de caractères manuscrits en-ligne". 10ème Colloque International Francophone sur l'Ecrit et le Document, pages 55-60, Rouen, France, 28-30 October, 2008.

[18] S. Ben-david, E. Kushilevitz, and Y. Mansoury. "Online Learning versus Offline Learning", Machine Learning, Vol. 29, N°. 1,pages 45-63, 1997.

Bibliographie

132 [19] S.K. Murthy, S. Kasif, and S. Salzberg. "A System for Induction of oblique Decision Trees". Journal

of Artificial Intelligence Research, Vol. 2, N°. 1, pages 1-32, 1994.

[20] C.E. Brodley and P.E. Utgoff. "Mutlivariate Decision Trees". Machine Learning, Vol. 19, N°. 1, pages 45-77, 1995.

[21] F. Jinglong, W. Wanliang, W. Xingqi, L. Zhe, L. Dongsheng, and Z. Qili . "A SVDD Method Based on Maximum Distance between Two Centers of Spheres". Chinese Journal of Electronics, Vol. 21, N°. 1, 2012.

[22] P.E. Utgoff, N.C. Berkman, and J.A. Clouse. "Decision tree induction based on efficient tree restructuring". Machine Learning, Vol. 29, N°. 1, pages 5-44, 1997.

[23] P. Pantel and D. Lin. "Spamcop: A spam classification & organization program". In proceedings of the AAAI Workshop on Learning for Text Categorization, pages 95-98, Madison, Wisconsin, July 27, 1998.

[24] A. Cornuéjols and L. Miclet. "Apprentissage artificiel concepts et algorithmes". Edition Eyrolles, Paris, 804 pages, 2011.

[25] X. Carreras, L. Marquez, and J.G. Salgado. "Boosting trees for anti-spam email filtering". In

Proceedings of the 4th International Conference on Recent Advances in Natural Language Processing,

pages 58-64,Tzigov Chark, Bulgaria, 5-7 September, 2001.

[26] B.D. Ripley. "Neural networks and related methods for classification". Journal of the Royal Statistical Society, Series B, Vol. 56, N°. 3, pages 409-456, 1994.

[27] C.M. Bishop. "Neural Networks for Pattern Recognition". Oxford University Press, New York, 1995. [28] K. Pearson. "On lines and planes of closest fit to systems of points in space" . Philosophical

Magazine, Vol. 2, N°. 6, pages 559-572, 1901.

[29] H. Hotelling. "Analysis of a complex of statistical variables into principal components". Journal of Educational Psychology, Vol. 24, N°. 6, pages 417-441, 1933.

[30] P.H. Sneath and R.R. Sokal. "Numerical Taxonomy: the principals and practice of numerical classification ". W. H. Freeman and Company Edition, San Francisco, 1973.

[31] B. King. "Step wise clustering procedures". Journal of the American Statistical Association, Vol. 69, N°. 317, pages 86-101, 1967.

[32] J. H. Ward. "Hierachical grouping to optimize an objective function". Journal of the American Statistical Association, Vol. 58, N°. 301, pages 236-244, 1963.

[33] F. Murtagh. "A survey of recent advances in hierarchical clustering algorithms which use cluster centers". Computer Journal, Vol. 26, N°. 4, pages 354-359, 1984.

[34] G. Haffari. "A Survey on Inductive Semi-Supervised Learning". Technical report, School of Computing Science, Simon Fraser University, 2005.

[35] M. Seeger. "Learning with Labeled and Unlabeled Data". Technical report, The Institute for Adaptive and Neural Computation, University of Edinburgh, UK, 2000.

[36] X. Zhu. "Semi-Supervised Learning Literature Survey". Technical Report, Computer Sciences, University of Wisconsin-Madison, 2005.

[37] A. Blum and T. Mitchell. "Combining Labeled and Unlabeled Data with Cotraining ". In Proceedings

of the 11th Annual Conference on Computational Learning Theory. Morgan Kaufmann Publishers,

pages 92-100, ACM, New York, USA, July 24-26, 1998.

[38] G. Stempfe. "Robustesse des Séparateurs Linéaires au Bruit de Classification ". Thèse de doctorat, Université de Aix-Marseille ,1999.

Bibliographie

133 [40] J. R. Quinlan. "C4.5: Programs for machine learning". Morgan Kaufmann Publishers, San Mateo,

California, 1993.

[41] L. Breiman, J.H. Friedman, R.A. Olshen, and C.J. Stone. "Classification and Regression Trees". Technical report, Wadsworth International Group, Belmont, CA, 1984.

[42] P.E. Utgoff. "Incremental induction of decision trees". Machine Learning, Vol. 4, N°. 2, pages 161- 186, 1989.

[43] I. Androutsopoulos, G. Palouras, V. Karkaletsis, G. Sakkis, C. Spyro-poulos , and P. Stamatopoulos. "Learning to Filter Spam E-Mail: A Comparison of a Naive Bayesian and a Memory-Based Approach ".In proceedings of the workshop Machine Learning and Textual Information Access, 4th European Conference on Principles and Practice of Knowledge Discovery in Databases, pages 1-13, Lyon, France, 13-16 September 2000.

[44] N. Sebe, M.S. Lew, I. Cohen, A. Garg , and T.S Huang. "Emotion recognition using a cauchy naive bayes classifier". In Proceedings of the 16th International Conference on Pattern Recognition, pages 17- 20, Quebec City, Canada, 11-15 August, 2002.

[45] J.C. Schlimmer and D. Fisher. "A case study of incremental concept induction". In Proceedings of the