Extracteur PDF JavaScript
Extrayez et analysez le JavaScript intégré dans les fichiers PDF. Téléchargez un PDF pour rechercher les scripts OpenAction (exécution automatique à l'ouverture du document), les actions supplémentaires (AA) au niveau du document et de la page, les entrées JavaScript de l'arborescence des noms et les flux JS bruts. Affichez le code extrait avec le contexte source, copiez-le dans le presse-papiers ou téléchargez-le pour une analyse plus approfondie. Tout le traitement est local et privé sans inscription requise.
Drop your PDF here
or click to browse
Unencrypted PDF files only
Upload a PDF file to scan for embedded JavaScript. The tool detects OpenAction scripts (auto-execute on open), Additional Actions, named JavaScript entries, and raw JS streams. All processing is local — your file never leaves your device.
Pourquoi utiliser notre extracteur PDF JavaScript ?
- Détection JavaScript multi-source : détecte le JavaScript à partir de toutes les sources PDF : OpenAction (exécution automatique à l'ouverture du document), actions supplémentaires (AA) au niveau du document et de la page, entrées de l'arborescence des noms et flux JS bruts intégrés. Aucun script ne passe inaperçu.
- Visionneuse de code avec contexte : affichez le code JavaScript extrait dans une visionneuse de code avec mise en évidence de la syntaxe avec l'emplacement source, l'événement déclencheur et le numéro de page. Chaque entrée affiche son origine (OpenAction, Page AA, etc.) et sa condition de déclenchement pour un contexte complet.
- Obscurcissement et détection des menaces : signale automatiquement le JavaScript obscurci ou minifié. Les scripts OpenAction sont considérés comme des menaces hautement prioritaires car ils s'exécutent automatiquement. Des modèles suspects tels que l'encodage eval(), ActiveXObject et Base64 sont détectés.
- 100 % local et privé par navigateur : toute l'analyse PDF et l'extraction JavaScript s'exécutent entièrement dans votre navigateur à l'aide de pdfjs-dist et de l'analyse binaire brute. Vos fichiers PDF et le code extrait ne quittent jamais votre appareil. Pas de téléchargements, pas de serveurs, pas de suivi.
Cas d'utilisation courants de l'extracteur PDF JavaScript
- Analyse PDF des logiciels malveillants et du phishing : les analystes de sécurité peuvent analyser les fichiers PDF suspects à la recherche de JavaScript malveillant qui s'exécute à l'ouverture. Les scripts OpenAction sont un vecteur courant pour les téléchargements intempestifs, le phishing d'informations d'identification et la diffusion de logiciels malveillants. Identifiez et extrayez rapidement le script intégré pour une analyse plus approfondie.
- Audit de sécurité et criminalistique : auditez les documents PDF pour détecter les actions JavaScript masquées ou non autorisées. Détectez les scripts à exécution automatique, les déclencheurs de validation de formulaire, les gestionnaires d'événements de souris et les actions d'impression/document qui pourraient exfiltrer des données ou modifier le comportement du document à l'insu de l'utilisateur.
- Formulaires PDF d'ingénierie inverse : extrayez et analysez le JavaScript des formulaires PDF avec des scripts complexes de validation, de calcul ou de formatage. Comprenez comment les champs du formulaire interagissent, quelles données sont traitées et si le formulaire effectue des requêtes réseau ou des opérations sur les fichiers.
- Recherche et tests de vulnérabilités : les chercheurs peuvent examiner le code JavaScript basé sur PDF pour détecter les exploits des plug-ins de navigateur, les tentatives d'évasion du bac à sable et l'utilisation inhabituelle de l'API. Extrayez et étudiez des échantillons PDF JavaScript réels pour la recherche de vulnérabilités et le développement de règles de détection.
- Préparation à la désinfection des documents : avant de nettoyer un PDF, utilisez cet outil pour localiser et examiner tout le JavaScript intégré. Comprenez ce que fait chaque script afin de pouvoir décider de le conserver ou de le supprimer. S'associe parfaitement aux outils de désinfection PDF pour un nettoyage approfondi des documents.
- Éducation et formation : découvrez les composants internes de PDF JavaScript en examinant des exemples réels. Comprenez OpenAction, les actions supplémentaires et les entrées JavaScript nommées. Une ressource précieuse pour les cours de sécurité, la formation en criminalistique numérique et l'éducation au format PDF.
Qu'est-ce que PDF-JavaScript ?
PDF JavaScript est une fonctionnalité de script définie dans la spécification PDF qui permet aux développeurs d'intégrer du code JavaScript dans les documents PDF. Ce code peut répondre aux événements de document (ouverture, fermeture, impression), aux événements de page (entrée, sortie), aux événements de formulaire (frappes au clavier, modifications de valeur, formatage, validation) et aux événements de souris. PDF JavaScript utilise un sous-ensemble du langage JavaScript avec des objets supplémentaires spécifiques à Acrobat (application, doc, console, sécurité, etc.). Alors que les PDF légitimes utilisent JavaScript pour la validation de formulaires, le calcul automatique ou les fonctionnalités interactives, cette même fonctionnalité est fréquemment exploitée par les auteurs de logiciels malveillants pour créer des PDF malveillants qui s'exécutent automatiquement à l'ouverture, faisant de la détection JavaScript une fonctionnalité de sécurité essentielle.
Comment fonctionne notre extracteur PDF JavaScript
L'outil utilise une approche à deux volets combinant l'analyse pdfjs-dist avec une analyse binaire brute pour une extraction JavaScript approfondie :
- Extraction structurée pdfjs-dist : charge le PDF à l'aide de la bibliothèque pdfjs-dist et parcourt la structure du document pour trouver les entrées JavaScript. Cela inclut la vérification du catalogue pour les entrées OpenAction (scripts qui s'exécutent à l'ouverture du document), l'analyse du dictionnaire Names pour les actions JavaScript nommées, l'examen des actions supplémentaires (AA) au niveau du document pour les événements de sauvegarde/impression et la vérification de chaque page pour les entrées AA au niveau de la page.
- Analyse binaire brute : analyse les octets bruts du PDF à l'aide d'une correspondance de modèles basée sur les regex pour trouver des mots-clés et des structures liés à JavaScript que pdfjs-dist pourrait ne pas exposer via son API de haut niveau. Cela inclut la recherche de références /JavaScript, d'entrées /OpenAction, de dictionnaires /AA contenant des actions /JS et la diffusion de contenu avec des modèles de code de type JavaScript.
- Analyse et classification : chaque entrée extraite est classée par type de source (OpenAction, DocumentAA, PageAA, NamesTree, RawStream), condition de déclenchement et numéro de page. Le code est analysé pour détecter les modèles d'obscurcissement et l'utilisation suspecte de l'API. Les résultats sont affichés dans une liste triable avec une visionneuse de code pour une inspection détaillée.
Types de sources PDF JavaScript
- OpenAction (Critique) : La source la plus dangereuse : JavaScript qui s'exécute automatiquement à l'ouverture du PDF, sans aucune interaction de l'utilisateur. Couramment utilisé pour la diffusion de logiciels malveillants et les attaques de phishing. Immédiatement signalé comme hautement prioritaire.
- Actions supplémentaires sur le document (AA) : JavaScript déclenché par des événements au niveau du document tels que WillSave, DidSave, WillPrint, DidPrint et DocumentClose. Ces scripts s'exécutent en réponse aux actions de l'utilisateur mais peuvent être utilisés pour l'exfiltration de données ou un comportement persistant.
- Actions supplémentaires de page (AA) : JavaScript attaché à des pages spécifiques, déclenché par des événements au niveau de la page tels que PageOpen, PageClose et l'entrée/sortie de la souris. Peut s'exécuter lorsque l'utilisateur navigue dans le document.
- JavaScript nommé (Names Tree) : actions JavaScript enregistrées dans le dictionnaire Names du document avec des identifiants uniques. Celles-ci peuvent être référencées par d’autres actions ou déclenchées par programme. Souvent utilisé pour la logique de formulaire complexe.
- Raw Stream JavaScript : JavaScript détecté via une analyse binaire brute de flux compressés ou obscurcis. Ceux-ci peuvent être intégrés dans des emplacements non standard ou utiliser un codage qui les cache aux analyseurs de haut niveau.
Confidentialité et sécurité
Cet outil s'exécute entièrement dans votre navigateur en utilisant JavaScript côté client avec pdfjs-dist pour l'analyse PDF. Vos fichiers PDF, tout le code JavaScript extrait, les résultats d'analyse et toutes les données que vous copiez ne sont jamais téléchargés sur un serveur, stockés dans une base de données ou transmis sur le réseau. Toutes les analyses PDF, la correspondance de modèles, la détection d'obscurcissement et l'extraction de code s'exécutent localement sur votre appareil. Il n'y a pas d'appels API, de suivi analytique, de cookies ou de collecte de données d'aucune sorte. Cela le rend totalement sûr pour l'analyse de documents PDF sensibles, propriétaires ou potentiellement malveillants.
Foire aux questions
PDF JavaScript permet à des scripts intégrés de s'exécuter lorsqu'un PDF est ouvert, imprimé ou utilisé. Bien que les utilisations légitimes incluent la validation de formulaires, les cybercriminels utilisent fréquemment PDF JavaScript comme arme pour la diffusion de logiciels malveillants et le phishing. La détection et l'extraction de ce JavaScript sont une étape critique dans l'analyse de la sécurité des PDF.
Un script OpenAction s'exécute automatiquement dès l'ouverture d'un PDF, sans aucune intervention de l'utilisateur requise. Cela en fait le type de PDF JavaScript le plus dangereux. Les attaquants utilisent OpenAction pour lancer des pages de phishing, télécharger des logiciels malveillants ou exploiter les vulnérabilités du navigateur.
Non. Les PDF cryptés ne peuvent pas être analysés car leurs structures internes sont inaccessibles sans le mot de passe. Vous devez d'abord décrypter ou déverrouiller le PDF avant d'utiliser cet outil.
L'outil recherche les modèles d'obscurcissement courants, notamment les appels eval(), la création d'ActiveXObject, l'utilisation de String.fromCharCode, les échappements Unicode excessifs, l'encodage Base64 et le code minifié. Les entrées correspondant à plusieurs modèles suspects sont signalées comme obscurcies.
La prise en charge de JavaScript a été introduite dans PDF 1.3 (Acrobat 4.0). L'outil fonctionne avec toutes les versions de PDF jusqu'à 2.0 et peut détecter JavaScript sur toute la gamme de versions.
Non. L’outil lit et affiche uniquement le code JavaScript extrait – il ne l’exécute jamais. Le code est affiché sous forme de texte brut dans une visionneuse en lecture seule. Vous êtes totalement en sécurité tant que vous n’exécutez pas le code extrait en dehors de cet outil.
L'outil fournit un contexte pour chaque entrée, y compris sa source (OpenAction, AA, etc.), l'événement déclencheur et le numéro de page. Les scripts OpenAction sont automatiquement marqués comme étant hautement prioritaires. La détection des obscurcissements et la correspondance de modèles aident à identifier le code potentiellement malveillant.
Certains producteurs de PDF utilisent des structures ou une compression non standard qui masquent JavaScript aux analyseurs standard. L'analyse binaire brute utilise la correspondance de modèles regex sur les octets du PDF et peut détecter les scripts obscurcis ou placés dans des emplacements non standard.
Oui, 100 % gratuit, sans inscription, sans compte et sans limite d'utilisation. Numérisez et extrayez le JavaScript d’autant de PDF que vous le souhaitez. Tout le traitement est local dans votre navigateur.