Rechercher
Contactez-nous Suivez-nous sur Twitter En francais English Language
 

De la Théorie à la pratique











Abonnez-vous gratuitement à notre NEWSLETTER

Newsletter FR

Newsletter EN

Vulnérabilités

Se désabonner

Intego : Fonctionnement de la fonction anti-malware sous Snow Leopard d’Apple

septembre 2009 par Intego Security Alert

Depuis que nous avons publié un article traitant de la nouvelle fonction anti-malware d’Apple sous Snow Leopard1, de nombreuses publications ont été rédigées sur son mode de fonctionnement. Nous avons réalisé une comparaison de la fonction anti-malware d’Apple et de VirusBarrier X52, mettant en évidence certaines fonctionnalités présentes (ou manquantes) chez Apple. À présent, nous allons examiner cette fonction plus en détail et décrire précisément son fonctionnement et ce qu’elle fait (ou ne fait pas) pour protéger les Mac contre les logiciels malveillants.

De nombreux sites Web ont appelé cette fonction « XProtect », du nom d’un fichier qui contient des informations nécessaires à son fonctionnement. Apple n’a pas donné de nom « officiel » à cette fonction. C’est pourquoi nous nous contenterons de l’appeler « fonction anti-malware d’Apple ». Le fichier Xprotect, appelé Xprotect.plist, se trouve dans /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/. Cet emplacement est assez caché : il se trouve dans CoreTypes.bundle qui est un paquet comprenant essentiellement des icônes.

Dans ce paquet, il existe également un autre fichier qui nous intéresse. Il s’appelle Exceptions.plist et contient une liste de programmes qui utilisent la fonction antimalware d’Apple. Nous allons nous intéresser de plus près au contenu de ces deux fichiers ciaprès. Quel est donc le principe de cette fonction anti-malware ? Apple utilise depuis un certain temps déjà une fonction de « quarantaine » dans Safari, Mail et iChat. Cette fonction repère les fichiers téléchargés, reçus sous forme de pièces-jointes aux e-mails ou reçus lors de sessions de chat, et leur assigne un attribut étendu (données non visibles par les utilisateurs) contenant les informations suivantes : l’heure du téléchargement et l’application ayant servi au téléchargement. Voici à quoi ressemble un attribut étendu pour une image disque téléchargée avec Safari : com.apple.quarantine : 0000 ;4a9bc528;Safari.app ;2E402B0A-4A8B-4E0CB51B- 47DE7BD0361E|com.apple.Safari

Notez que cet attribut étendu est ajouté à tous les fichiers reçus de la manière décrite ci-avant.

Cependant, la fonction de quarantaine n’examine que certains types de fichiers, essentiellement des fichiers exécutables (applications ou scripts) et des paquets d’installation. Si vous double-cliquez sur un fichier exécutable ou un paquet d’installation dans l’image disque après l’avoir montée, la fonction de quarantaine repère l’attribut étendu et le système affiche automatiquement un avertissement : Cela se produit également si vous téléchargez un fichier exécutable ou un paquet d’installation dans une archive. Après en avoir extrait le fichier exécutable et avoir doublecliqué sur celui-ci, l’avertissement ci-dessus est affiché.

Pour ce qui est des logiciels malveillants, la nouvelle fonction d’Apple se sert de ce système de quarantaine pour analyser les fichiers et, s’il trouve quelque chose, la fenêtre suivante est affichée : Note de sécurité Intego – 2 septembre 2009 www.intego.com

Que recherche la fonction anti-malware d’Apple ?

Examinons à présent le fichier XProtect.plist que nous avons déjà évoqué. Si l’on ouvre ce fichier avec Property List Editor d’Apple, on constate qu’un total de deux types de logiciels malveillants figure dans la liste : le cheval de Troie RSPlug.A et le cheval de Troie iServices.

Intego les a découverts respectivement en octobre 20073 et en janvier de cette année4. Il existe actuellement 17 variantes du cheval de Troie RSPlug et plusieurs variantes du cheval de Troie iServices en circulation. Il est intéressant de se demander si la fonction anti-malware d’Apple peut détecter toutes les variantes existantes du cheval de Troie RSPlug. Les chasseurs de virus d’Intego ont réalisé des tests et ont découvert qu’Apple détecte seulement 15 des 17 variantes du cheval de Troie RSPlug. Cela signifie que deux de ces variantes parviennent à passer à travers les mailles du filet d’Apple. Il s’avère que Snow Leopard ne détecte pas les variantes RSPlug.A et RSPlug.C. En outre, la fonction anti-malware d’Apple n’identifie pas correctement les variantes qu’elle trouve car, pour toutes les variantes du cheval de Troie RSPlug, l’alerte affichée indique que la variante RSPlug.A a été détectée.

En ce qui concerne le cheval de Troie iServices, cela se complique quelque peu. Ce cheval de Troie a été découvert dans des logiciels piratés distribués via des sites BitTorrent. Or, Apple ne repère pas les fichiers téléchargés à l’aide de clients BitTorrent (voir plus loin). Donc, à moins que quelqu’un ne se mette à distribuer ces images disques infectées d’iWork ’09 et de Photoshop CS3 via des sites Web, la fonction anti-malware d’Apple ne détectera jamais les chevaux de Troie iServices sous toutes leurs variantes. Il convient de signaler une faiblesse majeure dans ce système. Le programme d’installation d’Apple utilise deux types de fichiers d’installation : des fichiers .pkg et des fichiers .mpkg.

Les premiers ne sont que de simples fichiers de paquets alors que les seconds sont des fichiers de méta-paquets, qui contiennent plusieurs paquets, généralement pour des installations comportant divers éléments. Il s’avère que, d’après nos tests, la fonction anti-malware d’Apple ne détecte pas les logiciels malveillants contenus dans les fichiers.mpkg. Nous avons testé plusieurs exemplaires du cheval de Troie RSPlug dans des fichiers de métapaquets et aucune alerte n’est affichée. Certains fichiers contenus dans les méta-paquets, cependant, ont déclenché des alertes lorsqu’ils ont été ouverts individuellement.

Quelles sont les applications protégées ?

Nous avons mentionné ci-avant qu’il existe un fichier appelé Exceptions.plist qui contient une liste de programmes qui peuvent utiliser la fonction anti-malware d’Apple.

La liste des identifiants des programmes pour lesquels Snow Leopard surveille actuellement la présence de logiciels malveillants se trouve sous la rubrique Additions. Elle contient des navigateurs Web (Internet Explorer, Firefox, OmniWeb 5, Opera, Shiira, Mozilla Navigator et Camino) et des clients de courrier électronique (Entourage, Seamonkey et Thunderbird). Il faut ajouter à ces programmes Safari, Mail et iChat d’Apple, qui n’apparaissent pas dans le fichier. La clé LSFileQuarantineEnabled est définie dans leurs fichiers info.plist. Toute application qui inclut cette clé bénéficie de la protection par quarantaine d’Apple, mais cette décision revient à chaque développeur5. Cela ne s’applique toutefois pas à tous les types de fichiers. Pour le moment, les applications et les autres fichiers exécutables (comme les scripts) sont repérés tout comme les paquets d’installation. D’autres types de fichiers sont également repérés, mais les chevaux de Troie se faisant passer pour des fichiers qui ne sont pas des applications parviennent à s’infiltrer. Certains programmes de messagerie instantanée (comme MSN, Adium et Skype), certains clients de courrier électronique (PowerMail, Mailsmith, etc.) et surtout un grand nombre d’applications permettant de télécharger des fichiers ne provenant pas du Web se font remarquer par leur absence dans la liste. Aucun programme FTP et aucun client BitTorrent ou autre programme peer-to-peer n’est protégé, or ces deux types de programmes sont des vecteurs d’infection courants.

Il convient de signaler également que le Finder n’est pas protégé. Par conséquent, les fichiers copiés à partir de volumes réseau ou de supports amovibles (comme les clés USB) ne sont pas analysés. En outre, la fonction anti-malware d’Apple ne peut réparer ni des fichiers infectés ni les dégâts susceptibles d’avoir été causés si un Mac est déjà infecté. Dans ce cas, en effet, Apple n’est même pas capable de vous dire que votre Mac est infecté.

L’inconnue : les mises à jour des définitions de virus Apple a affirmé que les mises à jour du fichier de définition de virus, XProtect.plist, seraient réalisées par son application Mise à jour de logiciels, mais n’a pas précisé à quelle fréquence. D’une part, seuls deux chevaux de Troie sont inclus dans les définitions actuelles, ce qui est loin d’être suffisant face à l’ampleur des logiciels malveillants qui menacent les Macs. D’autre part, on ne sait pas clairement si Apple va attendre que des mises à jour de sécurité actualisent ce fichier ou si des mises à jour indépendantes seront publiées plus souvent (Apple publie des mises à jour de sécurité pour Mac OS X dix fois par an en moyenne). En revanche, les logiciels antivirus commercialisés bénéficient de mises à jour fréquentes. Dans le cas d’Intego, des mises à jour sont disponibles au moins deux fois par semaine et même plus souvent lorsque des nouveaux logiciels malveillants ou des nouvelles variantes sont découvertes.

Bilan

Force est de constater qu’Apple a ajouté à Snow Leopard une fonction anti-malware très limitée. Non seulement elle n’analyse que les fichiers provenant d’un petit nombre d’applications, et ce, uniquement pour deux chevaux de Troie, mais en plus elle n’a même pas détecté toutes les variantes actuelles que nous avons testées. Elle n’est pas capable de réparer les fichiers ou d’analyser votre Mac pour rechercher les infections existantes. Elle ne détecte pas les logiciels malveillants contenus dans les méta-paquets, ce qui facilite leur diffusion en parvenant à contourner la protection d’Apple. Elle n’est pas capable d’analyser les volumes réseau et ne repère même pas les fichiers infectés copiés à partir d’un support amovible. En résumé, la fonction anti-malware d’Apple sous Snow Leopard est remarquable de par l’absence de protection efficace fournie aux utilisateurs Mac.


1 http://blog.intego.com/2009/08/25/s...

2 http://blog.intego.com/2009/08/28/i...’s-mac-os-x-10-6-snow-leopardanti- malware-function/

3 http://blog.intego.com/2007/10/31/i...

4 http://blog.intego.com/2009/01/22/m...

5 http://developer.apple.com/mac/libr...




Voir les articles précédents

    

Voir les articles suivants