Marc Blanchard Virus Docteur

Aller au contenu | Aller au menu | Aller à la recherche

dimanche 21 octobre 2007

[Définition&Explications] Doit-on protèger les Smartphones et téléphones d'aujourd'hui?

Les Téléphones d'aujourd'hui appelès PDA ou Smartphones ou le tout intégré utilisent des systèmes d'exploitations qui se rapprochent de nos ordinateurs. Certains smartphones embarqueront Symbian (en perte de vitesse) d'autres embarqueront Windows Mobile.

Ce compte-rendu s'appuie Windows Mobile, car aujourd'hui et demain Windows CE est et sera la base des tout nouveau device embarquant de l'informatique (avions, voitures, téléphones, télévisions, réfrigérateurs, lecteurs video à la demande, consoles de jeux, etc....)...tout ou presque est orienté maintenant Win CE avec XP(le petit frère) puis maintenant Vista...petit à petit MS fait son nid....On voit deja que Palm remplace son PalmOS par WinCE, que BlackBerry est en chute libre avec son push de mail, car Microsoft, de par les nouvelles versions de Exchange, rend le même service !!!

On sent que Microsoft rentre dans ce marché, car le business est très important !

Par conséquent, nous étudierons les téléphones d'aujourd"hui fonctionnant sous Windows Mobile qui ont une double gestion des devices embarqués (Bluetooth, Wifi, Téléphone, gestion GSM, Infrarouge, RAM, ROM, StorageCard).

En effet, afin de limiter les consommations batteries, une gestion intelligente des alimentations des devices a été étudiée, ce qui signifie qu’une zone de la mémoire est allouée aux applications chargées en veille tout en gardant au maximum leurs fonctionnalités.

C’est pourquoi, une gestion des applications est un peu différente des applications sur PC.

Gestion de la mémoire :

Voici un exemple concret qui permet à l’utilisateur de tuner sa mémoire en Windows Mobile 2003SE, qui est maintenant géré automatiquement par le système Windows 2005 Mobile :

En Windows 2005, la gestion de la mémoire est automatique. En effet, la gestion des applicatifs peut être mise en suspend, en arrêt total ou bien en lancement exclusif.

La gestion des mémoires sur le Smartphone Windows Mobile 2005 est divisée en 3 parties : La flash ROM, la flash persistante et la RAM.

La Flash ROM est l’emplacement mémoire ou les applications seront stockées mais pourront être réutilisées après un arrêt complet du Smartphone.

Par conséquent les données pourront être splittées entre la ROM et la flash.

Par contre, les données stockées dans la ROM seront dédoublées puisqu’il faut qu’ils soient exécutées à partir de la RAM flash et non la ROM qui est leurs stockages persistants. Sous Win2003SE, les données pouvaient être compressées, ce qui n’est plus possible avec 2005.

En Windows2005, la structure des répertoires et des fichiers sont fondues dans un et un seul format de catalogue, permettant à un utilisateur de ne plus confondre la ROM et la Flash persistante ou pas.

La RAM est alors utilisée a 100% pour les lancements des applications. Si une application est trop gourmande, l’OS fermera automatiquement alors une application suspendue, pour laisser maître l’application principale.

Mais cette gestion permet également de protéger le système de toute application dangereuse pour le Smartphone.

Par contre, la gestion intelligente des pages mémoires effectuée par Windows, permet une gestion optimale du mode multi-applications qu’offrent les nano-computers, se rapprochant ainsi du fonctionnement d’un ordinateur de bureau avec ROM/RAM/HD.

La limitation des programmes est limitée à 32 Mb.

En ce qui concerne le file system, la structure a été simplifiée mais ressemble à celle des répertoires et fichiers de Windows

On notera la présence dans le file system de Storage Card, qui est la Mémoire additionnelle.

Accés aux registres de Windows 2005 Mobile :

Il y a deux méthodes d’accès aux registres de Windows Mobile. Il est à noter que ces outils ne sont pas installés d’origine dans le système.

Les meilleurs (ceux qu’ils ne font pas trop de dégâts substantiels dans l’OS) sont ceux distribués par les hackers dans les sites undergrounds.

Attention, certains sites de freeware Pocket ne sont pas forcement des sites de référence, et il peut s’avérer dangereux pour le smartphone ou l’utilisateur non initié d’installer des outils très proche du système.

Il y a deux méthodes d’accès aux bases de registres du nano-computer :

a. Directement sur le SmartPhone avec un outil à installer soit même :

b. Avec ActiveSync connecté au PC :

Comme on peut le constater, on peut créer, effacer, visualiser, modifier les clefs a souhait. Il n’y a pas de notion de sécurité comme nous pouvons l’avoir sur XP.

STACK TCPIP :

Les configurations réseaux TCPIP de tous les supports sont stockées dans les Registres.

On retrouvera ainsi toutes les configurations de base des antériorités de connexions mais également celles qui sont actives.

Il est à noter que ces informations sont conservées même après un reboot du smartphone. Elles seront perdues lors d’un reset général du nano-computer.

La stack TCPIP de Windows 2005 mobile a été simplifiée.

Les vulnérabilités connues a ce jour ne sont pas exploitable sur la stack de Windows 2005 Mobile.

Ci-après un compte-rendu de NESSUS :

En conclusion, les vers actuels, hormis les modifications des heures et dates de réponse des requêtes IP avec l’ouverture des ICMP de la stack, ne peuvent pas spoofer la stack.

Contamination avec fichier EXE ou CAB contenant un virus développé spécifiquement pour Windows Mobile :

Comme toute application, il est demandé une confirmation pour son installation.

Une fois l’opération effectuée le fichier disparait en Windows Mobile 2005, mais s’exécute correctement en Windows Mobile 2003 :

Conclusion :

Contamination avec un virus inséré dans une page WEB HTML (les malwares et spywares download, dialers, keyloggers, adware fonctionnent sur ce principe) :

Sur http://tav.kaspersky.fr, il y a un certain nombre de tests a effectué.

Il s’avère que sur le lien ‘Le test EICAR’ la signature de EICAR est écrite au format HTML :

Conclusion :

Les trafics en temps réel sur les pages web sont traités en HTML et en FTP et interprètés par le navigateur

Les contaminations sous Office Mobile :

Afin de contrôler les possibilités éventuelles sur les codes malicieux sous office, il m'a été intéressant de vérifier les comportements d'Office Mobile en cas de contamination.

La procédure d'infection s'est faite de la façon suivante :

a. Vérification que le document office contient bel et bien le code du virus Melissa

b. Copie manuelle via activesync d'un document Word contenant le virus Melissa

c. Execution du document word afin de lancer le virus

++Conclusion: ++

On constate que MSOffice Mobile ne peut pas executer le code du virus Melissa

Regardons apres une sauvegarde de ce document sous MSOffice Mobile si le virus est transporté par MSOffice Mobile ou pas

Dump du fichier :

On s'appercoit que le virus ne suit pas l'activité du fichier contaminé.

Par conséquent, le document est vide de ses macros suite à des modifications par MSOffice Mobile. Donc, pas de création de fichier d'environnement Normal.dot et pas d'utilisation des APIs Outlook Mobile.

Même constats avec les dossiers Excel Mobiles :

a. Vérification que le virus Yohimbe est bien dans notre fichier hôte Excel contaminé :

b. Copie manuelle du hôte contaminé via activsync :

c. Lancement du fichier Excel avec MSOffice Mobile :

++Conclusion: ++

On constate que MSOffice Mobile Excel ne peut pas executer le code du virus Yohimbe

Regardons apres une sauvegarde de ce document sous MSOffice Mobile si le virus est transporté par MSOffice Mobile ou pas

Dump du fichier :

On s'appercoit que le virus ne suit pas l'activité du fichier contaminé.

Par conséquent, le document est vide de ses macros suite à des modifications par MSOffice Mobile. Donc, pas de création de fichier d'environnement personal.xla

On constate que les attaques sur les smartphones / PDA utilisent des supports différents :

- SMS

- MMS

- WIFI

- Bluetooth

Pour ce dernier, de nombreux scanners sont en libre sur le net, qui permettent, à partir d'un ordinateur portable ou d'un autre smartphone, de scanner les entités autour de le victime.

De nombreux services sont ainsi potentiellement exploitables pour utiliser les téléphones d'aujourd'hui

De nombreux codes malicieux arrivent sur nos smartphones par le biais du Bluetooth, mais également via SMS ou MMS....demain avec la VoIP sur Wifi, les attaques utiliseront ce canal de communication.

a. Demande de pairing avec le smartphone infecté

b. Réception du code malicieux via Bluetooth

c. Validation de l'intallation d'un jeux ou sonnerie, et le smartphone est infecté

Conclusion :

Ne sous-estimez pas la puissance des codes malicieux sur téléphones mobiles, ne pensez pas que cela n'arrive qu'aux autres, car c'est faux.

Voici une petite extraction des familles de codes malicieux s'attaquant aux smartphones et téléphones portables des bases de Kaspersky

Pour la petite annecdote, régulièrement, dans la salle d'attente de mon kiné, des attaques me parviennent sur mon smartphone... Eh oui, mon portable est en invisible sur bluetooth, mais j'ai besoin de mon oreillette bluetooth...c'est par là qu'arrivent les attaques :-(

Le mot de passe des oreillettes est 0000 !!! Facile pour le code malicieux

[Interview] Le Journal du Net par Christophe Auffray

JDN Solutions - Interview

Marc Blanchard (Kaspersky) : "On peut décompter 20 à 30 millions de bots dans le monde" Le chercheur de Kaspersky revient sur l'évolution des modes de propagation multiplateforme des réseaux zombies. Technologie P2P et consoles d'administration complexifient la lutte antivirale.

JDN Solutions : Pourquoi cette enquête sur les réseaux de PC zombies ?

Ce qui m'y a poussé, c'est la déclaration du 13 juin dernier faite par le FBI et qui faisait état d'un million de victimes potentielles. De source non-officielle, je pense qu'en 2007, on peut en décompter entre 20 et 30 millions. Bien que ce désordre numérique ne soit pas une épidémie - cela fait désormais quelques temps que ce ne l'est plus -, il m'inquiète.

Le spam envoyé depuis des ordinateurs infectés existait déjà, mais en 2007 nous avons remarqué la multiplication des faux serveurs Web et des blogs fictifs, référencés dans les moteurs de recherche. Or, tous ces services sont hébergés sur des machines contrôlées par un bot, c'est-à-dire un robot.

En ce qui concerne le mode de fonctionnement, on reste sur des techniques connues, avec notamment des backdoors et des rootkits. Mais ce que les pirates recherchent, c'est uniquement la multiplication du nombre de machine zombies. En 2003, le temps moyen d'un développement suite à l'apparition un nouvel exploit était de 15 minutes avec propagation sur le net. En 2007, ce temps est seulement de 4 minutes.

JDN Solutions : Quelles évolutions avez-vous notées en ce qui concerne les bots ?

On s'aperçoit que le taux d'utilisation d'une machine contaminée par un bot ou un ver - non Storm - est de l'ordre de 100% du CPU. L'utilisateur va donc vraisemblablement s'apercevoir de la contamination, ne serait-ce que parce que son ordinateur souffre d'importants ralentissements.

J'ai ainsi remarqué que les pirates analysaient désormais le nombre de mégaflops de la machine et divisaient par 2 ou 3 le taux d'utilisation du CPU. Lors de mes tests, j'ai ainsi exécuté Storm Worm sur un ordinateur disposant de 337 mégaflops. Avec ce bot, c'était non plus 100% du CPU qui étaient exploités, mais 47%.

"Il suffit désormais de se rendre sur un site Web pour être contaminé"

Cette prise de contrôle d'ordinateurs vulnérables permet aux pirates de bénéficier d'une puissance de calcul extraordinaire. A titre de comparaison, le supercalculateur du centre de météorologie français, le Cray, dispose d'une puissance de 101 téraflops. Si on ne retient que la moitié du nombre de victimes comptabilisées par le FBI, soit 500 000, et que l'on attribue à chacun une puissance de 210 mégaflops, on peut se faire une idée de la puissance représentée par les botnets.

JDN Solutions : Quel est le mode de propagation des bots ?

Aujourd'hui, les méthodologies de propagation et de contrôle à distance des machines sont différentes. Dans un premier temps, on va essayer de vous pousser une enveloppe vide de toute attaque, en fait une backdoor. Cette porte dérobée va permettre d'accéder à un point d'entrée afin de propager une ou plusieurs attaques : serveur de mail, faux blog, faux DNS, etc. Le robot activé - le bot -, enverra de façon automatisée votre adresse IP au pirate à chacun de ses changements.

Les plates-formes de propagation ont elles aussi changé. Avant, le mode de contamination était essentiellement l'e-mail. Désormais, il suffit d'aller sur un site Web. Il faut savoir qu'un script inséré dans le code d'une page Web permet de modifier en temps réel une clef de registre.

Ainsi, les pirates viennent ajouter du code dans les pages d'origine des serveurs, soit un script ou un iframe, qui va pointer vers un autre serveur. Ainsi, un internaute visitant le site et n'ayant pas un système à jour, comme cela est fréquent, téléchargera le code du programme malveillant.

Les attaques de script - VBS, Javascript, PHP, iframe, etc. - vont de pair avec la montée en puissance de Storm Worm. Depuis août, la base de signature des scripts malveillants a ainsi progressé de 300%.

"Les consoles d'administration permettent de géolocaliser les victimes par pays"

JDN Solutions : Quelles sont les particularités de Storm Bot ?

En plus d'une grande force de calcul, il permet aux pirates de géolocaliser l'ensemble des zombies et repose sur une technologie de P2P. Storm Botnet se compose ainsi de machines hôtes mâles qui vont essayer de trouver 1.000 à 2.000 femelles prêtes à accéder au code géniteur du programme. En outre chaque femelle sera reliée à au minimum 3 machines hôtes. Le maillage est très rapide car les femelles vont essayer également de propager des enveloppes vides à 1.000 à 2.000 autres machines.

Les consoles d'administration permettent quant à elles désormais de géolocaliser les victimes par pays. Un pirate peut même établir des rapports statistiques par pays et télédistribuer une attaque à l'échelon national ou international. Ce mode opératoire permet d'ailleurs de remettre en cause l'implication des autorités chinoises dans les attaques contre la France. Les machines zombies peuvent en effet se trouver en Chine, mais le commanditaire, via ces consoles d'administration évoluées, peut être dans un autre pays.

Autrefois, un botnet était facilement géolocalisable car il reposait sur quelques machines poussant l'attaque. Il suffisait alors d'examiner les traces sur un ordinateur zombie pour retrouver l'identité de ces serveurs hôtes. Une fois ces derniers désactivés, le réseau zombie s'écroulait.

JDN Solutions : Un tel maillage signifie-t-il qu'il est désormais impossible de déconnecter un botnet ?

Ce serait comme essayer d'arrêter un réseau P2P type Kazaa. Trop de machines sont à la fois clientes et serveurs pour qu'il soit possible de faire s'écrouler le réseau de partage. Pour venir à bout de Storm Botnet, il faudrait parvenir à nettoyer l'ensemble des ordinateurs contaminés. Or, il y aura toujours des machines vulnérables.

De vieux programmes comme Blaster, Sasser, Mydoom continuent par exemple d'être au Top 5 des attaques sur le câble. Cela signifie qu'il y a toujours des postes vulnérables qui véhiculent le code sur les réseaux. Avec une propagation multiplate-forme, les pirates s'assurent de toujours disposer d'un nombre de bots suffisant. Et ils y ont tout intérêt puisque leurs profits en dépendent directement.

L'intégrale de l'interview sur le Journal du Net

jeudi 18 octobre 2007

[On en parle!] Les spams MP3 nous arrivent...

Attendez vous à recevoir une nouvelle technique de SPAM dans vos boites aux lettres.

En effet, depuis ce matin, les boites aux lettres commencent à recevoir un spam qui contient un fichier MP3, qui fait une annonce d'une entrée en bourse d'une entreprise du net appelee EXIT ONLY Inc...

Voici des echantillons mp3 quasiment inaudibles qui arrivent dans vos boites aux lettres :

Echantillon MP3 du fichier qui arrive par mail 118 ko

Autre Echantillon MP3 de 109 ko

Cette technique est une mise à l'épreuve de technique de spams vocaux. Il est à noter que les fichiers qui arrivent dans les boites aux lettres sont de tailles différentes, représentant ainsi des échantillonnages de la voie différents, et des noms des fichiers MP3 différents.

A quoi faut-il s'attendre demain avec cette technique?

Il sera simple de recevoir des spams en MP3, qui inciteront les internautes à aller visiter des sites internet.

Ces sites contiendront des codes malveillants afin de contaminer les internautes, avec des trojans downloaders (malwares qui se téléchargent et s'installent automatiquement à l'insu de l'utilisateur).

Le but, pour les cyber-délinquants, est d'accroître et de maintenir en fonctionnement un parc de machines zombies sur la planete afin de les exploiter au maximum...à des fins cyber-criminelles, tels que le spam, des denis de services, de l'espionage, des chantages et toutes autres attaques numériques.

[Définition&Explications] Les codes utilisant des compétences transversales...

Afin de mieux comprendre certains concepts technoloqiques de fonctionnement des virus et malwares, je vous propose dans ce post une petite explication sur les codes utilisant des compétences transversales.

La technique de compétences transversales existe depuis 1975 pour l’informatique.

C’est un concept de gestion de changement d’action par rapport à un résultat obtenu.

Cette compétence aura le pouvoir de capitaliser sur un résultat antérieurement obtenu comme une nouvelle entrée de données supplémentaire pour l’obtention d’un résultat différent.

En d’autre terme, l’attaque est capable d’évoluée sans pour autant changer son code original !

Etape 1 :

Un nouveau code malicieux arrive et s’exécute sur un ordinateur.

Comme tout programme, aprés exécution, le(s) fonctions programmées sont lancées et un résultat est obtenu.

Cette technique est la base de n'importe quel programme informatique.

Etape 2 :

Cette étape est programmée dans le cas de compétences transversales VOLONTAIRE de la part du développeur.

Voici le principe :

Le code auto-analyse le résultat obtenu pour prendre une Rétro-Action, dans le cas où sa première action ne peut être effectuée à 100%.

L'unité de programmation est identique à un programme traditionnel, à l'exeption prete que le résultat va être analysé.

Si le résultat n'est pas celui qui est attendu, ALORS, la compétence transversale intervient.

L'unité de programmation est alors pré-programmée pour lancer un autre type de code, permettant ainsi une nouvelle tentative.

Si elle échoue de nouveau, l'unité de programmation lancera autant de micro-codes qu'elle en dispose.

CONCLUSION :

Cette technique est utilisée par de nombreux codes malicieux permettant ainsi de s'adapter aux sécurités appliquées pour ainsi les détournées sur les postes de travail...des futures victimes.

mercredi 10 octobre 2007

[Définition&Explications] La VoIP ... Les risques

On me pose souvent la question sur la sécurité de la Voix sur IP. Dans ce post, voici une petite explication sur les principes de la VOIP (Voix sur IP) et d'éventuelles attaques pouvant arrivées.

La nomination du mot VoIP est une nomination pour dire la voix sur IP.

Aujourd'hui, avec adsl, on a tous (ou presque), un abonnement internet avec un téléphone IP.

ATTENTION : nous n'avons pas les mêmes niveaux de sécurité sur la VoIP que sur les téléphones classiques dit RTC !

Téléphone IP :

Soit l'utilisateur connecte un téléphone traditionnel sur une sortie spéciale de son routeur, soit connecté à un switch 10/100mb, il connecte un téléphone IP (qui ressemble à un téléphone traditionnel) ou bien il installe sur son ordinateur un Softphone (logiciel de téléphone) comme celui-ci :

Définition de SIP (Session Initiation Protocol)

Une communication VoIP s'appuie sur une normalisation, tout comme le courrier électronique que l'on appelle SMTP, en VoIP ce protocole se nomme SIP (Session Initiation Protocol).

Il faut savoir que d'autres protocoles existent, mais le choix microsoft sur ses versions de Exchange mail server, incluent le protocole SIP, qui se généralise de jour en jours actuellement.




Par conséquent, mon étude s'appuie sur ce protocole.

Pourquoi SIP se généralise ?

SIP (rfc3261,3265,3428) est un protocole flexible (sur les principes du http et smtp) de bout à bout permettant d’établir une session entre 2 équipements utilisant la voix via internet

Les messages SIP peuvent s'appuyer sur :

- UDP

- TCP

- TLS en utilisant le SSL

- Le port utilisé est, en général, le 5060

- Les messages d'initialisations de la communication sont du type ASCII !!! d'où le problème !

L’adressage est du format : sip:marc@kaspersky.com

Structure globale simplifiée d'un appel que l'on fait en VoIP :

Avant d'initier un appel, les 2 correspondants doivent être enregistrés auprés de leurs SIP proxy Server afin de les localiser au niveau IP

Appelant ou appelé doivent effectuer le même schéma :

1. Le softphone ou le téléphone IP doit s'authentifier auprès du Registrar Server

2. Une fois effectué, le registrar server envoie l'information auprès du Location Server qui indique que l'utilisateur possède une adresse IP (voire un numéro de téléphone IP) et qu'il n'est plus nécessaire de le rerouter sur boite vocale.

3. Cette localisation par rapport au numéro IP et nom de l'utilisateur référencé est entré alors dans le serveur DNS.

La communication peut alors être donnée ou reçue

Ordonancement d'un appel :

4. L'appelant (à gauche sur le graphique) va questionner son SIP server dès qu'il rentrera l'identité de son interlocuteur dans son softphone ou téléphone IP

5. Le SIP server va questionner le DNS server

6. Le DNS server donnant les coordonnées IP du SIP proxy serveur

7. Le proxy Serveur SIP va demandé alors au Location Server la localisation de l'appelé

8. Le proxy Serveur SIP viendra lancé la sonnerie de l'appelé

9. La communication se fait en peer to peer en direct.

Mais que proposent les fournisseurs d'accès internet aujourd'hui?

Les ISP proposent aujourd’hui une mise à disposition de proxy SIP de façon quasi systèmatique.

Avec un simple nslookup, on peut déterminer le serveur, son éventuel emplacement et son IP

Les messages d'inititions SIP sont quasiment les mêmes qu'en SMTP

Quels sont les risques potentiels sur la VoIP ?

- Dénis de service des serveurs proxy SIP (protection définies par les logiciels SIP serveur)

Mais sur le net, il existe bon nombre de logiciels gratuits de serveur SIP qui n'ont pas de protection !

Attention avant de les installer, déclarez bien toutes les règles de sécurité préconisées dans la documentation

Exemple de Serveur SIP logiciel freeware

- Pénétration via les ports utilisés pour la VoIP (rôle des parefeux)

Assurez vous de bien filtrer les protocoles SIP par du content filtering SIP.

- Reroutage des appels vers des faux numéros (modifications des correspondances SIP-UA (sip:marc@hack.cx au lieu de sip:marc@kl.com)

Cette modification est effectuée dans les fichiers de configurations des SoftPhones (les téléphones IP de bureau etant moins vulnérables à ce type d'attaques)

- Usurpation de faux serveurs vocaux simulant des banques en ligne et capturant les ID et codes d’accès :

Cette attaque peut se faire via le fichier HOSTS de windows, ou, selon le softphone, un accès à ce fichier peut être effectué avant toute requète DNS

- Un code malicieux sous forme de sniffeur peut être installé sur l'ordinateur utilisant un softphone.

Toutes les communications pourront alors être enregistrées pour ensuite être ré-exploitées par l’attaquant par l’envoi du fichier sur un serveur ftp underground (pirate).

- Ecoutes et enregistrements téléphoniques

Voici un exemple vocal (que j'ai evidemment coupé pour les raisons de confidentialité) d'une écoute sur VoIP.

Comme vous avez pu l'entendre, les fréquences vocales sont audibles. Il reste pour le hacker de recomposer les fréquences vocales via un lecteur MP3 à coté d'un combiné téléphonique !! Pour faire ce qu'il souhaite....notamment demandé à parler à un conseiller de la banque!!

- Reroutage vers des numéros premiums via des dialers

Ici un exemple d'un dialer qui a la possibilité de lancer un appel surtaxé !

- Social engineering :

Des soi-disant agents EDF ou GDF qui vous laissent croire que vos déclaration de votre consomation est mal déclarée auprès de leurs services, et qu'ils vous demandent vos numéros de cartes de crédits pour payer votre note de gaz ou électricité...

Un faux agent de la société VISA CARD, qui vous fait croire à un achat sur internet et qui vous propose de recréditer votre compte en vous demandant vos numéros de cartes de crédits, etc...

Conclusion

Comme vous pouvez le constater, la sécurité sur la VoIP est à ses premiers balbuciements.

Eviter d'interoger des serveurs vocaux bancaires, ou même de donner vos numéros de cartes de crédit au téléphone utilisant la VoIP, même pour des achats auprès de grands commerces, car votre communication peut être écoutée, enregistrée, puis ré-exploitée à votre insu...mais en votre nom!

mardi 9 octobre 2007

[Définition&Explications] Un vers ou WORM

Dans cette section pour tout public, je vais essayer d'aborder de manière la plus compréhensible un certain nombre de termes que nous utilisons dans notre métier, nos laboratoires et que, peut-être, vous rencontrerez dans les différents compte-rendus scientifiques sur ce site.

Dans ce post, voici une petite explication sur le mot WORM (vers).

La nomination du mot WORM est utilisé pour tout ce qui a une relation avec une attaque d'un groupe d'ordinateurs, serveur, connectés en réseaux.

Je qualifie cette attaque comme un code malicieux transitant sur le câble...et y restant.

Définition d'un vers

Un vers est :

- Autonome

- Sournois

- Transparent

Il se fixe sur les autostarts (les clefs de registres qui permettent de lancer automatiquement des programmes au démarrage de l'ordinateur)

Le vers effectue des rebonds sur les cartes réseaux pour affecter d’autres ordinateurs

Il ne représente pas un fléau en nombre d’infections, mais représente un nombre très important de propagations et de rebonds, appelé machines affectées.

Sa durée de vie est très longue (plusieurs mois)

Il fait réagir les Antivirus, sans pour autant qu’une action de nettoyage puisse être entreprise due aux rebonds réseaux. En d'autres termes, le worm essaye de pénétrer la machine, mais est stoppé par l'antivirus de cette machine. On parle alors que cette machine utilisateur est affectée.

Si le vers arrive à pénétrer la machine utilisateur sans qu'il soit arrêté, alors cette machine sera infecté, puisque le worm s'y sera installé !

Méthodologie d'un vers

Une machine infectée suffit pour affecter les autres machines du réseau, voire même des réseaux extérieurs car le vers contient généralement un scanner réseau.

De nombreux vers contiennent des backdoors ouvrant des portes extérieures et interagissent avec une technique BotNet pour envoyer les informations de connectivité (adresse IP) de la victime à son créateur, en vue de créer ou de renforcer le réseau des machines des utilisateurs qui ont été ou seront zombifiées.

Fonctionnement d'un worm

Il faut faire la différence en une machine infectée et affectée.

Partant sur le principe qu’un ver fonctionne si et seulement si il est lancé d’une machine infectée, il fera, via son scan réseau, une tentative d’infection puis un rebond IP pour saturer sa victime qui n’est pas forcément celle ou le rebond est effectué. Par conséquent, on appelera une machine qui reçoit le vers comme machine affectée.

Concept de fonctionnement concernant la propagation d'un vers

Le ver possède une notion de parallélisme des attaques ou des rebonds donnant ainsi naissance à du multi-threading réduisant ainsi les timeout pour une affectation et saturation importantes de sa ou ses victimes.

Le concept se porte sur les faits :

- d’infecter un nombre limité de machines afin de mieux les contrôler et de lancer une attaque en quelques secondes

OU

- de déployer en masse une affectation de rebonds en masse pour déstabiliser les accès TCP des machines vulnérables via un scan réseau, ou bien encore un déni de service contre un serveur d'une entreprise, ou bien même d'entretenir un ensemble de machines victimes pour un réseau zombie.

Simulations de Laboratoire :

On estime que 34000 machines d'utilisateurs affectés toutes les 5 secondes à partir de 17000 machines infectées résulte qu’en 36,506 secondes permettent une affectation en masse avec des Advanced worms utilisant la technique du parallélisme.

Voici une simulation effectuée sur la propagation d'un vers utilisant la technologie séquentielle de propagation. L'affectation pour 170 000 machine s'effectue en 500 minutes.

Voici une simulation effectuée sur la propagation d'un vers utilisant la technologie parallele multithreading de propagation. L'affectation pour 170 000 machine s'effectue en 70 SECONDES.

Comme on peut le constater on ne parle plus en minutes mais en seconde !!!

Voici une simulation à partir de diverses simulations de laboratoire que j'ai pu effectuées

On peut constater les temps de propagations des vers dits WORM.

Conclusion

Attention avec les détections des antivirus !

Ce n'est pas parce que l'antivirus envoie une alerte sur un worm que le poste est infecté!!!

Il faut bien lire les rapports de l'antivirus APRES un scan complet de la machine.

En effet, la machine en question peut être une machine AFFECTEE, qui recoit le vers, sans pour autant être INFECTEE.

Il vous faut impérativement trouver la source de la machine INFECTEE, car c'est elle qui fera réagir les antivirus des postes en cours d'affectation.

Dites vous, que, tant que vous n'avez pas trouver la machine infectée, l'utilisateur aura des réactions de la part des antivirus, sans pour autant être infecté !!!

Une technique des WORMs dérivée nous arrive depuis mars 2007 appelée STORM WORM et STORM BOTNET.

Nous traiterons dans cette section ces nouvelles catégories encore plus emergentes !

		

dimanche 7 octobre 2007

[Définition&Explications] Un virus

Dans cette section pour tout public, je vais essayer d'aborder de manière la plus compréhensible un certain nombre de termes que nous utilisons dans notre métier, nos laboratoires et que, peut-être, vous rencontrerez dans les différents compte-rendus scientifiques sur ce site.

Dans ce post, voici une petite explication sur le mot VIRUS.

La nomination du mot virus est utilisé pour tout ce qui a une relation avec une attaque d'un ordinateur, serveur, épidémie sur internet ou un infection informatique. Cette utilisation est incorrecte, mais elle est comprise par tous et toutes. C'est pourquoi, je vais vous expliquer les différences entre tous ces codes qui, de par leurs formes, leurs techniques, leurs propagations et infections sont nommés différemment.

Que se passe-t-il lorsqu'un logiciel ou un programme est excécuté ?

a. l'utilisateur clique sur une icone d'un programme, dans notre exemple Notepad :

b. Ce programme va se charger en mémoire RAM de l'ordinateur :

c. Le résultat après exécution apparait sous forme de fenêtre ou dans une barre de tâches

Que se passe-t-il lorsqu'un virus tente d'infecter un fichier ?

Un virus est en fait un micro-programme qui est dépendant d'un fichier utilisateur que nous appelons un fichier hôte. Le virus va effectuer plusieurs tentatives d'infections dans le fichier hôte en fonction de sa technologie. En d'autres termes, le virus s'auto-adapte selon les fichiers présents sur le disque dur de sa victime. Le but est d'infecter un maximum de fichier afin d'allonger sa durée de vie.

On constate sur la gauche, la structure schématique d'un fichier. De gauche à droite, représentent toutes les possibilités technologiques qu'un virus va tenter pour infecter un fichier hôte, afin qu'il puisse continuer de fonctionner nativement, mais également de lancer le virus de facon transparente.

Constatation

On se retrouve alors avec un fichier qui a en fait deux programmes, le micro-programme du virus et le programme original !

Perception de la contamination

En général, l'utilisateur ne s'appercoit de rien, car un virus est si petit, si furtif, qu'il travaille en arriere plan à l'insu de l'utilisateur.

Un virus pénètre dans la machine de sa victime par le biais de téléchargement de programmes ou de logiciels comme des sharewares ou freewares proposés sur des forums, peer to peer, par des pièces jointes attachées aux messages, ou en cliquant sur un lien web contenu dans un courrier électronique, etc...

Méthodes de détection

Les virus, utilisant ces techniques d'infections, sont généralement bien détectés et eradiqués par des logiciels antivirus.

Variantes technologiques

Pour contrer les antivirus, certaines technologies incluent dans toutes les catégories de codes malicieux comme les virus, vers, chevaux de troie, portes dérobées, rootkits, etc, et sont utilisées afin de gagner du temps de durée de vie.

Pour un code malicieux, la durée de vie est capitale, puisque plus la durée de vie est longue, plus il sera virulent, et donc plus propagateur. Par consequent, plus long à être eradiqué.

Dans cette rubrique, nous traiterons plus en détails de ces technologies.

[Définition&Explications] Technologies embarquées dans les virus

Dans cette section pour tout public, je vais essayer d'aborder de manière la plus compréhensible un certain nombre de termes que nous utilisons dans notre métier, nos laboratoires et que, peut-être, vous rencontrerez dans les différents compte-rendus scientifiques sur ce site.

Dans ce post, voici une petite explication sur certaines variantes de technologique embarquées dans les codes des virus.

Les catégories que nous allons expliquer ci-dessous peuvent être imbriquées dans codes programmes des virus.

Virus multi-partite ou virus bi-valent

C’est un virus qui capable d’infecter 2 ou plusieurs types de fichiers dans le même code.

Exemples :

- Un EXE peut infecter les fichiers EXE et le secteur de boot

- Un EXE peut infecter les fichiers EXE et le normal.dot

Les familles des virus Junky ou Tequila appartiennent au premier exemple.

Virus polymorphes ou polymorphiques

Ce type de virus change son code à chaque infection

Le décodage est géré par le code du virus lui-même !

Il est très difficile de le voir dans un désassembleur parce que la plupart du temps ces virus contiennent une routine anti-debug.

Dans ce cas, il est impossible de voir le code du virus.

On peut juste utiliser un viewer hexadécimal … mais bien souvent le virus est crypté.

La solution la plus facile consiste à travailler avec “baits file” et d’analyser les différences.

Exemple : MTX

Virus furtifs

Cette catégorie de virus peut se supprimer ou se camoufler quand un programme spécifique tourne sur la machine (par exemple un antivirus)

Généralement ils interceptent les interruptions int21h AH=11h,12h,4Eh,4Fh, int25h,int13h

Pour les voir, nous avons besoin de trouver le fichier infecté et de le regarder en hexadécimal depuis une machine saine.

Note: Un virus macro furtif est appelé ainsi si la fonction Outils/Macro disparaît.

Virus furtifs d’encryption/décryption à la volée

Ce type de virus est rare !

Le concept est que le virus chiffre le disque dur et sa position est sur le MBR (MultiBootRecord) qui lui même contient l’algo de cryptage/Décryptage à la volée.

Quand le virus chiffre complètement le disque dur, il n’est plus possible d’accéder aux données.

Exemple : OneHalf

Virus métamorphes

C’est une technologies très complexe qui utilise EPO (EntryPointObscuring).

Le virus insère/modifie lui-même un JMP dans l’EntryPoint sans aucune autre modification dans le header du fichier.

Il est très difficile pour un moteur de scan de voir la différence entre le code du programme et celui du virus. (ex:MTX).

Les virus métamorphes peuvent utiliser les instructions du Co-Processeur & MMX (Multi-Media) (ex:THORIN).

Les virus métamorphes peuvent utiliser le calcul de checksum de fichiers quand les Kernel est infecté, simulant ainsi un update d’OS (ex:KRIZ)

Virus macros

Il lance un contrôle visual basic et lance une session MAPI invisible pour l’utilisateur.

Par exemple, pour Melissa Virus, il utilise le carnet d’adresses d’Outlook pour envoyer les messages et les attachements.

Des variantes macros permettent même au code macro du virus de se cacher via les classes des fichiers word, Excel, Powerpoint.

Ils se glissent dans cette zone, qui, théoriquement, est réservée pour les wiziwig, les imprimantes. Pour cette catégories de virus, les éditeurs d'antivirus ont été obligés de modifier leurs moteurs de scan.

Virus JAVA

Les virus JAVA ont été développés pour tester les fonctionnalités.

Nous appelons cela Proof of the Concept. Ce POC a été modifiée pour créer un ver JavaScript.

Virus de script

Les virus de script sont généralement des codes malicieux compagnons.

Deux types de comportement peuvent être constatés:

- S’inclure dans la signature de mail

- Spam ou utilisation d’IRC, MSN, ICQ, Yahoo messenger pour se propager

Leurs langages peuvent être :

- HTML Script

- VBS Script

- JavaScript

- PHP coté serveur

- Virus de Script

Les scripts malicieux VBS&JS utilisant les technologies d’encryption et de polymorphisme (ex:VBS_KALAMAR).

Ils peuvent être « embedded » (insérés) dans des fichiers html/xml (ex:VBS_KAKWORM)

Les instructions du script peuvent être très dangereuses pour le système d’exploitation, les applications et les données (ex:VBS_LOVELETTER)

Les droits du script sont ceux des droits de l’utilisateur (en local ou en réseau)

Virus plaisantins dits JOKE

Les Jokes sont développés dans le but de perturber les compagnies

Ils n’ont pas d’effet destructeur, mais font perdre du temps aux administrateurs

On a tous bien connu le socle coca-cola qui lorsque l'utilisateur exécutait ce code avec un icone coca-cola, cela ouvrait le CDROM, faisant penser à un porte gobelet !!!

Mais des jokes plus pernitieux se sont vus entrainés de grave conséquences, comme une simulation d'un formatage du disque dur...alors qu'en fait, il suffisait de cliquer sur CANCEL !!!

Leurs arrivées : mail, ftp, http, cdrom, clefs usb, etc…

jeudi 4 octobre 2007

[PodCast MP3] Commentaires sur les faux Blogs générés par des Storms

Des faux blogs sont actuellement en circulation sur les moteurs de recherches et sont générés par des machines zombies.

Objectif : Augmenter le nombre de machines zombies pouvant recevoir et lancer des cyber-attaques de tout type

Explications en MP3 :

Podcast Marc Blanchard - 04oct2007-Les FauxBlogs_Storm_Woms

http://h2020.ath.cx / michael.recup@h2020.ath.cx