Patrick Legand

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

Virus / Logiciels espion

Fil des billets

mercredi, février 7 2007

Clac Claac Clak Klaak KlacBom... secrets divulgués

lapinEtonn_.GIFQuels farceurs ces pirates !! On a beau dire qu'en matière de piratage l'innovation a comme seule limite l'imagination de l'individu, on reste sans voix face à des trouvailles ahurissantes !

Dans les films d'espionnage, peu d'entre nous ont manqué la scène de l'agent secret reconstituant mentalement un numéro de téléphone, en analysant simplement les sons émis par les rotations successives du cadran téléphonique.

Que diriez d'une méthode consistant à voler un mot de passe en écoutant le bruit des touches frappées sur le clavier ? Délirant, n'est-ce pas ? Irréaliste, me direz-vous ?... Justement, c'est en admettant que l'adversaire parviendra à mettre au point des techniques impensables que l'on commence à entrevoir comment concevoir les architectures sécurisées.

Avant d'écarter toute possibilité, réfléchissons un peu... Tout d'abord, il est évident que la « barre d'espace » émet un son reconnaissable, nous l'avons tous constaté, il suffit d'entendre quelqu'un pianoter sur son ordinateur. À la rigueur, cela est vrai aussi pour la touche « Retour chariot ». Voyez comme nous progressons... D'accord, nous ne sommes pas encore très avancés, car il faut reconnaître que les fluctuations sonores entre un « P », un « C » ou un « 2 », si elles existent, sont à première vue beaucoup moins probantes. Toutefois, tendez un peu l'oreille et faites l'expérience : vous percevrez des différences, légères, soit, mais incontestables. En effet, il n'y a aucune raison que toutes les touches émettent rigoureusement le même son : elles ne sont pas situées au même endroit sur le clavier, les doigts de l'utilisateur ne frappent pas toutes les touches avec le même élan, il faut compter avec les écarts de tolérance, même infinitésimaux, dus à la fabrication et au montage du clavier... non, non, il y a des disparités, c'est indiscutable.

Seulement, rétorquerez-vous à juste titre, il faut tout de même avoir l'oreille fine et passablement exercée avant de pouvoir exploiter ces infimes subtilités ; ce n'est pas donné à toute le monde !

Certes, certes... Cependant, n'oublions pas que dans le domaine qui nous intéresse (le piratage), nous avons affaire à des informaticiens ; et les informaticiens se distinguent généralement par cette compulsive et exaspérante manie de faire appel à une technique qui, finalement, s'avère d'une certaine utilité lorsqu'il s'agit de faire des gros calculs : l'informatique. Et là, il faut reconnaître que les logiciels font aujourd'hui des merveilles en matière de reconnaissance vocale. Parlez, ils écrivent ; ordonnez, ils exécutent... Bientôt, ils vont vous répondre. Alors vous pensez, effectuer l'analyse spectrale d'un son aussi banal que celui d'une touche de clavier d'ordinateur, fastoche !

Bien sûr, on peut toujours objecter que chaque clavier a sa propre résonance ; que ses caractéristiques acoustiques sont elles-mêmes « modulées » en fonction de la personne qui saisit le texte ; que pour espérer voir fonctionner un jour un tel concept, il faudrait en théorie mémoriser des milliers de « profils spectraux » qui modéliseraient les comportements de la majorité des couples utilisateur / clavier rencontrés de part le monde.... Pensez donc ! Laissons cela aux fadas de méthodologies, de processus et autres doux rêveurs. Concentrons nous plutôt sur les formidables capacités d'apprentissage des logiciels : à la première mise en route, il ne savent rien de vous ni de votre clavier, mais au bout d'une dizaine de minutes, plus de 90% des caractères saisis sont identifiés !

Comment font-ils ? Tenez, un exemple simpliste basé sur notre antique analyse des fréquences (relire à ce sujet le papier sur l'histoire de la cryptologie sur ce même blog) : le son le plus souvent perçu correspondrait probablement à la lettre la plus souvent rencontrée dans la langue française ; à savoir le « E ». Ensuite viendraient le « A », puis le « I », etc. etc.

Mais à quoi bon s'embarrasser avec des techniques aussi désuètes à l'heure où des méthodes bien plus puissantes, comme l'analyse orthographique et la correction grammaticale, fournissent de précieux renseignements ? Avec un tel arsenal, le logiciel espion sait bientôt retrouver chaque caractère saisi et percer ainsi vos secrets les plus inavouables ! (attention à ce que vous écrivez...).

Ah ! J'oubliais... Il reste le problème du micro. Car il faut bien capter tous ces sons avant de les enregistrer et de les analyser. Là encore, je crains bien de plonger un peu plus dans la sinistrose. Point n'est besoin de dépêcher sur place les agents du Watergate. Chaque ordinateur dispose maintenant de son micro intégré, pourquoi diantre s'embêter ? Il suffit de programmer dans le logiciel une petite routine chargée d'activer le micro en douce, de rediriger sa sortie vers le module d'analyse, et le tour est joué !

... ou presque. Car maintenant, pour épier réellement un utilisateur, encore faut-il installer clandestinement sur son poste le petit logiciel espion, muni de toutes les fonctionnalités que nous venons de décrire. Mais est-ce vraiment besoin d'épiloguer sur ce point ? Si vous avez lu « Sécuriser enfin son PC », ainsi que d'autres billets présents sur ce même blog, vous devriez maintenant savoir qu'un pirate motivé a sous la main des dizaines de techniques pour y parvenir ; la chose est inéluctable !...

Franchement, que faire face à tant d'ingéniosité ? Si, au moins une chose : donner un grand coup de chapeau aux chercheurs de l'université californienne de Berkeley ; il fallait y penser, ils l'ont fait et ont démontré que la méthode marchait. Bravo chers adversaires ! Cela ressemblerait presque à un coup de maître, n'est-il pas ?

Eh oui !... c'est un peu la dure facette du métier de consultant en sécurité : finir par croire (un peu) en sa compétence et se retrouver invariablement Grosjean comme devant. Tout cela à cause de petits astucieux qui vous fabriquent des inventions auxquelles même Tom Cruise, dans Mission Impossible : 18, n'osera même pas penser, et qui orchestrent avec élégance et simplicité la déconfiture de la sécurité de votre système. Warfff!!!!! j'ai presque envie d'en rire... de partir en vacances... ou bien d'aller raccrocher mon tablier, je ne sais pas... Tenez, allez donc visiter notre site musical, cela vous changera les idées.

Moi je ne sais pas. Je ne sais plus... enfin si j'étais vous, je commencerais peut-être par envisager la carte à puce... on se sait jamais... si ce n'est pas trop tard...

dimanche, janvier 21 2007

L'antivirus, cet éternel leurré...

babouk-2-small.JPGAllons, bousculons quelques idées reçues. L'antivirus, vous savez ce logiciel magique sur lequel vous reposez toute votre sécurité... Eh bien, oui, vous avez deviné, il a ses limites. De grosses limites, même. Pour comprendre pourquoi vous allez bientôt essuyer une attaque virale, séquence frisson en 8 étapes :

  1. On montre mathématiquement que la détection virale (en particulier la détection de virus inconnus) est un problème impossible à résoudre. Trop complexe.
  2. Un attaquant digne de ce nom est un informaticien de haut niveau. Il connaît donc parfaitement les détails d'implémentation des moteurs d'antivirus, les stratégies qu'ils emploient pour savoir si tel ou tel code est malveillant et, par conséquent, les procédés pour tromper leur vigilance. Il saura donc bâtir à coup sûr, et quand il le voudra, des virus indécelables.
  3. La concurrence fait rage au sein de la communauté antivirale et il est primordial de ménager ses précieux clients. C'est pourquoi les éditeurs ont tendance à privilégier des techniques qui protègent, certes, mais aussi qui pénalisent le moins possible les ressources CPU de l'ordinateur. Malheureusement, cette complaisance nuit parfois à l'efficacité de la protection. Un exemple : lorsqu'ils procèdent à l'analyse d'un fichier, certains antivirus limitent la recherche à des endroits bien précis. Si le code malveillant a la malencontreuse idée de se faire une place à l'intérieur de zones non balayées par le grand Oeil scrutateur, le virus a de beaux jours devant lui.
  4. Les suites logicielles se défaussent sans vergogne sur l'utilisateur. Il n'est pas rare de voir surgir sur son écran une fenêtre porteuse d'un message de ce type : « Le programme 'hz-24Win.exe' tente d'accéder au Registre. Accepter ? Refuser ? ». C'est un comble ! L'antivirus ne sait pas ce qu'il faut faire, comment imaginer que l'utilisateur non informaticien sache à sa place, surtout lorsqu'il est confronté à un tel charabia ? (pour rassurer les âmes en peine, les informaticiens professionnels sont la plupart du temps, eux aussi, complètement largués...). Quand l'urgence est de terminer un travail, la méthode employée en pareil cas est en général toujours la même : cliquer sur « Accepter » et se débarrasser du problème. Bien entendu, lorsque l'exécutable 'hz-24Win.exe' est un code malveillant... Perdu! Les attaquants le savent et jouent là dessus. Cela fait partie de ce que l'on appelle le « Social Engineering », une catégorie d'attaques basées sur l'exploitation de l'ignorance ou de la naïveté de l'individu.
  5. Afin d'optimiser les temps de scan de volumes importants, les fichiers de définition de virus ne contiennent pas toujours les signatures de virus anciens. La machine reste donc vulnérable face à ces menaces ancestrales.
  6. Les utilisateurs, agacés par les temps de latence induits par l'antivirus (souvent dûs à une mauvaise configuration de la part de l'administrateur), désactivent purement et simplement la protection en temps réel, voire finissent par « buter » l'antivirus (ils tuent le process. Effectivement, c'est une manière d'avoir la paix...)
  7. Les antivirus basés exclusivement sur la recherche de signatures (séquences d'octets particulières dont l'existence trahit la présence potentielle de virus) sont incapables de détecter les virus polymorphes (dont la forme évolue avec le temps), chiffrés ou inconnus. Comme par hasard, les concepteurs de malwares misent actuellement de plus en plus sur le polymorphisme. Par ailleurs, si l'antivirus n'est pas à jour (le fichier de définition de virus est ancien), c'est un peu comme s'il n'existait pas (il faut compter avec l'apparition d'environ 50 nouveaux virus par jour !).
  8. En règle générale, les techniques virales évoluent plus vite que les antivirus. À supposer que l'antivirus soit à jour, si le modèle antiviral est obsolète, la machine risque inévitablement l'infection.

Pour le lecteur désireux d'en savoir plus, Éric Filiol, chef du laboratoire de virologie et de cryptologie de l'Ecole Supérieure et d'Application des Transmissions, a publié un excellent article sur le sujet. Vous pouvez le consulter à cette adresse ou une version plus complète dans le magazine MISC (numéro Septembre – Octobre 2005).

Bien entendu, il ne s'agit pas d'établir des conclusions hâtives. Disposer d'un antivirus est primordial en environnement Windows. Toutefois, il convient d'être conscient de ses limites. Une bonne sécurité passe avant tout par un faisceau de mesures. Quelques unes en trois coups de crayon :

  • Surtout, les bonnes pratiques de l'utilisateur. Cessez donc de cliquer sur tout et n'importe quoi. En entreprise : plus de téléchargement d'utilitaires gratuits non Open Source, plus de peer-to-peer, plus de messagerie instantanée, plus de jeux (oui, je sais... mais croyez moi, ces outils portent vraiment atteinte au bon fonctionnement du réseau, à la confidentialité et à l'intégrité des données).
  • En entreprise : la sécurité doit faire partie intégrante des processus de management. Désignez un responsable de la sécurité (physique + informatique). Allouez un budget permettant de définir, de déployer et de maintenir une vraie politique de sécurité.
  • Sensibilisez les utilisateurs aux problèmes de sécurité informatique en général, et à tout ce qui concerne le « Social Engineering ».
  • Des sauvegardes que diable ! Pensez aux sauvegardes !! Et vérifiez qu'elles sont exploitables !
  • Un pare-feu matériel de type « Appliance » au point de raccordement avec les réseaux extérieurs. Ce pare-feu doit être doté d'un antivirus performant, de fonctions d'analyse des protocoles applicatifs de haut niveau, de fonctions anti-spam / anti-spyware et de fonctions de mises à jour automatiques par canal sécurisé.
  • un anti-virus performant sur tous les postes de travail (avec mises à jour automatiques), issu bien entendu d'un deuxième éditeur (si un code réussit à tromper un antivirus, il aura beaucoup de mal à tromper les deux).
  • Un pare-feu logiciel sur tous les postes de travail, surtout les postes dotés d'une interface avec un réseau sans fil.
  • Des mots de passe utilisateurs à coucher dehors: « Dz{p0#9r ». Certes, c'est moins sympa que « Caroline », surtout si vous aimez Caroline, mais cela complique singulièrement la tâche des fâcheux passés maîtres dans l'art de deviner les mots de passe.
  • Tout accès distant à des ressources internes soumis à une authentification forte à l'aide de moyens cryptologiques, à travers un tunnel chiffré de type VPN.

Voilà. Je crois que c'est un bon début...

Photo: Babouk (île de la Réunion). Impressionnante (25 cm avec les pattes), inoffensive (s'accomode parfaitement de la présence de l'homme - ici dans les ustensiles de cuisine pendant 3 jours) et salutaire (se nourrit de moustiques). Une certaine analogie avec la bombe logique: l'écraser ne sert à rien, le sac d'oeufs libère dans ce cas plus d'une centaine de bébés babouk!