Discussion:Détection de logiciels malveillants renforcée par apprentissage automatique

Le contenu de la page n’est pas pris en charge dans d’autres langues.
Une page de Wikipédia, l'encyclopédie libre.
Autres discussions [liste]
  • Admissibilité
  • Neutralité
  • Droit d'auteur
  • Article de qualité
  • Bon article
  • Lumière sur
  • À faire
  • Archives
  • Commons

Méthode relecture[modifier le code]

Bonjour,

Dans le cadre du projet IIR, nous allons procéder à la relecture de votre article.

Nous interviendrons de la manière suivante :

  • Une première relecture globale pour comprendre le sujet et vérifier les tournures de phrases et l’orthographe auquel nous vous ferons un retour dans ce même fil de discussion.
  • Une seconde lecture (partagée entre les relecteurs) de l’article et des références pour vérifier que ce dernier reflète la réalité mentionnée dans la littérature technique. Nous vous ferons des commentaires au fil de l’eau.

Notre première remarque au sujet de votre article vient de sa rédaction dans deux langues : vous mixez le français et l’anglais. Avez-vous complétement terminé la rédaction et pouvons-nous commencer la relecture ?

Merci par avance pour votre collaboration.

Cordialement,

Olivier et Vincent

Vincent Raynaud (discuter) 11 janvier 2021 à 09:54 (CET)[répondre]

OlivierAlp (discuter) 11 janvier 2021 à 09:56 (CET)[répondre]

Bonjour Messieurs,
Tout d'abord, merci pour la qualité formelle de votre premier retour. Nous avons bien pris connaissance de votre plan d'intervention et ferons notre possible pour répondre à votre standard de qualité. Concernant votre première remarque, nous avons été quelque peu débordés ces dernières semaines et sommes en train de finaliser l'article. Les citations en Anglais sont bien entendu vouées à disparaitre d'ici quelques jours dans la mesure où l'article sera rédigé intégralement en français.
Veuillez bien croire que nous faisons notre possible pour terminer la rédaction dans les prochains jours, en prenant soin de continuer à refléter la réalité mentionnée dans la littérature technique malgré l'urgence manifeste de la situation.
Je vous invite donc autant que possible à nous gracier de quelques jours supplémentaires avant votre première relecture - si cela vous sied bien entendu.
Merci de même pour votre collaboration.
Cordialement,
Charles et Kevin 11 janvier 2021 à 10:57 (CET)[répondre]
Bonjour Messieurs,
Nous vous remercions pour votre retour que nous avons bien pris en compte ainsi que votre demande de délais supplémentaire pour finaliser l'écriture de votre article.
Nous venons de vérifier votre article ce matin qui ne semble pas finalisé. En effet, des passages en anglais sont toujours présents.
Pouvez vous nous informer dès que ce dernier est terminé ?
En attendant cette date, êtes vous en mesure de nous communiquer des parties déjà finalisées afin de commencer la relecture de ces passages précis. Nous vous remercions par avance.
Cordialement,
OlivierAlp et Vincent Raynaud (discuter) 13 janvier 2021 à 10:47 (CET)[répondre]
Bonjour messieurs,
Je suis confus pour le retard, j'en prend l'entière reponsabilité dans la mesure où la partie non terminée est celle à ma charge.
Je la termine dans l'après midi.
Veuillez m'excuser de rendre votre travail plus hardu qu'il ne devrait l'être.
Bonne fin de semaine à vous marlgré tout
Charles

Relecture[modifier le code]

Bonjour messieurs,

Suite à notre cours d'Innovation et Recherche ce jour, nous allons commencer la relecture de votre article. Votre article étant toujours en cours d'écriture, nous débuterons par la deuxième partie, le sujet général en se partageant le contenu. Nous espérons pouvoir vous apporter des retours pertinents pouvant vous aider.

Cordialement,

OlivierAlp et Vincent Raynaud (discuter) 15 janvier 2021 à 16:25 (CET)[répondre]

Bonjour Messieurs,
Merci pour cette relecture très étoffée, nous allons faire de notre mieux
pour corriger le plus d'éléments possible en accord avec vos suggestions.
Charles et Kevin

Relecture OlivierAlp[modifier le code]

Résumé introductif[modifier le code]

A ce jour, il manque le résumé introductif.

fait

OlivierAlp (discuter) 15 janvier 2021 à 16:33 (CET)[répondre]

Enjeux[modifier le code]

Ce paragraphe repose que sur 2 source : la 1ere phrase et la dernière. Tout le reste n’est pas référencié.

fait

Le lien de votre 2eme référence (Or-Meir 2019, p. 3) vers la bibliographie ne fonctionne pas.

fait

Je pense que vous pouvez joindre le lien de l’article Wiki « Apprentissage automatique » comme article principale au début de cette partie, ce qui permettra de mieux comprendre ce que l’apprentissage automatique.

fait

Je pense aussi que les articles ci-dessous peuvent être intéressants pour développer ce paragraphe notamment sur le lien entre l’apprentissage automatique et l’intelligence artificielle:

Nous avons fait le choix de ne parler à aucun moment dans l'article d'intelligence artificielle, puisqu'il s'agit ici uniquement de ML (qui n'est qu'un champ d'étude de l'IA). Nous avons donc choisi de ne pas faire de lien particulier entre les deux en supposant que ce n'était pas le rôle de l'article et qu'il serait remis à la sensibilité du lecteur d'aller se renseigner ou non sur le sujet.

Vous pouvez aussi ajouter un graphique comme sur le lien ci-dessous qui illustre bien «l’augmentation significative de la présence de logiciel malveillants sur Internet ».

Ajouter un graphique serait une bonne idée mais compliqué de choisir la source / refaire le graphique sans les données précises.

OlivierAlp (discuter) 20 janvier 2021 à 09:30 (CET)[répondre]

Vous pouvez développer d'avantage la comparaison entre les méthodes de détection actuelle et la détection automatique. Vous pouvez vous appuyer sur les articles ci-dessous:

OlivierAlp (discuter) 26 janvier 2021 à 13:03 (CET)[répondre]

Approches et méthodes d'analyse[modifier le code]

Le lien de votre 4eme référence vers la bibliographie ne fonctionne pas.

fait

Pour le terme « taxonomie vous pouvez ajouter un lien bleu sur la page wiki « Taxonomie (homonymie) » qui nous permettra de comprendre l’utilisation de ce terme en informatique.

fait

OlivierAlp (discuter) 20 janvier 2021 à 09:31 (CET)[répondre]

Extraction de caractéristiques[modifier le code]

Dans plusieurs articles, il apparait la possibilité de combiner l'analyse statique et l'analyse dynamique ( parfois appelé "analyse hybride"), je vous suggère de développer un paragraphe dessus:

En effet, nous n'en avons pas parlé par manque de temps. Le sujet est d'ailleurs complexe à traiter puisqu'il est très courrant que l'analyse combine en réalité plusieurs "feature" extraites pour en faire un modèle plus fiable, dans la mesure où on se base sur de faibles preuves mais en très grand nombre pour déterminer si un fichier est virulent ou non.

Ci-dessous des liens pouvant vous fournir des complètements d'information sur cette partie.

Vous pouvez aussi reprendre un schéma comparant les types d’analyses :

Inclure un schéma serait en effet une bonne idée, et celui ci est également bien adapté à la situation. Ceci étant dit, je ne sais pas trop quelle est la politique de références pour un schéma. Faudrait-il sources les différentes affirmations qui sont avancées pour chaque "pros and cons" ? Ou citer l'article dont il est extrait serait suffisant ?

OlivierAlp (discuter) 20 janvier 2021 à 10:16 (CET)[répondre]

Analyse statique[modifier le code]

Il ne faut pas de "s" a statique dans le titre "Analyse statiques"

fait

Le lien de votre 4eme référence est en erreur (Balise incorrecte).

fait

Votre 2eme partie n’a pas de référence

fait

Dans la 2eme partie, vous dites que « l’analyse statique est moins consistante qu'une analyse virale in situ » mais vous ne n’expliquait jamais l’analyse virale in situ dans votre article

C'est une tournure différente pour parler de la même chose sans répétition.
Analyse in situ = analyse du malware dans son environnement d'exécution, donc dynamique.
("In Situ" est utilisée en général pour désigner une opération ou un phénomène observé sur place, à l'endroit où il se déroule, par opposition à ex situ)

OlivierAlp (discuter) 20 janvier 2021 à 09:19 (CET)[répondre]

Vous pouvez citer le types d'outils utilisés dans ce type d'analyse et aussi les informations utiles qu'on peut extraire par ce types d'analyse. L'article ci-dessou peut vous aider:

Correspond plutôt à la partie #Projets_et_outils_notoires ?
Analyse du code binaire[modifier le code]

Le lien de votre 8eme référence (Santos 2009, p. 317-320) vers la bibliographie ne fonctionne pas.

fait
Analyse des codes d'opération (Opcodes)[modifier le code]

Pour le terme « Opcodes » vous pouvez ajouter un lien bleu sur la page wiki «Code opération »

c'est déjà le cas

Vous classez Opcodes dans l’analyse statique alors qu’elle doit être classé dans l’ Analyse Dynamique : Je cite votre article référencé pour cette partie : « Such dynamic analysis reveals the code at runtime, allowing the true behaviour to be examined .. »

Modification effectuée entre temps

OlivierAlp (discuter) 20 janvier 2021 à 10:15 (CET)[répondre]

Autres approches[modifier le code]

L’article « (en) Saad, Briguglio et Elmiligi, « The Curious Case of Machine Learning In Malware Detection », 5th International Conference on Information Systems Security and Privacy,‎ 2019, p. 1-9” correspondant a votre référence 12 ne peut pas être consulté en ligne, il manque le lien.

fait

Le lien de votre 13eme référence (Ahmadi 2016, p. 4) vers la bibliographie ne fonctionne pas et je ne retrouve pas l’article correspondant.

fait

Idem pour le lien de votre 14eme référence.

fait

La rédaction de cette partie manque de précision. Ci-dessous quelques articles qui pourront vous aider à terminer la rédaction :

j'ai un peu de mal à voir la pertinence des sources et leur contribution à cette partie qui se veut en réalité non exhaustive. Peut-être qu'un survey aurait été plus adapté ?

OlivierAlp (discuter) 20 janvier 2021 à 09:20 (CET)[répondre]


Liens pour compléter votre articles :

Métadonnées : https://ieeexplore.ieee.org/abstract/document/9172877

source en effet pertinente, mais le but de cette partie est de lister de façon non-exhaustive les approches que nous n'avons pas pu traîter dans leur entièreté, car moins importantes à nos yeux. L'analyse des métadonnées est souvent citée dans les papiers que nous avons consultés mais fait généralement partie d'un modèle plus vaste, contenant d'autre "features". Il semble délicat de baser une classification entière sur cette simple donnée, parfois très succinte.
J'ai ajouté la source, mais pas étoffé la partie à ce sujet.

Entropie: https://link.springer.com/chapter/10.1007/978-3-030-59635-4_5 Chap 2

Je n'ai pas retrouvé le passage correspondant ou téléchargé la mauvaise ressource (accès difficile)

Registres: Vous classez l'analyse des registres dans l’analyse statique alors que dans plusieurs articles elle est classée dans l’ Analyse Dynamique :

Il s'agit de deux types de registres différents (registre système et registres processeur). Comme expliqué dans mon autre commentaire à ce sujet, j'ai modifié les deux parties pour clarifier la situation.

OlivierAlp (discuter) 26 janvier 2021 à 14:23 (CET)[répondre]

Analyse Dynamique[modifier le code]

2eme ligne: vous employez le terme " bac a sable", vous pouvez ajouter un lien bleu vers la page wiki Sandbox ( https://fr.wikipedia.org/wiki/Sandbox_%28s%C3%A9curit%C3%A9_informatique%29) pour l'expliquer.

fait

2eme ligne, il y a 1 faute d’orthographe a « conaissance », il manque 1 n

fait

Vous citez l’analyse des registres comme une analyse dynamique élevé ( ligne 8) alors que vous avez place l’analyse des registres dans le paragraphe "autres approches" de l’analyse statique.

Il s'agit en effet de deux choses différentes.
Dans la méthode statique on analyse le code assembleur pour voir les interractions avec les registres du processeur.
Dans le cas de l'analyse dynamique, "registre" évoque les registres du systèmes d'exploitation, à bien plus haut
niveau donc. Cette différence est très facilement remarquable une fois les articles sous les yeux, mais mériterait
une clarification dans notre article j'en conviens. Je vais essayer de reformuler plus correctement.

Les 3 liens des références (Or-Meir 2019 et Okane 2014, p. 1) vers la bibliographie ne fonctionnent pas.

fait

La rédaction de la fin cette partie manque de précision. Ci-dessous quelques articles qui pourront vous aider pour la rédaction:

OlivierAlp (discuter) 20 janvier 2021 à 09:21 (CET)[répondre]

Analyse des appels de fonction[modifier le code]

La rédaction de cette partie manque de précision. Voir les articles ci-dessus qui pourront vous aider pour la rédaction.

fait

Voir aussi cet article:

fait

Faute d'orthographe a 'interrieur', il n'y a qu'un r

fait

OlivierAlp (discuter) 26 janvier 2021 à 16:03 (CET)[répondre]

Analyse de la mémoire[modifier le code]

La rédaction de cette partie manque de précision. Voir les articles ci-dessus qui pourront vous aider pour la rédaction.

Voir aussi cet article:

Analyse du réseau[modifier le code]

La rédaction de cette partie manque de précision. Voir les articles ci-dessus qui pourront vous aider pour la rédaction.

Voir aussi cet article:

Classification[modifier le code]

Le lien de votre 17eme référence est en erreur (Balise incorrecte).

fait

Vous pouvez détailler la méthode de la classification de la détection du pb jusqu’à la fin – voir les liens ci-dessous :

Nous avons fait le choix de rester concis sur ce point. Il y a énormément de choses à dire dessus
et nous ne trouvions pas cela nécessaire de rentrer plus dans les détails dans la mesure où (presque) chaque
protocole de classification employé est différent, et que cela relève presque plus de la conaissance
du ML que de la classification de malware particulièrement.

OlivierAlp (discuter) 19 janvier 2021 à 08:59 (CET)[répondre]

Relecture Vincent Raynaud[modifier le code]

Limites et contre mesures[modifier le code]

Crédibilité des résultats[modifier le code]

Ligne 1 : Le premier article (Grosse 2017, p. 1) ne possède pas de DOI ni d’ISSN et les pages ne correspondent pas dans la citation (il faut remplacer page 1 par page 62)

Ligne 2 : Problème de page sur la citation. La page n’existe pas dans l’article (Sewak 2018, p. 9).

Ligne 4-6 : L’article ne possède pas de DOI (Saad 2019)

La dernière phrase n'est pas référencée.

Dans cette section, il est expliqué ce qui peut influencer la qualité des résultats mais nous ne savons pas d’où nous partons. Les résultats obtenus dans les articles cités sont plutôt prometteurs, contraster cette section peut être intéressant pour se faire une idée.

Cf tableau des résultats obtenus en fonction des méthodes de l'article suivant : https://www.researchgate.net/profile/Rami_Sihwail/publication/328760930_A_Survey_on_Malware_Analysis_Techniques_Static_Dynamic_Hybrid_and_Memory_Analysis/links/5d73c61892851cacdb28d68f/A-Survey-on-Malware-Analysis-Techniques-Static-Dynamic-Hybrid-and-Memory-Analysis.pdf p 4

Vincent Raynaud (discuter) 19 janvier 2021 à 09:33 (CET)[répondre]

Difficulté de construction du modèle[modifier le code]

Ligne 3-5-14-22 : L’article ne possède pas de DOI (Saad 2019)

Ligne 6 : Erreur de frappe sur la page de référence : Carlin 2019, p. 1138–155

Ligne 7 : lier le terme évasion à l’article Wiki Évasion (informatique) : évasions

La plupart des faits évoqués dans cette section ne reposent que sur un seul article non validé scientifiquement (DOI et ISSN)

Vincent Raynaud (discuter) 19 janvier 2021 à 09:49 (CET)[répondre]

Furtivité et méthodes d'évasion[modifier le code]
Analyse de l'environnement d'exécution[modifier le code]

Ligne 4 : Le lien de référence (Or-Meir 2019, p. 102) est cassé

Ajouter la plume sur cet article : (en) Afianian, Niksefat, Sadeghiyan et Baptiste, « Malware Dynamic Analysis Evasion Techniques: A Survey », ACM Computing Surveys, vol. 52,‎ 2019, p. 1-28 (ISSN 0360-0300, DOI 10.1145/3365001)

Vincent Raynaud (discuter) 19 janvier 2021 à 12:14 (CET)[répondre]

Méthodes d'évasion[modifier le code]

Revoir le sens de la fin de la première phrase : Les techniques d'évasions sont plus nombreuses et plus sophistiquées ce qui augmente la difficulté de conception des modèles et des algorithmes de détection ou des antivirus, de plus même après leurs développement, ils deviennent très rapidement obsolètes.

Dans chaque méthode d'évasion présentée ci-dessous, ll n’y a pas de rapprochement qui est fait avec le sujet initial. Il serait intéressant de faire plus le lien avec l’apprentissage automatique dans cette section. Que peut apporter l’apprentissage automatique pour être plus robuste aux évasions par rapport à une autre méthode ? Est-ce qu’il y’a des approches en cours sur cette problématique avec l’apprentissage automatique ?

Dans l'article que vous utilisez principalement Or-Meir(2019),il est expliqué que le but de cette enquête est de fournir un aperçu complet des méthodes existantes utilisées pour analyser dynamiquement les logiciels malveillants, qui comprend :

  • une description de chaque méthode
  • ses forces
  • ses faiblesses
  • sa résistance aux techniques d'évasion des logiciels malveillants.

Ils font ici le lien entre la technique de détection utilisée et la robustesse contre l'évasion alors que dans votre page wiki, vous expliquez les techniques d'évasions et vous expliquez (pour l'évasion par le réseau) comment utiliser l'apprentissage automatique pour ne pas être détecter. (expliqué dans cet article : https://www.ripublication.com/ijaer17/ijaerv12n18_21.pdf).

Article intéressant :

Vincent Raynaud (discuter) 26 janvier 2021 à 15:05 (CET)[répondre]

Évasion par escalade de privilège

Ligne 3-5 : Lien référence cassé et la page ne correspond pas.

Évasion par offuscation de code

Ligne 3-5-7 : Lien référence cassé (Or-Meir 2019, p. 104)

Ligne 3 : Corriger la référence (Ye2017)

Même remarque que la section précédente sur le sujet initial.

Evasion par absence de fichier

Ligne 4-8 : Lien référence cassé (Or-Meir 2019, p. 104)

Ligne 8 : L’article ne possède pas de DOI (Saad 2019)

Ajouter plume sur cet article: (en) Handaya, Yusoff et Jantan, « Machine learning approach for detection of fileless cryptocurrency mining malware », Journal of Physics: Conference Series, vol. 1450,‎ 2020, p. 1-8 (DOI 0.1088/1742-6596/1450/1/012075)

Evasion par le réseau

Ligne 3 : Lien référence cassé (Or-Meir 2019, p. 105)

Ligne 6 : Article sans DOI (Saad 2019)

Ligne 8 : revoir les références

Dans cette section, un lien est fait avec l'apprentissage automatique. Par contre cette technique est utilisée pour détourner l'attention des détecteurs de malware et non dans le but d'aider la détection (le sujet).


Vincent Raynaud (discuter) 19 janvier 2021 à 13:51 (CET)[répondre]

Projets et outils notoires[modifier le code]

Rédaction non terminée.

Il serait intéressant de faire un descriptif des outils/projets afin de connaitre les particularités de chacun et les classifier par type d'analyse. Cet article peut vous aider pour cette classification :

https://tel.archives-ouvertes.fr/tel-01466764/document (page 40).

Par exemple, dans le cas d'Anubis, c'est un projet d'outil d'analyse dynamique en temps réel qui scanne les pilotes de périphériques Windows malveillants. Il peut être intéressant également de connaitre l'environnement sur lequel évolue le projet/outil.

Récap des projets
Nom projet Type d'analyse Environnement
Anubis Analyse Dynamique Pilote Windows
... ... ...

Vincent Raynaud (discuter) 20 janvier 2021 à 15:38 (CET)[répondre]

Il peut être intéressant d'avoir la vision des grands du domaine anti-malware :

Vincent Raynaud (discuter) 26 janvier 2021 à 15:14 (CET)[répondre]

Relecture VS2i[modifier le code]

Bonjour,
Je me suis permis de refaire un peu la mise en forme de votre
correction sinon difficile à suivre.
Je vais ajouter un message concis à chaque fois qu'une remarques est corrigée.
Merci de ne pas prendre la petite taille des réponses comme un manque de considération,
vous comprendrez qu'il serait trop fastidieux d'épilogue sur chaque remarque.
Merci pour votre retour.
Charles

Bonjour, Nous procédons à une relecture de votre veille technologique. Veuillez afficher le mode modification pour un affichage ultime.

Correction à apporter

  • donner une introduction ;
fait
  • des erreurs de mise en page -> absence / présence de points, virgules ou point virgules
probablement vrai, cependant remarque pas très pertinente sans exemple

Enjeux

  • ligne 4 industriel au lieu de industries.
discutable en effet, modifié
  • référence à la fin de chaque paragraphe.
fait
  • la dernière paragraphe est en anglais alors que la veille est en français
fait

Approches et méthodes d'analyse

  • Analyse statiques -> statique*
fait
  • Analyse statique -> deuxième paragraphe sans référence
fait
  • Analyse statique -> référence 4 ne marche pas
fait
  • Analyse du code binaire -> la première et la fin de la deuxième paragraphe sans référence
le premier paragraph fait référence à une autre page wikipedia et en fait une courte paraphrase pour mettre du contexte.
Le reste est très largement alimenté en sources.
  • Analyse des codes d'opération (Opcodes)-> paragraphe en anglais
modification effectuée entre temps
  • Analyse des codes d'opération (Opcodes)-> absence de référence dans paragraphe 1 et 2
les références sont à retrouver dans les différentes approches qui viennent sourcer le paragraphe d'introduction. Il serait répétitif de simplement les copier coller.
  • Autres approches -> paragraphe en anglais
fait
  • Analyse Dynamique -> paragraphe 3 sans référence
fait, sourcé par référence aux techniques de furtivité (et donc leur impact)
  • Analyse des appels de fonction -> absence de référence
fait
  • Analyse de la mémoire -> absence de référence
  • Analyse du réseau -> paragraphe est en anglais
fait
  • Analyse du réseau -> à corriger le début du paragraphe
fait
  • Classification -> paragraphe 1 et 3 sans référence
fait pour paragraphe 1, difficile de sourcer le paragraphe 3 sans être obsessionnel.
  • Classification -> référence 17 ne marche pas
fait

Limites et contre mesures

  • Crédibilité des résultats -> des phrases trop longs / absence de points
  • Crédibilité des résultats -> absence de références à la fin des paragraphes
  • Difficulté de construction du modèle -> des phrases trop longs / absence de points
  • Difficulté de construction du modèle -> absence de références à la fin des paragraphes
  • Analyse de l'environnement d'exécution -> absence de références à la fin des paragraphes
  • Évasion par offuscation de code -> absence de références à la fin des paragraphes
  • Evasion par le réseau -> absence de références à la fin des paragraphes
  • Références : référence 4 et 17 à corriger
fait

Sujet de l'article[modifier le code]

Bonjour. Au hasard de ma patrouille je tombe sur votre brouillon d'article. Je me permets quelques remarques pour le rendre conforme à ce qu'on attend d'un article sur Wikipédia. Tout d'abord, quel est le sujet de l'article ? Je n'ai pas réussi à le savoir. Celui-ci doit être clairement indiqué dans le résumé introductif et les mots correspondant à son titre mis en gras. Pour information, il existe déjà un article Logiciel malveillant. Comment votre brouillon se positionne-t-il par rapport à cet article existant ? Enfin, attention à conserver un style encyclopédique et à bien définir tous les termes que vous utilisez (ce n'est pas le cas pour nombre d'entre eux). Votre article ne s'adresse pas à des universitaires ni à des spécialistes du domaine, mais à des lecteurs lambda, il faut donc clarifier au maximum (tant que possible, bien sûr) tous les concepts utilisés. Cordialement, Culex (discuter) 9 février 2021 à 23:24 (CET)[répondre]