Analyse forensique d'un PDF signé via Connect
Analyse forensique d’un PDF signé via Connect
Section intitulée « Analyse forensique d’un PDF signé via Connect »Cette recette utilise l’outil d’analyse forensique avec les transports Connect pour reconstruire l’historique des révisions d’un document signé et signaler les changements de contenu survenus hors des plages d’octets signées. L’outil relève du niveau Enterprise : il est découvert via une sonde class_exists() et enregistré uniquement lorsque nextpdf/premium est installé aux côtés du serveur.
L’outil signale les éléments de preuve observés : révisions, plages d’octets, couverture de la signature et indicateurs heuristiques d’attaque par ombre, avec leurs scores de confiance. Un verdict « propre » correspond à l’absence de modification détectée dans le périmètre de l’analyse effectuée par l’outil ; ce n’est pas une garantie que le document n’a pas été falsifié. Les constatations étayent une enquête ; elles ne certifient pas l’intégrité.
Installation
Section intitulée « Installation »composer require nextpdf/serverConfirme la présence de l’outil forensique Enterprise avec un appel tools/list. Voir /connect/tool-catalog/.
Vue d’ensemble conceptuelle
Section intitulée « Vue d’ensemble conceptuelle »Une signature couvre une plage d’octets, et toute modification postérieure à la signature est détectable en comparant le document à cette plage (ISO 32000-2 §12.8). Les mises à jour incrémentielles ajoutent des révisions, et une signature ne couvre pas le contenu ajouté après elle (ISO 32000-2 §12.8). La chaîne des révisions peut être reconstruite à partir des sections de références croisées (ISO 32000-2 §7.5). L’outil parcourt ces structures pour construire une chronologie et signaler le contenu modifié hors de la couverture de la signature.
Surface d’API
Section intitulée « Surface d’API »Vérifie les noms des outils auprès du registre en cours d’exécution avec tools/list. Le catalogue de référence est /connect/tool-catalog/. Cette recette ne répète pas le décompte des outils.
Exemple de code — Démarrage rapide
Section intitulée « Exemple de code — Démarrage rapide »{ "jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": { "name": "forensic_analyze", "arguments": { "document_id": "<id>" } }}Exemple de code — Production
Section intitulée « Exemple de code — Production »curl -sS -X POST https://connect.example.com/v1/tools/forensic_analyze \ -H 'Authorization: Bearer '"$NEXTPDF_CONNECT_TOKEN" \ -H 'Content-Type: application/json' \ -d '{"source":"/var/lib/nextpdf/evidence/disputed-contract.pdf"}' \ -o /tmp/forensic.json -w '%{http_code}' > /tmp/forensic-status || { echo "transport failure invoking forensic_analyze" >&2; exit 1; }La réponse comprend une chronologie des révisions, la couverture de la signature par révision, une liste unsigned_modifications avec des décalages d’octets et un niveau de sévérité, des indicateurs heuristiques d’attaque par ombre assortis de scores de confiance, ainsi que les lacunes de couverture. Traite le verdict comme un élément de preuve à interpréter, pas comme une conclusion.
Cas limites & pièges
Section intitulée « Cas limites & pièges »- Aucune signature dans le document. L’outil renvoie une erreur indiquant l’absence de signature. Utilise la vérification de conformité aux normes pour valider un document non signé.
- Document chiffré. Fournis les identifiants de déchiffrement, faute de quoi l’appel échoue au lieu d’analyser partiellement.
- Références croisées mal formées. La reconstruction peut échouer sur un fichier gravement corrompu. Répare le PDF avant de le soumettre à nouveau.
- Outil absent. Sans
nextpdf/premium, l’outil forensique Enterprise n’est pas enregistré et l’appel échoue avec une erreur d’outil inconnu.
Performance
Section intitulée « Performance »Le budget indiqué dans les métadonnées d’en-tête sert de plafond documentaire. Les documents très volumineux peuvent dépasser la limite de taille d’analyse de l’outil. Dans ce cas, l’outil renvoie une erreur de limite de taille au lieu de tronquer silencieusement.
Notes de sécurité
Section intitulée « Notes de sécurité »Les indicateurs d’attaque par ombre sont heuristiques et s’accompagnent de scores de confiance. Ils signalent des motifs ; ils ne prouvent pas l’intention. Un verdict « propre » signifie qu’aucune modification n’a été détectée dans le périmètre de l’analyse effectuée : ce n’est pas une garantie d’inviolabilité. Ne consigne pas le chemin du document ni le rapport complet à un niveau de journalisation exposé en externe.
Conformité
Section intitulée « Conformité »| Affirmation | Clause | reference_id |
|---|---|---|
| Toute modification après la signature est détectable par rapport à la plage d’octets signée | ISO 32000-2 §12.8 | |
| Une signature ne couvre pas le contenu ajouté par une mise à jour incrémentielle ultérieure | ISO 32000-2 §12.8 | |
| La chaîne des révisions peut être reconstruite à partir des sections de références croisées | ISO 32000-2 §7.5 |
La prise en charge de l’analyse forensique ne certifie pas l’intégrité du document. Un examinateur indépendant interprète les éléments de preuve.
Contexte commercial
Section intitulée « Contexte commercial »L’outil d’analyse forensique relève du niveau Enterprise et ne s’enregistre que lorsque nextpdf/premium est installé aux côtés du serveur.
Spécificités de Connect
Section intitulée « Spécificités de Connect »Disponibilité des transports (MCP / REST / gRPC)
Section intitulée « Disponibilité des transports (MCP / REST / gRPC) »L’outil est invoqué de la même façon via MCP tools/call, le point de terminaison d’outil REST et le service gRPC, au moyen de l’exécuteur d’outils partagé.
Niveau de risque HITL
Section intitulée « Niveau de risque HITL »L’analyse est en lecture seule et n’est pas approval_required par défaut. Une dérogation de l’opérateur ne peut que relever son niveau de risque. Voir /connect/hitl-risk-tiers/ pour plus de détails.
Enveloppe JSON de la barrière de confirmation
Section intitulée « Enveloppe JSON de la barrière de confirmation »L’outil ne déclenche pas la barrière, sauf si une dérogation de l’opérateur l’élève à approval_required. Le contrat de l’enveloppe et celui du jeton à usage unique figurent dans /connect/hitl-risk-tiers/.
Voir aussi
Section intitulée « Voir aussi »- /cookbook/connect/compliance-check/ — validation au regard de normes nommées.
- /cookbook/connect/ltv-health-check/ — inspection des éléments de validation à long terme.
- /connect/tool-catalog/ — calcul de l’ensemble des outils par niveau.
- /connect/hitl-risk-tiers/ — le modèle de risque et la barrière.