Affichage des articles dont le libellé est PDF. Afficher tous les articles
Affichage des articles dont le libellé est PDF. Afficher tous les articles

samedi 3 octobre 2009

Comment détecter les PDFs malveillants?

Avant de vous présenter comment on peut détecter les PDFs (Portable Document Format) malveillants un bref rappel du format PDF me semble nécessaire.


Un document PDF peut être défini comme un ensemble d’objets qui décrivent comment une ou plusieurs pages peuvent être affichées. Ces objets et autres composants additionnels sont gérés par une combinaison d'opérandes (objets) et opérateurs qui constituent un véritable langage dédié à la description de pages PDF.
Cette description de page se fait en 2 étapes:
  • l'application génére une description du document en langage PDF indépendante du matériel
  • un interpréteur assure ensuite le rendu et l'affichage du document à partir de la description précédente.


Tout fichier PDF contient les sections suivantes:

  • Le « Header » contient la version du fichier PDF.


  • L’ « Object » racine contient le catalogue qui décrit le contenu du fichier.


  • Les autres « Object » décrivent le type des données et leur format. Par exemple le type peut être du texte et la police « Helvetica ».


  • La table « Cross References » contient la liste des objets utilisés et les objets supprimés (ce qui signifie que lorsque vous créez un fichier PDF puis en supprimez une partie, cette partie supprimée n’est plus affichée mais elle est toujours présente dans le fichier PDF et peut donc être récupérée; danger!). La table de référence croisée (alias Cross References) permet d'accéder directement aux objets sans avoir à parcourir tout le code.


  • Le « Trailer » contient des informations essentielles à la lecture du fichier dont entre autres choses le nombre d'objets contenus dans le fichier et l'offset de la table de référence croisée (alias Cross References). Cette section bien que située à la fin du fichier est la première lue.


Maintenant que les présentations sont faites, nous allons voir comment détecter un PDF contenant un script malveillant.



Une fois de plus nous utilisons le framework «Origami 1.0.0. Beta 0» non pas cette fois pour créer un PDF malveillant mais pour détecter les PDFs malveillants.
Pour cela nous lançons le script Ruby appelé pdfscan.rb situé dans le répertoire «scripts/scan» en ligne de commande et nous obtenons le résultat suivant :






La première chose à remarquer est qu’il y a plusieurs sections dans le résultat de l’analyse:



File ID : permet de se souvenir du fichier analysé



Structure : permet d’avoir une vue rapide sur la structure du PDF (la version, les «object»,…). Chacun de ces éléments permet d'obtenir des indices pour mieux comprendre le résultat



Properties : permet de savoir si le fichier est encrypté (afin de cacher un code malveillant) ou s’il contient des fichiers embarqués (qui peuvent contenir un «malware»)



Triggers : un contenu malicieux est inutile s’il n’est pas utilisé, c’est pourquoi il est intéressant de connaître les moyens de générer des événements.



Actions : même si les actions ne sont pas nécessaires pour exploiter une faille, elles sont à suspecter car la plupart du temps un fichier PDF ne contient pas d’actions dynamiques.



Revenons aux résultats de l’analyse de notre fichier suspicieux! Si le résultat de l’analyse est suspect il apparaît en rouge. Cela signifie que vous devez vous méfier de ce PDF et l’analyser plus en détails.



A bon entendeur...



Sources: « Origami in PDF » (http://www.security-labs.org/origami/), “Blog de l’équipe R&D Essec” (http://esec.fr.sogeti.com/blog) et MISC n°38 (je ne saurais que trop vous recommander de vous y abonner) avec l'article "Les nouveaux malwares de document" d'Alexandre Blonce, Eric Filiol et Laurent Frayssignes.

samedi 5 septembre 2009

Forger des PDFs malveillants avec Origami

Dans cet article nous allons voir comment créer des PDFs malveillants en utilisant Origami. Origami est un ensemble d'outils en Ruby permettant d'analyser et de forger des documents PDF.

La vidéo ci-dessous décrit succintement comment utiliser Origami pour forger un PDF malveillant.


Vous pouvez télécharger ci-après 2 exemples de PDFs malveillants:


PDF contenant l'exécution de code Javascript et lancement du browser



PDF contenant le lancement de l'application "calc.exe"



D'une manière générale pour éviter d'avoir des applicatifs présentant des failles de sécurité, vous devez posséder un outil comme Secunia permettant de détecter les mises à jour de sécurité disponibles pour les applicatifs installés sur votre machine.

Dans un prochain article nous verrons comment, avec Origami, il est possible d'analyser les fichiers PDF afin d'y découvrir d'éventuels dangers. Mais c'est une autre histoire...!


Source: http://security-labs.org/origami/ de Guillaume Delugré & Fred Raynal. Merci également à Laurent Butti.

mardi 14 juillet 2009

PDF: attention danger!

Régulièrement nous recevons des "PDF" par mails ou nous les téléchargeons sur internet. Puis nous les ouvrons en toute confiance sans penser que la menace peut venir d'un tel fichier.

Et bien nous avons tort. La menace est aussi présente dans les "PDF". Adobe Reader et Adobe Acrobat sont actuellement sous les feux de la rampe mais bien entendu ce ne sont pas les seules applications à présenter des vulnérabilités.

Nous allons cependant nous intéresser aux "PDF" dans le cadre de cet article.

Le scénario est le suivant. Notre cible télécharge un "PDF" sur internet et l'ouvre. En l'ouvrant un canal est établi entre la cible et le pirate. Et le pirate dispose alors d'un accès à la cible grâce auquel il peut réaliser ce qu'il souhaite.

La vulnérabilité utilisée dans cette session a été découverte en Avril 2008 par Secunia Research (Référence CVE: CVE-2008-2992). Elle est causée par une mauvause gestion des limites dans la vérification des chaînes de caractères de la fonction javascript "util.printf()". Cette vulnérabilité peut être exploitée pour causer un débordement de la pile via un PDF spécialement conçu.

C'est ce que nous allons voir dans la vidéo ci-dessous:



C'est pour toutes ces raisons que je ne saurais trop vous conseiller de mettre à jour, non seulement votre OS avec les patchs fournis, mais également vos applicatifs comme Adobe Reader et les autres. Mettre à jour vos applicatifs, c'est intégrer les corrections des dernières failles de sécurité.

Vous trouverez un outil intéressant sur le site http://secunia.com/ pour vous tenir au courant des patchs de vos applicatifs (Secunia propose un outil à installer sur votre ordinateur pour scanner les applications installées et vous prévenir des mises à jour éventuelles).

A bon entendeur...!

Partager avec...