Comment diagnostiquer la première rupture d'un journal d'audit chaîné par hachage
Apprenez à diagnostiquer la première rupture d'un journal d'audit chaîné par hachage, à préserver les preuves, à indiquer les offsets en octets et à délimiter les sessions concernées.

Un journal d'audit chaîné par hachage vous donne une limite nette lorsqu'il échoue : il existe un préfixe que vous pouvez vérifier, suivi de données que vous ne pouvez plus authentifier au moyen de cette chaîne. Cette limite n'est utile que si vous la signalez avec précision. Dire que « le journal d'audit est corrompu » fait disparaître ce dont les enquêteurs, les équipes de réponse à incident et les juristes ont le plus besoin.
Votre rapport doit identifier le dernier enregistrement valide, la première incohérence, l'offset exact en octets dans le fichier acquis, ainsi que les sessions qui franchissent cette limite ou la suivent. Il doit aussi distinguer ce que la chaîne prouve de ce qu'il reste à examiner. Un lien défaillant est une preuve d'incohérence. Ce n'est pas un jugement sur l'intention.
Un lien défaillant marque la fin de la preuve, pas le début de l'accusation
Un enregistrement chaîné contient normalement son propre contenu et une référence au hachage de l'enregistrement précédent. La vérification recalcule la valeur attendue à partir des octets de l'enregistrement et la compare à la valeur que l'enregistrement affirme suivre. Lorsque cette comparaison échoue, le vérificateur peut encore faire confiance au préfixe entièrement vérifié qui précède l'échec. Il ne peut pas étendre cette confiance au-delà de l'incohérence.
Cela semble évident jusqu'à ce qu'un rapport d'incident affirme : « l'enregistrement 842 a été modifié ». L'enregistrement 842 est peut-être le premier à avoir révélé le problème, mais l'enregistrement 841 a pu être modifié. Un enregistrement intermédiaire peut manquer. Une erreur de stockage peut avoir endommagé un octet de l'un ou l'autre. Le journal peut avoir été copié de façon incomplète, laissant une fin endommagée. La chaîne vous dit que la relation ne peut pas être vérifiée. Elle n'identifie pas le mécanisme.
Gardez ces termes distincts :
- Dernier enregistrement valide : dernier enregistrement complet dont le contenu, le hachage stocké et la relation avec le prédécesseur sont vérifiés par rapport au préfixe fiable.
- Première incohérence : premier enregistrement complet dont le prédécesseur déclaré ou le hachage calculé n'est pas vérifié.
- Limite de rupture : point situé entre ces deux enregistrements, exprimé par les identifiants des enregistrements et les offsets en octets.
- Suffixe non vérifié : tous les enregistrements ultérieurs qui dépendent de la séquence rompue, sauf si un autre point de contrôle indépendant les authentifie.
Cette distinction n'est pas une simple formalité. Elle détermine la façon dont vous délimitez les accès. Le préfixe vérifié peut étayer une affirmation comme « cette session d'agent a effectué cet appel API approuvé avant la rupture ». Le suffixe peut fournir une piste comme « cet identifiant de session semble avoir tenté une action SSH », mais ne le présentez pas comme authentifié cryptographiquement par la chaîne endommagée.
La RFC 5848, spécification de l'IETF consacrée aux messages syslog signés, fait le même constat pratique avec une conception différente. Elle considère le séquençage des messages et la détection des messages manquants comme des propriétés de vérification, et avertit qu'une altération ou une troncature peut invalider la validation. La leçon utile n'est pas de forcer un journal d'audit à adopter le format syslog. Il faut traiter la vérification de l'intégrité comme une propriété des données sérialisées exactes, et non comme une vague assurance qu'un journal « semble inchangé ».
Préservez les octets avant de demander à un analyseur de les expliquer
Commencez par l'acquisition. Aucun vérificateur, aussi fiable soit-il, ne peut sauver une enquête qui débute avec un fichier source écrasé, une réécriture par un éditeur de texte ou une exportation compressée qui a modifié silencieusement les fins de ligne.
Sur macOS, créez une copie de travail par un moyen contrôlé et notez sa taille et son empreinte avant d'utiliser un outil d'analyse susceptible de réécrire les métadonnées ou le contenu. Utilisez les commandes adaptées à vos procédures de preuve, mais l'enregistrement minimal suivant fournit à un réviseur des éléments concrets à reproduire :
mkdir -p case-2026-07-22
cp -p /path/to/audit-log.bin case-2026-07-22/audit-log.bin
stat -f '%z bytes %N' case-2026-07-22/audit-log.bin
shasum -a 256 case-2026-07-22/audit-log.bin
La dernière commande produit une sortie de cette forme :
9d5e...c41a case-2026-07-22/audit-log.bin
Notez l'empreinte complète, et non une version abrégée. Consignez aussi le chemin source, l'heure d'acquisition avec le fuseau horaire, le nom d'hôte ou l'identité de l'appareil selon votre procédure de preuve, l'opérateur et le fait que le fichier ait été obtenu pendant que l'application écrivait encore. Si le journal était actif, acquérez une seconde copie plus tard. Deux copies qui échouent à des offsets différents peuvent révéler une écriture incomplète plutôt qu'une rupture historique stable.
N'ouvrez pas l'original dans un éditeur. N'exécutez pas de formateur. Ne le convertissez pas d'une exportation binaire en JSON « par commodité ». Ne déplacez pas l'unique copie dans une pièce jointe de ticket qui pourrait la transformer. Créez un dérivé pour chaque expérience et préservez la copie d'acquisition sans la modifier.
C'est ici que les équipes commettent souvent une erreur discrète mais grave : elles parlent de « corruption du journal » après que l'analyseur a déjà normalisé les preuves. Un analyseur peut décoder les échappements, réordonner les champs, supprimer les champs inconnus, remplacer des caractères Unicode invalides ou considérer l'absence d'un saut de ligne comme sans importance. Ces choix peuvent être raisonnables pour l'affichage. Ils sont destructeurs pour une chaîne qui couvre les octets exacts.
Pour Sallyport, commencez par exécuter sp audit verify sur la copie préservée du journal d'audit ou sur la source d'audit prise en charge par le produit. La chaîne d'audit peut être vérifiée hors ligne sur le texte chiffré, sans accès au coffre. Capturez exactement la commande exécutée, son code de sortie et l'intégralité de sa sortie dans le dossier du cas. N'inventez pas un résumé plus propre à partir d'une capture d'écran partielle du terminal.
L'offset doit désigner le fichier acquis
Un offset de fichier est le nombre d'octets entre le début du fichier de preuves acquis et un emplacement défini. Il donne à un autre enquêteur une coordonnée stable. Un numéro d'enregistrement, souvent, ne le permet pas.
Les numéros d'enregistrement peuvent changer lorsqu'un analyseur ignore les entrées vides, qu'un collecteur regroupe des fichiers ou qu'une exportation supprime une ligne malformée. Les horodatages peuvent coïncider, arriver dans le désordre ou manquer. Un offset permet à un réviseur d'examiner les octets voisins avec une autre implémentation.
Utilisez si possible deux offsets :
- L'offset où commence le dernier enregistrement valide.
- L'offset où commence le premier enregistrement présentant une incohérence.
Si l'incohérence vient du fait qu'un enregistrement pointe vers une mauvaise valeur de prédécesseur, signalez l'offset de début du premier enregistrement incohérent. Si l'enregistrement lui-même est incomplet, signalez le début de l'enregistrement incomplet et l'offset de fin du fichier. Il s'agit de deux cas différents.
Dans une exportation organisée par lignes, grep -b peut localiser un identifiant connu par sa position en octets, mais utilisez-le seulement comme outil pratique après avoir vérifié que l'identifiant est encodé littéralement et de façon unique. Pour des enregistrements binaires ou chiffrés, utilisez un afficheur hexadécimal qui ne modifie pas le fichier. Une simple commande d'inspection peut établir les octets autour d'une position connue :
xxd -g 1 -s 104832 -l 256 case-2026-07-22/audit-log.bin
Le nombre qui suit -s est l'offset en octets. La sortie commence par des offsets hexadécimaux, suivis des valeurs d'octets et, lorsque c'est possible, d'une représentation ASCII. Préservez cet extrait comme artefact d'analyse, mais ne l'utilisez pas à la place du fichier complet.
Soyez explicite sur la signification de votre offset. « Offset 104832 » est incomplet. Écrivez : « Le premier enregistrement incohérent commence à l'offset 104832 dans le fichier dont l'empreinte SHA-256 est 9d5e...c41a, mesuré à partir de l'octet zéro du fichier acquis. » Si le journal comporte un en-tête de conteneur, précisez si l'offset l'inclut. Il devrait l'inclure, car le prochain réviseur ouvrira le fichier que vous avez acquis, et non le flux d'enregistrements interne de votre analyseur.
Une erreur fréquente consiste à donner un offset calculé après décompression. Cela peut aider un développeur à reproduire un problème d'analyseur, mais ne désigne pas un emplacement dans le fichier de preuves. Signalez les deux uniquement si vous les étiquetez clairement : l'un est l'offset dans les preuves brutes, l'autre est l'offset d'une analyse dérivée.
Vérifiez les enregistrements dans l'ordre et arrêtez la confiance à la rupture
Un vérificateur doit traiter les enregistrements dans l'ordre où ils sont stockés, calculer la valeur de chaîne attendue à partir de la représentation exacte authentifiée de chaque enregistrement et la comparer à la référence de chaîne stockée. Le premier échec est le premier point où le vérificateur ne peut plus déduire la relation déclarée à partir du préfixe vérifié.
Ne parcourez pas la suite pour choisir une incohérence ultérieure parce qu'elle semble plus spectaculaire. Le premier échec détermine l'étendue de la preuve. Les échecs suivants peuvent être des conséquences de celui-ci, des défauts indépendants ou les effets d'un analyseur qui n'est plus synchronisé.
La sortie utile ressemble à ceci, même si votre vérificateur utilise d'autres noms de champs :
verification_status: failed
last_valid_record: 841
last_valid_offset: 104576
first_mismatch_record: 842
first_mismatch_offset: 104832
failure_kind: predecessor_hash_mismatch
expected_predecessor: 6f4a...
observed_predecessor: c928...
affected_session_ids: sess-17, sess-21, sess-24
Ces valeurs illustrent la structure d'un rapport ; vous ne devez pas les fabriquer à partir d'un outil. Votre rapport réel doit contenir l'identifiant stable de l'enregistrement lorsqu'il existe, sa position ordinale dans le fichier et son offset en octets. Si les identifiants sont chiffrés ou indisponibles pour un outil hors ligne, consignez d'abord la position ordinale et l'offset, puis utilisez une procédure d'analyse autorisée pour relier la limite aux sessions.
Classez la défaillance avec précision. Ces cas n'ont pas les mêmes conséquences :
- Incohérence du prédécesseur : la référence de l'enregistrement vers le hachage précédent ne correspond pas au prédécesseur vérifié.
- Incohérence du hachage de l'enregistrement : le condensat stocké de l'enregistrement ne correspond pas à celui calculé à partir des octets authentifiés.
- Séquence manquante : des valeurs de séquence explicites ou des points de contrôle montrent qu'un ou plusieurs enregistrements sont absents.
- Enregistrement malformé : le vérificateur ne peut pas analyser un enregistrement complet suffisamment pour calculer la valeur de chaîne.
- Fin tronquée : le fichier se termine avant qu'un dernier enregistrement soit complet.
Ne résumez pas ces cinq cas par « altération ». Une incohérence du prédécesseur dans un enregistrement complet diffère d'une perte d'alimentation pendant un ajout. Un enregistrement malformé peut provenir d'une dégradation pendant le transport. Une preuve de séquence manquante peut établir l'absence d'enregistrements, même lorsque tous ceux qui restent ont un hachage correct.
La publication spéciale 800-92 du NIST considère la gestion des journaux comme bien plus que du stockage : les organisations doivent configurer les sources, analyser les journaux, répondre aux événements, conserver les données et auditer également la gestion des journaux. C'est le bon cadre opérationnel pour une rupture de chaîne. Le vérificateur vous indique où l'authenticité s'arrête. Il vous faut encore examiner la collecte, la conservation, les terminaux et les comptes rendus de réponse pour comprendre pourquoi.
Une session peut franchir la limite sans apparaître à cet endroit
Les sessions concernées ne sont pas simplement les identifiants imprimés sur le premier mauvais enregistrement. Une session peut commencer dans le préfixe vérifié, effectuer des actions après la rupture et ne jamais répéter son identifiant dans la partie endommagée. Une autre peut apparaître pour la première fois dans le suffixe non vérifié, tout en ayant un processus, une approbation ou une utilisation d'identifiant associés visibles avant la limite.
Déterminez le périmètre des sessions à partir des enregistrements situés des deux côtés de la rupture. Pour chaque session, classez sa relation avec la limite :
| Classe de session | Schéma de preuve | Traitement dans le rapport |
|---|---|---|
| Entièrement vérifiée | Le début, les actions et la fin précèdent la rupture | L'historique étayé par la chaîne reste intact |
| Franchissante | Des preuves de la session apparaissent avant et après la rupture | Activité initiale vérifiée, activité ultérieure non vérifiée |
| Première apparition à la limite | La première occurrence est l'enregistrement incohérent | Traiter tout l'historique observé de la session comme non vérifié |
| Limitée au suffixe | Tous les enregistrements observés se situent après la rupture | Utiliser comme piste d'enquête, pas comme historique authentifié |
| Peut-être omise | Des preuves externes font référence à une session absente de la chaîne | Enquêter sur une lacune, pas sur une session normale du suffixe |
Ne vous appuyez pas uniquement sur les horodatages pour décider si une session a franchi la limite. Les horloges dérivent, les enregistrements peuvent être mis en mémoire tampon et un écrivain de journal peut effectuer des écritures par lots. Utilisez les identifiants de session, les identifiants de processus lorsqu'ils sont disponibles, les identifiants d'exécution de l'agent, les identifiants de corrélation d'action et les enregistrements explicites de début ou de fin. Si le système n'expose pas tous ces champs, indiquez cette limite au lieu de prétendre qu'une fenêtre temporelle suffit.
Une feuille de travail pratique rend le raisonnement vérifiable :
Boundary: valid record 841 at offset 104576
mismatch record 842 at offset 104832
Session sess-17
first observed: record 809, verified
last verified action: record 838
later references: records 842-850, unverified
classification: crossing
Session sess-21
first observed: record 842, unverified
supporting evidence: endpoint process journal reference
classification: first seen at boundary
La feuille doit indiquer la source de preuve de chaque conclusion. Une « preuve complémentaire » peut être un journal de session, un enregistrement de processus du terminal, un événement d'application, un accusé de réception d'API distante ou un journal du serveur SSH. Il ne suffit pas d'écrire qu'une session était « probablement active ». Les enquêteurs doivent savoir si la conclusion vient de la chaîne, d'un autre journal ou d'une déclaration d'opérateur.
Sallyport conserve les exécutions d'agents dans un journal Sessions et les appels individuels dans un journal Activity, tous deux issus du même journal d'audit chiffré et chaîné par hachage. La limite de la chaîne concerne donc les deux vues, mais elle ne permet pas de considérer un affichage convivial du journal comme un substitut au résultat du vérificateur. Utilisez les journaux pour identifier les sessions et les appels à examiner, puis indiquez l'état de la chaîne pour chaque affirmation.
Le dernier enregistrement complet nécessite sa propre décision
Un fichier qui se termine brusquement pose une question différente de celle d'un enregistrement qui échoue à la vérification du prédécesseur. Vous devez déterminer si les derniers octets contiennent un enregistrement complet mais incohérent, ou une écriture incomplète qui n'a jamais formé d'enregistrement.
Commencez à la fin du fichier et déterminez les règles de cadrage des enregistrements pour ce format. Un format délimité par des lignes peut exiger un saut de ligne, mais son absence ne signifie pas automatiquement que l'enregistrement est incomplet. Un format binaire préfixé par une longueur permet de comparer la longueur déclarée aux octets restants. Un conteneur chiffré peut comporter une balise de cadrage authentifiée qui distingue un enregistrement complet invalide d'un ajout inachevé.
Signalez l'un de ces constats, et non un mélange vague :
- « Le dernier enregistrement complet est vérifié ; le fichier se termine par 73 octets qui ne forment pas un enregistrement complet. »
- « Le dernier enregistrement complet commence à l'offset 104832 et échoue à la vérification du prédécesseur. »
- « Le dernier enregistrement déclare 512 octets, mais il n'en reste que 301 ; le calcul du hachage du contenu n'a pas été possible. »
Cette formulation compte, car la réponse opérationnelle diffère. Une fin tronquée pendant un incident peut nécessiter la récupération d'une autre copie, des diagnostics de stockage et une comparaison avec un collecteur. Un enregistrement complet incohérent exige les mêmes comparaisons, mais aussi la préservation immédiate de l'état du terminal et des enregistrements d'accès, car le contenu était présent et incohérent.
Ne complétez pas un enregistrement tronqué à partir de votre mémoire, d'une autre exportation ou d'une entrée similaire. Vous pouvez créer un dérivé reconstitué pour le dépannage, mais le fichier reconstitué n'est pas la preuve acquise. Notez dans le dossier du cas le nom de la reconstitution, la méthode et les octets sources.
Un dernier enregistrement propre ne prouve pas non plus que le fichier est complet. Une chaîne peut être parfaitement vérifiée après la suppression d'un segment terminal entier si la conception ne comporte ni point de contrôle externe, ni racine signée, ni nombre de séquences attendu, ni enregistrement de conservation fiable. Le chaînage par hachage détecte les modifications au sein de la séquence examinée. La complétude nécessite une ancre extérieure à cette séquence.
Comparez les copies indépendantes avant de parler d'altération
Le moyen le plus rapide de surestimer une rupture de chaîne consiste à examiner une seule copie et à supposer qu'il s'agit du journal canonique. Avant d'accuser qui que ce soit, obtenez des copies indépendantes lorsque votre autorité et votre procédure d'incident le permettent.
Les comparaisons utiles comprennent un stockage local de l'application, une archive exportée, un instantané de sauvegarde, une copie du collecteur, des instantanés du système de fichiers et les enregistrements des systèmes ayant reçu l'action auditée. Donnez à chaque copie sa propre empreinte et ses propres informations d'acquisition. N'écrasez jamais l'une par l'autre parce qu'elles sont « censées être identiques ».
Suivez ce schéma de décision :
- Si deux copies acquises indépendamment échouent au même enregistrement et au même offset, avec des octets précédents identiques, le problème existait probablement avant l'acquisition. Cela ne prouve toujours pas l'intention.
- Si une copie se vérifie plus loin que l'autre, comparez les fichiers octet par octet autour de la première divergence. La copie la plus courte ou endommagée peut être incomplète.
- Si les deux copies se vérifient en interne mais diffèrent en tant que fichiers complets, vérifiez s'il s'agit de segments légitimes distincts, d'exportations aux périmètres différents ou d'une preuve de remplacement.
- Si une acquisition supposée identique change d'empreinte entre deux lectures, arrêtez l'analyse de la chaîne et examinez le support source, l'écrivain actif, les permissions et le processus de collecte.
La recommandation courante, mais erronée, consiste à « simplement restaurer le journal depuis la sauvegarde et relancer la vérification ». Une copie restaurée peut aider à établir ce que contient une autre copie conservée. Elle ne répare pas les preuves originales et n'explique pas si le fichier actif a changé, disparu ou été mal collecté. Conservez les deux. La différence constitue souvent l'incident.
Les journaux d'actions externes peuvent réduire le périmètre. Si un agent a appelé une API HTTP, les identifiants de requête, les entrées d'audit du fournisseur et les modifications de ressources peuvent montrer si l'action a eu lieu. S'il a utilisé SSH, les enregistrements d'authentification et de commandes du serveur distant peuvent aider. Ces éléments ne rétablissent pas la confiance cryptographique dans le suffixe rompu, mais ils peuvent établir des faits indépendamment et identifier les sessions à contenir.
Rédigez le rapport d'incident pour qu'un autre enquêteur puisse le reproduire
Un bon rapport formule une affirmation limitée, avec suffisamment de détails pour la tester. Il ne dissimule pas l'incertitude derrière des expressions générales comme « intégrité de l'audit compromise ».
Utilisez cette structure :
Artifact
Evidence file: audit-log.bin
SHA-256: <full digest>
Size: <bytes>
Source and acquisition reference: <case record>
Verification
Tool and version: <verifier>
Command: <exact command>
Result: failed
Last valid record: <stable ID and ordinal>
Last valid record offset: <raw byte offset>
First mismatch record: <stable ID and ordinal>
First mismatch offset: <raw byte offset>
Failure classification: <specific classification>
Scope
Verified sessions: <identifiers>
Crossing sessions: <identifiers>
First seen at boundary: <identifiers>
Suffix-only sessions: <identifiers>
Related external evidence: <sources and references>
Limits
The hash chain verifies the prefix through <record>.
The chain does not establish the cause of the mismatch.
Records after <offset> require independent corroboration.
Actions taken
Evidence preserved: <references>
Access or session revocations: <references>
Copies compared: <references>
Follow-up owner and deadline: <names or case roles>
Évitez de présenter le dernier enregistrement valide comme la « dernière action sûre ». Cela signifie seulement que la chaîne peut authentifier la séquence d'enregistrements jusqu'à ce point. L'action elle-même peut avoir été nuisible, non autorisée selon une procédure d'approbation distincte ou annulée par la suite. De même, évitez de qualifier le suffixe non vérifié de faux. Il peut être parfaitement exact. Il n'est simplement plus prouvé par cette chaîne.
La première action après une défaillance stable doit être une mesure de confinement proportionnée aux sessions et aux identifiants concernés, et non un débat sur la formulation. Préservez les preuves, révoquez les sessions actives qui franchissent la limite lorsque le risque le justifie, faites tourner les identifiants exposés selon votre procédure d'incident et comparez les enregistrements indépendants. Rédigez ensuite la limite avec la précision qui permettra au prochain enquêteur de vérifier votre travail sans se fier à votre mémoire.
FAQ
La première incohérence de hachage identifie-t-elle l'enregistrement modifié par un attaquant ?
Le premier lien défaillant indique où la vérification s'est arrêtée, mais pas nécessairement où un attaquant a effectué une modification. Un enregistrement manquant, un bloc de stockage endommagé, une copie tronquée ou un prédécesseur modifié peuvent tous apparaître au niveau de l'enregistrement suivant qui tente de le référencer. Préservez le fichier et examinez les enregistrements voisins avant d'en attribuer la cause.
Quelle est la différence entre le dernier enregistrement valide et la première incohérence ?
Signalez les deux valeurs lorsqu'elles diffèrent. Le dernier enregistrement valide est le dernier dont la référence au prédécesseur stockée et le hachage calculé de l'enregistrement sont vérifiés. La première incohérence est l'enregistrement suivant qui ne peut pas être prouvé par rapport au préfixe vérifié.
Pourquoi un rapport d'incident de journal d'audit doit-il inclure un offset de fichier ?
Utilisez l'offset en octets dans la copie de preuves immuable, mesuré à partir de l'octet zéro. Si le journal est organisé en lignes, indiquez aussi le numéro de ligne, mais ne remplacez pas l'offset par ce numéro. Les offsets permettent à un autre enquêteur d'examiner les mêmes octets, même lorsque les analyseurs donnent des résultats différents.
Une chaîne de hachage peut-elle prouver qu'une personne a altéré un journal ?
Non. Une chaîne de hachage détecte que la séquence examinée ne correspond pas à la séquence attendue, mais elle n'identifie ni l'auteur de la modification ni son caractère malveillant. Comparez une autre acquisition, les éléments du système de fichiers, les journaux de l'application et l'activité du terminal avant de tirer cette conclusion.
Les enregistrements qui suivent une chaîne de hachage rompue sont-ils inutilisables ?
Traitez chaque enregistrement après le premier lien défaillant comme non vérifié, sauf si un point de contrôle indépendant ou un segment authentifié séparément apporte une autre preuve. Ces enregistrements peuvent rester utiles comme pistes d'enquête, mais ils n'ont pas le même poids probant que le préfixe vérifié.
Comment traiter un fichier journal qui s'arrête au milieu d'un enregistrement ?
Un fichier de longueur nulle, l'absence du saut de ligne final ou un dernier enregistrement partiel doivent faire l'objet d'une classification distincte : troncature ou écriture incomplète. Ne parlez d'incohérence de hachage que si un enregistrement complet possède un hachage calculable qui ne correspond pas à la valeur stockée. Préservez exactement les octets de fin tels qu'ils ont été acquis.
Dois-je réparer un journal d'audit malformé avant de lancer la vérification ?
Ne réparez pas l'original avant de vérifier la version réparée. Acquérez une copie de travail, notez son empreinte et sa taille, puis effectuez toute normalisation propre à l'analyseur dans un dérivé distinct. Les octets originaux sont les preuves ; le dérivé sert à l'analyse.
Comment déterminer les sessions d'agents touchées par un journal rompu ?
Déterminez les sessions concernées à partir des enregistrements, et pas seulement des horodatages. Incluez les sessions commencées avant la rupture et poursuivies dans la zone non vérifiée, celles vues pour la première fois au niveau de l'incohérence, ainsi que celles dont la dernière action se situe après cette limite. Une session peut franchir la limite même si son identifiant n'apparaît qu'une seule fois près du début.
Une vérification d'audit réussie prouve-t-elle que le journal est complet ?
Un résultat correct signifie que le vérificateur n'a trouvé aucune incohérence dans les octets reçus, selon ses règles de vérification. Il ne prouve pas que le fichier est complet, qu'un segment antérieur entier n'a pas été remplacé ni que l'acquisition provient de la machine attendue. Complétez la vérification par des preuves d'origine et de conservation.
Que dois-je consigner lorsqu'un vérificateur d'audit signale une défaillance ?
Relancez la vérification après avoir préservé la copie de preuves et notez la version de l'outil, la commande, le code de sortie, l'heure, l'empreinte du fichier et sa taille. Si le résultat change entre des copies identiques, cessez de considérer le problème comme une simple rupture de chaîne et examinez le chemin d'acquisition ou le support de stockage.