« Retour au blog de n30nem0

moment informatique

Virus informatique

Un article de Wikipédia, l'encyclopédie libre.
Aller à : Navigation, Rechercher
Image:Crystal Clear app virus detected.png
Cet article fait partie de la série
Programmes malveillants
Virus
Cabir - MyDoom.A
Tchernobyl - Yamanner
Ver
Bagle - Blaster
Code Red - I love you
Melissa - Morris
NetSky - Nimda
SQL Slammer - Santy
Sasser - Sobig
Cheval de Troie
Back Orifice - SubSeven
ByteVerify - XXXDial
Logiciel espion
CoolWebSearch - Cydoor
Gator - New.net
SaveNow
Composeur d'attaque
ToneLoc
Voir aussi
Logiciel malveillant
Sécurité informatique
Programmation

* Pour le magazine informatique de publication française, consulter l'article Le Virus informatique.

Un virus informatique est un logiciel malveillant écrit dans le but de se dupliquer sur d'autres ordinateurs. Il peut aussi avoir comme effet, recherché ou non, de nuire en perturbant plus ou moins gravement le fonctionnement de l'ordinateur infecté. Il peut se répandre à travers tout moyen d'échange de données numériques comme l'Internet, mais aussi les disquettes, les cédéroms, les clefs USB, etc.

Son appellation provient d'une analogie avec le virus biologique puisqu'il présente des similitudes dans sa manière de se propager et de se reproduire. On attribue le terme de « virus informatique » à l'informaticien et spécialiste en biologie moléculaire Leonard Adleman (Fred Cohen, Experiments with Computer Viruses, 1984).

Le nombre total de virus couverts par Sophos s'élevait à 93 875 (tous types confondus, en août 2004) d'après Mag-securs ([1]). Ce chiffre n'est qu'une approximation grossière du nombre réel de virus en circulation, chaque éditeur d'antivirus ayant intérêt à « gonfler » la réalité, d'autant plus que très peu de virus identifiés atteignent le stade de la diffusion massive sur les réseaux. La très grande majorité concerne la plate-forme Windows. Le reste est essentiellement destiné à des systèmes d'exploitation qui ne sont plus distribués depuis quelques années, comme les 27 virus — aucun n'étant dangereux — frappant Mac OS 9 et ses prédécesseurs (recensés par John Norstad, auteur de l'antivirus Disinfectant).

Les virus font souvent l'objet de fausses alertes que la rumeur propage, encombrant les messageries. Certaines d'entre elles, jouant sur l'ignorance en informatique des utilisateurs, leur font parfois détruire des éléments de système d'exploitation totalement sains.

Les différents types de virus

* Le virus classique est un morceau de programme, souvent écrit en assembleur, qui s'intègre dans un programme normal (ou dans le Master Boot Record dans le cas d'un virus de boot), le plus souvent à la fin, mais aussi au début ou même au milieu. Chaque fois que l'utilisateur exécute ce programme « infecté », il active le virus qui en profite pour aller s'intégrer dans d'autres programmes exécutables. De plus, lorsqu'il contient une charge virale, il peut, après un certain temps (qui peut être très long) ou un évènement particulier, exécuter une action prédéterminée. Cette action peut aller d'un simple message anodin à la corruption de certaines fonctions du système d'exploitation ou la corruption de certains fichiers ou même la destruction complète de toutes les données de l'ordinateur. On parle dans ce cas de bombe logique et de charge utile.

* Les macro-virus qui s'attaquent aux macros de logiciels de la suite Microsoft Office (Word, Excel, etc.) grâce au VBA de Microsoft. Par exemple, en s'intégrant dans le modèle normal.dot de Word, un virus peut être activé à chaque fois que l'utilisateur lance ce programme.

* Les virus de boot, aujourd'hui obsolètes. Ils ont existé du temps des ordinateurs personnels sur lesquels l'OS résidait sur disquette (E.g. AppleII, AtariST, Amiga, AmstradCPC, IBM-PC XT et AT, etc.). Le virus se répliquait en se recopiant sur le premier secteur, de la première piste, de la disquette. Pendant le démarrage de la machine, ce secteur était lu par défaut par le lecteur, lors du premier accès à la disquette. Ainsi l'unité centrale déterminait l'adresse physique du code de l'OS à charger en mémoire. Comme ce secteur contenait beaucoup de place vide, il était aisé de le modifier pour y ajouter du code nocif.

* Les virus-vers, apparus aux environs de l'année 2003 et ayant connu un développement fulgurant dans les années qui suivirent, sont des virus classiques car ils ont un programme hôte. Mais s'apparentent aux vers (en anglais "worm") car :
o Leur mode de propagation est lié au réseau, comme des vers, en général via l'exploitation de failles de sécurité.
o Comme des vers, leur action se veut discrète, et non-destructrice pour les utilisateurs de la machine infectée.
o Comme des vers, ils poursuivent des buts à visée large, tels que l'attaque par saturation ou attaque Dos (Denial of service) d'un serveur par des milliers de machines infectées se connectant simultanément.

D'autres menaces existent en informatique, s'en distinguant souvent par l'absence de système de reproduction caractéristique des virus : le terme de « logiciel malveillant » (malware en anglais) est dans ce cas plus approprié.

Caractéristiques

* la cryptographie : à chaque réplication, le virus est chiffré (afin de dissimuler les instructions qui, si elles s'y trouvaient en clair, révéleraient la présence de ce virus ou pourraient indiquer la présence de code suspect).
* le polymorphisme : le virus est chiffré et la routine de déchiffrement est capable de changer certaines de ses instructions au fil des réplications afin de rendre plus difficile la détection par les antivirus.
* le métamorphisme : contrairement au chiffrement simple et au polymorphisme, où le corps du virus ne change pas et est simplement chiffré, le métamorphisme permet au virus de modifier sa structure même et les instructions qui le composent.
* la furtivité : le virus « trompe » le système d'exploitation (et par conséquent les logiciels antivirus) sur l'état des fichiers infectés. Des rootkits permettent de créer de tels virus. Par exemple, l'exploitation d'une faille de sécurité au niveau des répertoires permet de masquer l'existence de certains fichiers exécutables ainsi que les processus qui leur sont associés.

Les logiciels antivirus

Les logiciels antivirus sont des logiciels capables de détecter des virus, détruire, mettre en quarantaine et parfois de réparer les fichiers infectés sans les endommager. Ils utilisent pour cela de nombreuses techniques, parmi lesquelles :

* la reconnaissance de séquences d'octets caractéristiques (signatures) d'un virus particulier ;
* la détection d'instructions suspectes dans le code d'un programme (analyse heuristique);
* la création de listes de renseignements sur tous les fichiers du système, en vue de détecter d'éventuelles modifications ultérieures de ces fichiers par un virus ;
* la détection d'ordres suspects ;
* la surveillance des lecteurs de support amovible : disquettes, Zip, CD-ROM, ...


Virus et téléphonie mobile




Cheval de Troie (informatique)


Le premier virus ciblant la téléphonie mobile est né en 2004 : il s'agit de Cabir se diffusant par l'intermédiaire des connexions Bluetooth. Il sera suivi d'un certains nombres dont le CommWarrior en 2005. Ils attaquent essentiellement le système d'exploitation le plus répandu en téléphonie mobile, Symbian OS, surtout dominant en Europe.

Un cheval de Troie (trojan en anglais) est un type de logiciel malveillant, c'est-à-dire un logiciel d'apparence légitime, mais conçu pour subrepticement exécuter des actions nuisibles à l'utilisateur ; un cheval de Troie, dans un programme, tente d'utiliser les droits appartenant à son environnement d'appel pour détourner, diffuser ou détruire des informations. Le partage des programmes introduit la problématique des chevaux de Troie. Les trojans auraient été créés dans les années 80, par un jeune hacker allemand du nom de Karl Koch

Fonctionnement

Un cheval de Troie n'est pas un virus informatique dans le sens où il ne se duplique pas par lui-même, fonction essentielle pour qu'un logiciel puisse être considéré comme un virus. Un cheval de Troie est conçu pour être dupliqué par des utilisateurs naïfs, attirés par les fonctionnalités vantées.

Les chevaux de Troie servent très fréquemment à introduire une porte dérobée sur un ordinateur. L'action nuisible à l'utilisateur est alors le fait qu'un pirate informatique peut à tout moment prendre à distance (par Internet) le contrôle de l'ordinateur.

Il est difficile, voire impossible de définir exactement ce qu'est un cheval de Troie, car la légitimité d'un logiciel dépend aussi du contexte dans lequel il est employé. Les portes dérobées par exemple peuvent s'avérer utiles pour un administrateur réseau ; en revanche, dans les mains d'un pirate elles sont clairement illégitimes.

Protections

Pour éviter les infections de chevaux de Troie, la règle la plus simple est d'installer un minimum de logiciels, de provenance sûre. Après infection, on peut détecter un cheval de Troie avec un logiciel antivirus à jour. Enfin, on peut utiliser un pare-feu pour limiter et surveiller les connexions au réseau que pourrait utiliser le pirate. Toutefois, une fois installé, le cheval de Troie peut désactiver les antivirus et pare-feu existants.

Dans les structures à fort besoin de sécurité, les solutions généralement proposée consistent à :

* confiner le programme dans des domaines dans lequel il possède les droits pour réaliser sa tâche et pas davantage ;
* interdire la diffusion des données passées en paramètre.

Ce dernier problème est difficile à résoudre car le programme peut utiliser de nombreux moyens détournés pour transmettre des informations : les canaux cachés (covert channels).

Introduction aux canaux cachés

Le problème des chevaux de Troie est extrêmement complexe ; en effet, certains chevaux de Troie sont des canaux cachés car ils perturbent leurs actions malveillantes afin de ne pas être repérés.

Annexes

Exemples de chevaux de Troie

* Back Orifice
* Download.Trojan
* NetBus
* SubSeven
* Trojan Horse
* Trojan.ByteVerify
* Trojan.Zlob.J
* XXXDial
* Trojan.Peacomm



Logiciel espion


Un logiciel espion (espiogiciel, mouchard ou en anglais spyware) est un logiciel malveillant qui s'installe dans un ordinateur dans le but de collecter et transférer des informations sur l'environnement dans lequel il s'est installé, très souvent sans que l'utilisateur n'en ait connaissance. L'essor de ce type de logiciel est associé à celui d'Internet, qui lui sert de moyen de transmission de données.

L'utilisation abusive du terme « virus »

Parce que les virus ont été historiquement les premiers à apparaître, le terme « virus » est souvent employé abusivement, spécialement par les medias, pour désigner toutes sortes de logiciels malveillants. Le logiciel antivirus moderne renforce cette utilisation abusive puisque que leur focus n'a jamais été limité aux virus.

Un logiciel malveillant ne doit pas être confondu avec un logiciel défectueux, c'est-à-dire un logiciel qui est prévu pour un but légitime mais qui possède des bogues ou des erreurs de comportement, causés par des erreurs de programmation ou de conception logicielle.

Classification

Les logiciels malveillants peuvent être classés en fonction des trois mécanismes suivants :

* le mécanisme de propagation (par exemple, un ver se propage sur un réseau informatique en exploitant une faille applicative ou humaine) ;
* le mécanisme de déclenchement (par exemple, la bombe logique — comme la bombe logique surnommée vendredi 13 — se déclenche lorsqu'un évènement survient) ;
* la charge utile (par exemple, le virus Tchernobyl tente de supprimer des parties importantes du BIOS, ce qui bloque le démarrage de l'ordinateur infecté).

La classification n'est pas parfaite, et la différence entre les classes n'est pas toujours évidente. Cependant, c'est aujourd'hui la classification standard la plus couramment adoptée dans les milieux internationaux de la sécurité informatique.

Différentes classes de logiciels malveillants

Les virus et les vers sont deux grandes classes de logiciels malveillants. Leur caractéristique commune est qu'ils sont tous les deux capables de se répliquer eux-mêmes. Ils peuvent générer des copies d'eux-mêmes, parfois modifiées. Toutefois, tous les programmes qui se répliquent ne sont pas forcement des virus ou des vers. Par exemple, un logiciel peut se copier à d'autres médias en tant qu'élément de protection du système. Pour être classifié comme virus ou ver, il faut qu'au moins certaines de ces copies puissent se répliquer elles-mêmes aussi. La différence entre un virus et un ver est qu'un ver fonctionne plus ou moins indépendamment, tandis qu'un virus dépend des autres hôtes du réseau pour se propager.

* Les virus

* Les vers (worm). Ils se répandent dans le courrier électronique en profitant des failles des différents logiciels de messagerie (notamment Microsoft Outlook). Dès qu'ils ont infecté un ordinateur, ils s'envoient eux-mêmes à des adresses contenues dans tout le carnet d'adresses, ce qui fait que l'on reçoit ce virus de personnes connues. Certains d'entre eux ont connu une expansion fulgurante (comme le ver I Love You). Les experts n'arrivent pas à se mettre d'accord sur l'appartenance ou non des vers à la classe des virus informatiques.

* Les wabbits. C'est un autre type de logiciels malveillants se reproduisant très rapidement. Contrairement aux virus, ils n'infectent pas les programmes ni les documents. Contrairement aux vers, ils ne se propagent pas par les réseaux. Ils interviennent dans le code source de Windows Explorer, en particulier la saisie semi automatique, en incorporant des termes sensés amener l'internaute sur des sites payants. C'est le nom générique regroupant plusieurs hijackers (voir (en) hijacking) : piratage de la page de démarrage internet, pour une redirection vers un site choisi. Un hijacker modifie les réglages du navigateur en utilisant une page web contenant un contrôle ActiveX ou du JavaScript.

* Les chevaux de Troie (Trojan horses). Ce nom vient de la célèbre ruse imaginée par Ulysse. Ces programmes prétendent être légitimes (souvent de petits jeux ou utilitaires), mais comportent des routines nuisibles exécutées sans l'autorisation de l'utilisateur. On confond souvent les chevaux de Troie avec les backdoors. Ces derniers sont en effet une catégorie de chevaux de Troie, mais pas la seule. Les backdoors prennent le contrôle de l'ordinateur et permettent à quelqu'un de l'extérieur de le contrôler par le biais d'Internet. Les chevaux de Troie ne sont pas des virus car il leur manque la fonction de reproduction, essentielle pour qu'un programme puisse être considéré comme un virus.

* Les portes dérobées (backdoor)

* Les logiciels espion (spyware). Ils peuvent accompagner certains graticiels (mais pas les logiciels libres), partagiciels et pilotes de périphériques, s'installant discrétement sur l'ordinateur, sans prévenir l'utilisateur, et collectant et envoyant des informations personnelles à des organismes tiers.

* Les exploits

* Les rootkits

* Les composeurs (dialers)

* Les publiciels (adwares)

Les canulars (hoax en anglais), que l'on classifie régulièrement à tort de virus ou de logiciel malveillant, sont des courriers électroniques dont le contenu est souvent une alerte sur un faux-virus et qui n'ont pour conséquence indirecte que de saturer les serveurs de courriels de messages inutiles. Dans cette fausse alerte, le message peut aussi vous inviter à supprimer un fichier système important.

Lutte contre les logiciels malveillants

Méthodes génériques


Voici différentes techniques de lutte contre les logiciels malveillants, celles-ci pouvant être cumulées car n'agissant pas sur les mêmes risques :

* prévention par la sensibilisation des utilisateurs aux problématiques de sécurité ;
* mise à jour systématique (par exemple quotidiennement ou à chaque connexion sur Internet) du système d'exploitation et de tous les logiciels ;
* utilisation d'un logiciel antivirus, contre les virus, vers, et chevaux de Troie ;
* utilisation d'un logiciel anti-spyware ;
* utilisation d'un logiciel anti-rootkit ;
* utilisation d'un HIDS (Host-based Intrusion Detection System), un système de détection d'intrusion sur l'hôte ;
* utilisation d'un pare-feu, pour verrouiller toutes les communications (dans les deux sens) qui ne sont pas requises.

Ces systèmes ne sont pas parfaits (aucun logiciel antivirus ne détecte tous les virus), mais ils permettent de réduire considérablement les risques d'infection ou d'attaque de logiciel malveillant. L'utilisation conjointe de plusieurs méthodes du même type mais ayant un fonctionnement différent peut aussi s'avérer utile.

Diversification et logiciels libres

Dans les entreprises, la diversification des systèmes d'exploitation est une solution complémentaire et raisonnable à la lutte antivirale comme l'introduction de systèmes logiciels ou matériels Unix, Linux ou propriétaires non standards dans la gestion des réseaux. Cette diversification permet au système d'information d'être moins impacté dans sa globalité par une attaque d'un logiciel malveillant. En effet, à l'heure actuelle, ces logiciels ciblent systématiquement uniquement un seul système à la fois. Les autres systèmes n'étant pas programmés de la même manière, ils ne sont pas vulnérables aux mêmes attaques.

De plus, l'utilisation de logiciels dont l'ensemble du code source est ouvert peut diminuer l'efficacité des logiciels malveillants. Le code étant accessible par quiconque (et donc entre autres par des spécialistes de la programmation sécurisée), et puisque généralement le système de développement permet une réactivité bien plus importante, ces logiciels deviennent beaucoup moins vulnérables.

Ainsi, pour lutter activement contre les logiciels malveillants, on peut trouver des solutions logicielles professionnelles open sources performantes, stables et sécurisées, telles que :

* système d'exploitation : Linux, BSD ;
* pare-feu : Netfilter (Iptables) et ses interfaces graphiques (firestarter, shorewall), TDI [1] ;
* déteteur d'intrusion (IDS) : Snort ;
* sniffer : Wireshark, tcpdump ;
* honeypot : honeyd ;
* antivirus : ClamAV (ou ClamWin) ;
* antispam : Spamassassin, Squidguard (couplé avec le serveur proxy Squid) ;
* filtrage (du courrier électronique, des pages web) par analyse de forme et de contenu Regexp.

L'utilisation de logiciels libres pour des besoins plus divers s'avère donc aussi utile pour les mêmes raisons. De même, de bonnes alternatives commerciales ou gratuites (mais non libres) existent. Les logiciels suivants sont libres ou propriétaires mais gratuits :

* serveur de messagerie : Postfix ou Exim ;
* serveur Web : Apache ;
* serveur de nom (DNS) : BIND, djbdns ;
* bureautique : OpenOffice ;
* navigation web : Mozilla Firefox, Opera ;
* client de messagerie : Thunderbird ou Foxmail.
[ Ajouter un commentaire ] [ Aucun commentaire ]

# Posté le lundi 19 février 2007 12:19

« Article précédent : moment réflexion

Article suivant : hhhhhhhuuuuuuuuuuuuurrrrrrrrryyyyyyyyyyy... »