Le format PDF, créé en 1993 par Adobe, est un des format de document les plus utilisés dans le monde.

D’après certaines estimations, il y en aurait par exemple plus de 2 milliards d’ouverts chaque an dans Outlook. 

Mais ce format est-il sûr ? Des hackers peuvent-ils exploiter ce format pour compromettre votre terminal ? Et quelles mesures de protection peut on prendre en entreprise ? 

Petit tour d’horizon de la question. 

Qu’est ce qui contribue à la sûreté du format PDF ? 

Le format PDF (Portable Document File) bénéficie de caractéristiques qui contribuent à sa sûreté, comparé par exemple à des documents Word, ISO… 

  • Pas un exécutable : Evidemment, le PDF n’est pas un fichier exécutable, et il représente donc un risque moindre comparé à des fichiers .exe ou .iso que l’on peut monter et transformer en fichier exécutable. 
  • Difficilement éditable : Comparé à des fichiers comme Word (.docx) ou Pages (pour Apple), un PDF est plus difficile à modify et offre moins de possibilité d’édition

Compte tenu de ces éléments, il a été plus facile pour les hackers de cacher leur malware dans d’autres types de fichiers que dans des PDF. 

Mais cela ne veut pas dire qu’un PDF que vous recevez est nécessairement sûr ! 

Est ce qu’un PDF peut contenir un malware ? 

Un PDF peut être un vecteur d’attaque pour les hackers. Pour cela, ils disposent de plusieurs techniques. 

Les scripts

Des PDF ont parfois des scripts pour permettre un minimum d’éditabilité (comme par exemple pour remplir des champs ou signer un document ou pour interagir avec des boutons comme “imprimer”). 

Ces scripts peuvent être édités de manière normale (via des outils comme Adobe Acrobat Pro) et sont ensuite exécutés par les lecteurs de PDF. Mais les hackers peuvent insérer leurs propres commandes dans des fichiers PDF. 

  • Javascript : C’est sans doute la principale menace pour un fichier PDF : ce format permet l’insertion de javascript, pour permettre notamment à l’utilisateur d’interagir avec le document. Les hackers peuvent donc insérer du code javascript malicieux qui exploite des vulnérabilités pour compromettre un terminal
  • Commandes système : Il est possible d’insérer dans un PDF des commandes système qui se lanceront à l’ouverture. Celles-ci peuvent être conditionnées à une validation par l’utilisateur (similaire à la validation des macros pour un fichier Excel, PowerPoint ou Word) mais il est possible d’éditer le message pour augmenter les chances que l’utilisateur les active. Ces commandes transforment de facto le pdf en executable. 
  • Insertion de logiciels malveillants : Il est aussi possible d’insérer un malware dans un PDF. C’est par exemple faisable avec le module Mestasploit exploit/windows/fileformat/adobe_pdf_embedded_exe (Metasploit est un bibliothèque open-source d’exploits et de malware, prêts à l’usage pour les équipes de pen-testing) qui permet d’exploiter des vulnérabilités liées à certains lecteurs PDF (Adobe Reader par exemple) pour créer un accès à distance à l’ordinateur cible à l’ouverture du fichier

Le contenu multimédia

Un PDF avec du contenu multimédia intégré peut présenter un risque : les vidéos ou fichier audio peuvent être corrompus et servir à masquer du code malicieux. 

Les objets comme des fichiers Word ou Excel intégrés à un PDF peuvent également contenir du malware : ainsi l’ouverture du PDF peut mener à celle du fichier Word, et au déploiement d’un malware (loader par exemple) en cas d’activation des macros. 

Le social engineering et liens

Enfin, il existe une technique presque plus simple qui fait du PDF un vecteur intermédiaire de compromission : le social engineering (ou ingénierie sociale). 

L’objectif des hackers est ici des convaincre l’utilisateur de cliquer sur des liens présents dans le document PDF. Cela peut se faire en jouant sur différents leviers psychologiques (curiosité, peur, autorité, appât du gain…).

Les liens peuvent rediriger les utilisateurs vers des sites malveillants pour récupérer leurs identifiants (fausse page de login) ou les amener à télécharger un malware (drive-by-download)… 

Exemples de liens de phishing dans des PDF (source : Unit 42 de Google)

Quelles mesures de protection prendre pour sécuriser ses PDF en entreprise ? 

Rien de permet de sécuriser intégralement un type de fichier (surtout qu’il s’agit d’un type fichier utilisé systématiquement au quotidien), mais des mesures peuvent être prises pour réduire les risques. 

  • Installer les mises à jour : C’est une évidence mais il convient d’effectuer les mises à jour des systèmes d’exploitation, des lecteurs PDF et des navigateurs pour patcher les vulnérabilités connues
  • Désactiver le javascript dans le lecteur PDF : C’est une fonction disponible dans Acrobat Reader qui permet de se protéger de l’exécution de script Javascript malicieux
  • Utiliser le mode de protection : Pour Acrobat Reader, activer le mode protection et interdire l’ouverture de pièce jointe non-PDF avec des applications externes par le lecteur PDF
  • Sensibiliser, entraîner et aider : les équipes à détecter les attaques de phishing et de spear-phishing qui vont utiliser un fichier PDF comme vecteur, afin que vos collaborateurs adoptent les bons réflexes face à ces attaques