Code malveillant : qu'est-ce que c'est et comment l'empêcher ?
Qu'est-ce qu'un code malveillant ?
Le paysage actuel des cybermenaces est devenu plus sophistiqué et plus difficile. Le nombre de cyberattaques et de violations de données a explosé ces dernières années, tant en ampleur qu’en ampleur. Les statistiques récentes sur les logiciels malveillants montrent que les logiciels malveillants restent un problème important dans le monde entier. Au centre de ces défis de sécurité se trouve une sinistre application appelée code malveillant. Un code malveillant ou malware est tout logiciel créé intentionnellement pour agir contre les intérêts de l'utilisateur de l'ordinateur en causant des dommages au système informatique ou en compromettant les données stockées sur l'ordinateur.
Depuis que l’accès Internet haut débit est devenu omniprésent, les logiciels malveillants ont plus souvent été conçus pour prendre le contrôle des ordinateurs des utilisateurs à des fins lucratives ou à d’autres fins illicites telles que la modification, le vol, la destruction, le sabotage ou la prise d’otages de données. La plupart des logiciels malveillants peuvent s'installer sur le système de la victime, faire des copies d'eux-mêmes et se propager à d'autres victimes, utiliser un événement pour lancer l'exécution de leur charge utile (voler ou supprimer des fichiers, installer des portes dérobées, etc.), se supprimer une fois la charge utile exécutée, et utilise toutes sortes de techniques d'évasion pour éviter d'être détecté. Certaines des méthodes utilisées pour échapper à la détection comprennent :
- Évasion de la détection en prenant les empreintes digitales de l'environnement lors de l'exécution.
- Confondre les outils de détection automatisés tels que les logiciels antivirus basés sur les signatures en modifiant le serveur utilisé par le malware.
- Exécuter en suivant des actions spécifiques entreprises par l'utilisateur ou pendant des périodes de vulnérabilité spécifiques, comme pendant le processus de démarrage, tout en restant inactif le reste du temps
- Ils obscurcissent les données internes afin que les outils automatisés ne détectent pas les logiciels malveillants.
- Utiliser des techniques de dissimulation d'informations telles que la stéganographie pour échapper à la détection (stegomalware)
Comment se produisent les infections par des logiciels malveillants ?
Les infections par logiciels malveillants peuvent affecter votre ordinateur, vos applications ou l’ensemble d’un réseau. Les infections se produisent par divers moyens, notamment physiques et virtuels. Les auteurs de logiciels malveillants utilisent souvent des astuces pour tenter de convaincre les utilisateurs de télécharger et d'ouvrir des fichiers malveillants. Par exemple, attaques de phishing sont une méthode courante de diffusion de logiciels malveillants dans laquelle les e-mails déguisés en messages légitimes contiennent des liens ou des pièces jointes malveillants qui peuvent transmettre le fichier exécutable du logiciel malveillant à des utilisateurs sans méfiance.
Les logiciels malveillants peuvent également se propager via des disques amovibles infectés tels que des clés USB ou des disques durs externes. Le malware peut être automatiquement installé lorsque vous connectez le lecteur infecté à votre PC. De plus, certains logiciels malveillants sont fournis avec d’autres logiciels que vous téléchargez. Cela inclut les logiciels provenant de sites Web tiers, les fichiers partagés via des réseaux peer-to-peer, les programmes utilisés pour générer des clés logicielles (keygens), les barres d'outils du navigateur et les plugins, entre autres.
Les attaquants peuvent profiter des défauts (vulnérabilités) des logiciels existants en raison de pratiques de codage non sécurisées pour infecter votre application avec des codes malveillants. Le code malveillant peut prendre la forme d’attaques par injection ( Injection SQL , injection JSON, scripts intersites, etc. ), attaques par traversée de répertoires , falsification de requêtes intersites (CSRF) des attentats, entre autres. Un exemple typique de défauts dans un logiciel est le vulnérabilité de débordement de tampon . De nombreux logiciels malveillants exploitent les vulnérabilités de débordement de mémoire tampon pour compromettre les applications ou les systèmes cibles.
Les attaques de logiciels malveillants sophistiqués nécessitent souvent l'utilisation d'un serveur de commande et de contrôle qui permet aux acteurs malveillants de communiquer et de contrôler les systèmes infectés de manière réseau de zombies pour voler des données sensibles ou les amener à exécuter leurs ordres.
Comment savoir si votre ordinateur a été infecté par un code malveillant ? Un utilisateur peut être en mesure de détecter une infection par un logiciel malveillant s'il observe une activité inhabituelle telle qu'une perte soudaine d'espace disque, des vitesses prolongées, des mouvements étranges du curseur et des clics de souris, un refus d'accès à votre appareil ou à vos données, l'apparition d'applications inconnues. n'a pas été installé, trafic réseau anormal, entre autres.
Les logiciels malveillants affectent-ils Mac, Linux et les appareils mobiles ?
La plupart des utilisateurs pensent que seules les machines Windows sont vulnérables aux logiciels malveillants. Ils supposent que les utilisateurs d’appareils Linux et Mac sont immunisés et n’ont pas besoin de prendre de précautions. La vérité est que les logiciels malveillants peuvent affecter les appareils Windows, Linux et même Mac.
Les appareils Windows sont considérés comme une cible plus importante pour les logiciels malveillants que les autres plates-formes, car ils dominent la part de marché, ce qui en fait une cible plus importante et plus accessible pour les acteurs malveillants. Aujourd’hui, les Mac ne sont plus aussi sûrs qu’avant. À mesure que les appareils Mac gagnent en popularité, les auteurs de logiciels malveillants semblent se concentrer davantage sur eux. Selon Rapport sur l'état des logiciels malveillants 2020 de Malwarebytes , la quantité de logiciels malveillants sur les Mac dépasse pour la première fois celle des PC.
Il existe également des codes malveillants qui ciblent spécifiquement les systèmes d'exploitation des appareils mobiles tels que les tablettes, les smartphones et les montres intelligentes. Ces types de logiciels malveillants s'appuient sur les exploits de systèmes d'exploitation mobiles particuliers. Bien que les logiciels malveillants mobiles ne soient pas aussi répandus que les logiciels malveillants ciblant les postes de travail, ils deviennent une préoccupation croissante pour les appareils grand public.
Les appareils Apple iOS tels que les iPhones sont moins susceptibles d'être infectés par des logiciels malveillants que les appareils Android. En effet, les appareils iOS sont hautement verrouillés et les applications sont soumises à des contrôles approfondis avant d'accéder à l'App Store. Cependant, nous savons que certains gouvernements et criminels sophistiqués sont armés d’outils de piratage valant des millions de dollars qui peuvent pénétrer dans les iPhones. Néanmoins, les appareils iOS sont généralement plus sûrs et ne deviendront plus vulnérables qu’en cas de jailbreak.
Quels sont les types courants de logiciels malveillants ?
Le code malveillant est un terme général qui fait référence à une variété de programmes malveillants. Les exemples incluent les virus informatiques, les vers, les logiciels espions, les logiciels publicitaires, les rootkits, les bombes logiques, les logiciels malveillants sans fichier, les chevaux de Troie et les ransomwares.
Virus informatiques sont de petites applications ou des chaînes de codes malveillants qui infectent les systèmes informatiques et les applications hôtes. Les virus informatiques ne se propagent pas automatiquement ; ils nécessitent un support ou un support tel qu'une clé USB ou Internet pour se propager et corrompent ou modifient presque toujours des fichiers sur un ordinateur ciblé. Les virus informatiques se présentent sous différentes formes, parmi lesquelles :
- Virus polymorphe : le virus polymorphe tente d'échapper aux applications antivirus basées sur les signatures en modifiant sa signature lors de l'infection d'un nouveau système.
- Virus de compression : virus qui s'ajoute aux exécutables du système et les compresse en utilisant les autorisations de l'utilisateur.
- Virus de macro : virus écrit dans des langages de macro tels que les macros Microsoft Office ou Excel.
- Virus du secteur de démarrage : virus qui infecte le secteur de démarrage d'un PC et se charge au démarrage du système.
- Virus multipart : virus qui se propage via plusieurs vecteurs. Également appelé virus en plusieurs parties.
- Virus furtif : un virus qui se cache des systèmes d'exploitation en tant qu'applications antivirus.
Vers : Les vers sont des logiciels malveillants qui se répliquent pour se propager à d'autres ordinateurs. Ils sont plus contagieux que les virus et utilisent souvent un réseau informatique pour se propager, en s'appuyant sur des failles de sécurité sur l'ordinateur cible pour y accéder. Les vers sont dangereux en raison du code malveillant qu'ils transportent (charge utile) et de leur potentiel à provoquer une dégradation de la bande passante, voire un déni de service, en raison d'une auto-propagation agressive. L'un des vers informatiques les plus connus est Stuxnet , qui ciblait les systèmes Siemens SCADA. On pense qu'il est responsable des dommages considérables causés au programme nucléaire iranien.
Logiciels espions et publicitaires : Les logiciels espions sont un type de logiciel malveillant installé secrètement pour recueillir des informations (y compris les habitudes de navigation) sur un utilisateur ou une entité particulière, qu'il envoie ensuite à une autre entité à des fins malveillantes telles que le vol d'identité, le spam, les publicités ciblées, etc.
Logiciel publicitaire est un logiciel qui génère des revenus pour ses développeurs en générant automatiquement des publicités en ligne. Les publicités peuvent être diffusées via des fenêtres contextuelles, des composants d'interface utilisateur ou des écrans présentés lors du processus d'installation. L'objectif des logiciels publicitaires est de générer des revenus de vente, et non de mener des activités malveillantes, mais certains logiciels publicitaires utilisent des mesures invasives, qui peuvent entraîner des problèmes de sécurité et de confidentialité.
Rootkits : Un rootkit est un ensemble d'outils logiciels malveillants conçus pour permettre l'accès root à un ordinateur ou à une partie de ses logiciels qui n'est pas autrement autorisé. Des rootkits sont chargés sur le système compromis pour permettre à l'attaquant de mener des activités malveillantes tout en masquant ses traces. L'attaquant remplace généralement les outils système par défaut par de nouveaux outils compromis, qui partagent des noms similaires.
Les rootkits peuvent résider au niveau de l'utilisateur ou du noyau du système d'exploitation. Il peut également résider au niveau du firmware ou dans un hyperviseur d'un système virtualisé. Un rootkit au niveau utilisateur a des privilèges minimes et ne peut donc pas causer autant de dégâts. Si un rootkit réside dans l'hyperviseur d'un système, il peut exploiter les fonctionnalités de virtualisation matérielle et cibler les systèmes d'exploitation hôtes. Les rootkits dans le micrologiciel sont difficiles à détecter car la vérification de l'intégrité du logiciel ne s'étend généralement pas au niveau du micrologiciel. Détection et suppression des rootkits peut être compliqué car le rootkit peut être capable de subvertir le logiciel destiné à le trouver. Les méthodes de détection incluent des méthodes basées sur le comportement, une analyse basée sur les signatures et une analyse des vidages de mémoire.
Bombes logiques : Une bombe logique est un code malveillant inséré intentionnellement dans un système logiciel pour déclencher une fonction négative lorsque des conditions spécifiées sont remplies. Le logiciel de la bombe logique peut avoir de nombreux déclencheurs qui activent l'exécution de sa charge utile à un moment précis ou après qu'un utilisateur a effectué une action particulière. Par exemple, un acteur malveillant peut installer et configurer une bombe logique pour supprimer toutes les preuves numériques si des activités médico-légales sont menées.
Malware sans fichier : Malware sans fichier , comme son nom l'indique, n'écrit aucune partie de son activité dans des fichiers du disque dur de l'ordinateur ; au lieu de cela, il fonctionne exclusivement à partir de la mémoire de l’ordinateur de la victime. Puisqu’il n’y a aucun fichier à analyser, il est plus difficile à détecter que les logiciels malveillants traditionnels. Cela rend également les analyses plus difficiles, car le logiciel malveillant disparaît lorsque l’ordinateur de la victime est redémarré.
Puisqu’il n’existe aucun fichier à analyser par les outils antivirus et médico-légaux, la détection de tels logiciels malveillants peut être difficile. En 2017, Kaspersky Lab a publié un rapport sur les attaques de logiciels malveillants sans fichier affectant 140 réseaux d'entreprise dans le monde, les banques, les entreprises de télécommunications et les organisations gouvernementales étant les principales cibles.
Cheval de Troie: UN cheval de Troie désigne tout logiciel malveillant qui se déguise en programme légitime pour tromper les utilisateurs sur sa véritable intention. Les chevaux de Troie exécutent leurs fonctions normales attendues en plus des fonctions malveillantes en arrière-plan. Les utilisateurs sont généralement trompés par une certaine forme d'ingénierie sociale et les poussent à charger et à exécuter des chevaux de Troie sur leurs systèmes. Une fois installés, les chevaux de Troie peuvent également utiliser des leurres pour entretenir l’illusion de leur légitimité.
Par exemple, une fois exécuté, un cheval de Troie déguisé en fond d'écran ou en application de jeu s'exécutera généralement comme un fond d'écran ou une application de jeu. Pendant que l’utilisateur est distrait par ces leurres, le cheval de Troie peut effectuer discrètement des actions malveillantes en arrière-plan. Les chevaux de Troie sont classés selon le type d'actions malveillantes qu'ils effectuent. Les exemples incluent le cheval de Troie bancaire, cheval de Troie d'accès à distance (RAT) , cheval de Troie de porte dérobée, cheval de Troie FakeAV, etc. Des exemples notables de chevaux de Troie incluent Zeus, MEMZ et FinFisher.
Rançongiciel : Un ransomware est un type de malware qui menace de publier les données de la victime ou d’en bloquer perpétuellement l’accès en cryptant les fichiers de la victime à moins qu’une rançon ne soit payée. Les attaques de ransomware sont généralement menées dans le cadre d'une escroquerie par phishing ou à l'aide d'un cheval de Troie déguisé en fichier légitime que l'utilisateur est amené à télécharger ou à ouvrir lorsqu'il arrive sous forme de pièce jointe à un e-mail. L'attaquant procède au chiffrement d'informations spécifiques qui ne peuvent être ouvertes qu'à l'aide d'une clé mathématique qu'il connaît. Lorsque l'attaquant reçoit le paiement, les données sont déverrouillées.
Les attaques de ransomware notables incluent Vouloir pleurer (2017) et REvil (2020). Le rançongiciel WannaCry s'est répandu sur Internet en 2017, infectant plus de 230 000 ordinateurs dans plus de 150 pays et exigeant 300 dollars par ordinateur. REvil est un privé rançongiciel en tant que service (RaaS) opération qui menace de publier les données des victimes sur leur blog ( doxxing ) sauf si une rançon est payée. En avril 2021, REvil a volé les plans des prochains produits Apple et a menacé de les publier à moins qu'une rançon de 50 millions de dollars ne soit payée. WannaCry et REvil ont été supprimés.
Comment pouvez-vous prévenir et protéger vos actifs informatiques contre les infections par des logiciels malveillants ?
Protéger votre appareil, vos applications critiques et même l’ensemble de votre réseau contre ces longues listes de logiciels malveillants nécessite plus que le simple déploiement d’un logiciel antivirus. De nos jours, les antivirus et les autres approches de sécurité basées sur les signatures ne sont plus considérés comme suffisants pour protéger les systèmes contre les cybermenaces modernes. Avec plus de 350 000 nouveaux malwares découverts chaque jour , il est pratiquement impossible pour les applications antivirus de garder un œil sur ces menaces nouvelles et émergentes.
C'est pourquoi les organisations doivent développer un programme de sécurité de l'information basé sur les risques et qui adhère aux principes de la modèle de sécurité zéro confiance dans leur stratégie de sécurité pour renforcer la cyber-résilience. Un programme de sécurité doit aborder les problèmes de risque d'un point de vue stratégique, tactique et opérationnel. Cela comprend la conception et la mise en œuvre de contrôles administratifs, physiques et techniques pour protéger les actifs numériques critiques, comme détaillé dans le tableau 1.0 ci-dessous. Les contrôles administratifs se concentrent sur les politiques, procédures et directives de sécurité, la formation de sensibilisation à la sécurité et d’autres facteurs humains de sécurité qui définissent les pratiques du personnel ou des affaires conformément aux objectifs de sécurité de l’organisation. Les contrôles physiques sont des mesures mises en place pour empêcher tout accès physique non autorisé aux actifs informatiques critiques. Les contrôles techniques se concentrent sur les composants matériels ou logiciels tels que les antivirus, les pare-feu, les IPS/IDS, listes de contrôle d'accès (ACL) , liste blanche des applications , etc.
Physique | Contrôle d'accès physique | Journaux de vidéosurveillance et de caméras de surveillance | Réparer et restaurer les actifs physiquement endommagés |
Administratif | Gestion des risques, politiques et procédures de sécurité, plan de sauvegarde, etc. | Audit, gestion des événements de sécurité, gestion des changements, etc. | Plan de réponse aux incidents, DR/BCP. |
Technique | Antivirus, IPS, solution MFA, mises à jour, liste blanche, ACL, etc. | IDS, honeypots, scanners de vulnérabilités, tests statiques, etc. | Correctifs, listes noires, techniques de quarantaine, etc. |
Tableau 1.0 | Comparaison des contrôles de sécurité administratifs, physiques et techniques
Pour les organisations qui développent des applications critiques, un moyen d'empêcher le code malveillant de détruire vos applications consiste à adopter pratiques de codage sécurisées , y compris l'analyse de code statique dans le cycle de vie de votre développement logiciel. L'analyse statique est utilisée pour sécuriser les applications en examinant le code source lorsqu'il n'est pas en cours d'exécution afin d'identifier les codes malveillants ou les preuves de pratiques non sécurisées connues. Il s’agit de l’un des moyens les plus efficaces d’empêcher les codes malveillants de causer des dommages aux applications critiques de votre entreprise. Des outils automatisés tels que Invincible , Acunetix , Véracode , Checkmarx , et d'autres mettent en œuvre une analyse de code statique pour détecter et prévenir les codes malveillants tels que les portes dérobées, les bombes logiques, les rootkits, etc.
Les utilisateurs cherchant à protéger et à empêcher les codes malveillants d'infecter leurs PC peuvent installer un logiciel anti-programme malveillant comme couche de sécurité supplémentaire. Au-delà de cela, les utilisateurs peuvent éviter les logiciels malveillants en adoptant un comportement sûr sur leurs ordinateurs ou autres appareils personnels. Cela implique de maintenir les logiciels à jour, d'utiliser autant que possible des comptes non administratifs, de faire attention au téléchargement de programmes inconnus et de pièces jointes pouvant contenir des logiciels malveillants sous une forme déguisée, entre autres.