# La vérification d’une sauvegarde d’audit chiffrée peut-elle prouver la récupération ?

Une sauvegarde qui ne peut pas être restaurée sur une machine propre et vérifiée sans les secrets du coffre n’est pas prête pour un incident. Elle peut encore être une copie de certains fichiers, mais personne n’a démontré qu’elle préservera les preuves dont vous aurez besoin lorsque le Mac d’origine, le compte utilisateur ou l’état de l’application auront disparu.

Les enregistrements d’audit chiffrés améliorent utilement l’exercice de récupération. Vous devriez pouvoir vérifier leur continuité tout en les laissant chiffrés. Si la procédure exige un coffre déverrouillé, un poste de travail familier ou un développeur qui se souvient du dossier à copier, elle repose sur des dépendances cachées. Ce sont elles qui transforment une récupération ordinaire en débat pendant une panne.

## Une restauration réussie et une chaîne d’audit valide répondent à des questions différentes

Un répertoire restauré répond à une question de stockage : cette machine peut-elle lire les octets sauvegardés ? Une chaîne de hachage vérifiée répond à une question de preuve : ces octets décrivent-ils toujours une séquence unique, continue et intacte d’enregistrements d’audit ? Vous avez besoin des deux réponses, et aucune ne remplace l’autre.

Les équipes regroupent souvent trois contrôles sous un mot rassurant, « restauration ». Gardez-les distincts dans le compte rendu de l’exercice.

- **L’intégrité du transfert** vérifie si la copie de récupération correspond à l’artefact de sauvegarde que vous vouliez transférer. Un manifeste SHA-256 détaché peut y répondre.
- **L’intégrité de la chaîne** vérifie si chaque enregistrement d’audit conservé se relie correctement à son prédécesseur selon les règles de vérification du format de journal.
- **L’exhaustivité de la récupération** vérifie si l’ensemble restauré couvre la période, les sessions et les enregistrements d’appels que votre plan de conservation prévoit.

La somme de contrôle d’un fichier ne peut pas révéler une tâche de sauvegarde qui a systématiquement omis le segment d’audit d’hier. Elle confirmera fidèlement que vous avez reçu un ensemble incomplet. La vérification de chaîne ne peut pas indiquer si la tâche a été exécutée trop tard ou si une règle de conservation a supprimé des enregistrements que vous deviez préserver. Elle confirme l’historique interne du contenu qui lui est présenté.

Cette distinction compte lorsque quelqu’un demande : « Peut-on lui faire confiance ? » La réponse honnête doit préciser l’affirmation : « Nous avons confirmé que cette copie a été transférée sans modification, que les enregistrements chiffrés se vérifient comme une chaîne continue et qu’ils vont jusqu’à cet horodatage. » C’est bien plus solide que d’affirmer qu’une sauvegarde a été restaurée avec succès.

NIST SP 800-34, *Contingency Planning Guide for Federal Information Systems*, considère les tests et exercices de récupération comme une partie du maintien d’une capacité de continuité opérationnelle, et non comme une formalité accomplie une fois les sauvegardes configurées. Pour une petite équipe d’ingénierie, la leçon est simple : une sauvegarde exécutée prouve qu’une tâche a tourné, un exercice prouve que les personnes et les outils peuvent atteindre un résultat défini. Une piste d’audit chiffrée vous donne un résultat vérifiable sans ouvrir d’abord le magasin de secrets.

## La machine propre doit être privée de vos commodités habituelles

Une machine de récupération propre n’a aucun lien préalable avec l’environnement testé. Créez un nouveau compte local, installez uniquement le vérificateur et ses prérequis documentés, puis utilisez un nouveau répertoire de travail. Ne vous connectez pas à la synchronisation cloud, ne copiez pas de répertoire personnel, ne restaurez pas de cache de paquets et ne rattachez pas un ancien dossier de données d’application.

Ces détails semblent méticuleux jusqu’à ce qu’ils cachent précisément la dépendance qui échouera plus tard. Une configuration synchronisée peut fournir un chemin que la procédure a oublié de documenter. Un identifiant mémorisé peut permettre à un outil de récupérer un élément qu’il devait trouver dans la sauvegarde. Un répertoire d’application copié peut faire dépendre le test d’un état local plutôt que de l’artefact de récupération.

Gardez la récupération du coffre hors de cet exercice. N’importez pas de coffre chiffré, ne le déverrouillez pas et n’approuvez aucune action pour faire fonctionner la vérification d’audit. Le vérificateur doit examiner le texte chiffré et la chaîne cryptographique, sans rejouer d’actions externes. Si quelqu’un dit avoir besoin des secrets pour savoir si la copie d’audit est intacte, arrêtez-vous et déterminez quel composant a été confondu avec le vérificateur d’audit.

Préparez la machine pour un objectif limité :

1. Installez la version documentée du vérificateur en ligne de commande, ou la même famille de versions que celle ayant produit la sauvegarde.
2. Créez sur le stockage local un répertoire d’exercice vide, avec assez d’espace pour la copie de texte chiffré et un petit dossier de preuves.
3. Transférez la sauvegarde et son inventaire ou manifeste de sommes de contrôle en suivant le chemin de récupération documenté.
4. Gardez le support source et la copie restaurée en lecture seule pendant la vérification, lorsque le système d’exploitation et le support le permettent.

Les mots « même famille de versions » méritent attention. Les formats d’audit peuvent évoluer. Un exercice doit consigner la version de l’application et celle du vérificateur, puis conserver l’installateur ou l’artefact de version selon votre pratique de conservation des logiciels. Ne résolvez pas une incompatibilité de format en installant la version la plus récente trouvée sur un ordinateur portable connecté à Internet. Cela peut rétablir la compatibilité sur le moment tout en laissant votre véritable procédure de récupération indéfinie.

## Vérifiez la copie avant de demander à la chaîne de parler

Exécutez un contrôle au niveau des fichiers avant la vérification de chaîne. Cela distingue un mauvais transfert d’un historique d’audit structurellement défectueux et fait gagner du temps lorsqu’un câble endommagé, un téléchargement partiel ou le mauvais répertoire est l’unique problème.

Sur un Mac ou un autre système doté de `shasum`, un inventaire généré au moment de la sauvegarde peut ressembler à ceci :

```
shasum -a 256 audit-export/* | sort > audit-export.sha256
```

Sur le site de récupération, copiez l’export chiffré et `audit-export.sha256` dans le répertoire d’exercice, puis exécutez :

```
shasum -a 256 -c audit-export.sha256
```

Chaque fichier répertorié doit afficher `OK`. Un fichier manquant, un nom de fichier différent ou une somme de contrôle incorrecte constitue un échec de transfert ou d’inventaire. Consignez-le avant d’exécuter le vérificateur d’audit. Ne régénérez pas le manifeste à partir des fichiers récupérés, car cela donnerait simplement un nouveau reçu à des octets modifiés.

Ce petit artefact évite une mauvaise habitude étonnamment fréquente : un opérateur voit un échec du vérificateur, recopie les fichiers et signale la réussite de la seconde tentative sans préserver ce qui a échoué. La seconde copie peut être la bonne. Elle peut aussi masquer une destination de sauvegarde défaillante, un chemin de transfert intermittent ou la sélection du mauvais instantané par l’opérateur. Conservez la copie initiale défaillante, le manifeste et la sortie de commande dans un emplacement d’incident à accès restreint.

Si votre système de sauvegarde propose déjà des versions d’objets immuables ou ses propres sommes de contrôle, utilisez-les comme contrôle supplémentaire du transfert. Ils ne remplacent pas un manifeste qui accompagne l’artefact de récupération, car l’exercice doit encore montrer ce que contenait cette copie restaurée au moment de son arrivée.

## Vérifier le texte chiffré sans déverrouiller le coffre

Une fois le contrôle au niveau des fichiers réussi, exécutez le vérificateur de chaîne d’audit sur les données d’audit copiées. La propriété importante est que la vérification fonctionne sur du texte chiffré et ne requiert pas de secret du coffre. Avec l’outil en ligne de commande Sallyport, la commande de vérification est :

```
sp audit verify
```

Exécutez-la dans le contexte de récupération documenté pour les données d’audit copiées, et non depuis le compte de production. La commande vérifie hors ligne le journal d’audit chiffré et chaîné par hachage. Elle ne doit pas déclencher de carte d’approbation, demander Touch ID, appeler une API, ouvrir une connexion SSH ni exiger le déverrouillage du coffre. Chacun de ces événements signifie que l’exercice a franchi une autre limite système.

Ne réduisez pas le résultat à une capture d’écran indiquant « réussi ». Capturez la commande elle-même, la version du vérificateur, l’identifiant de l’export d’audit ou l’horodatage de sauvegarde, le chemin local utilisé pour la copie, la date de l’exercice et le nom de l’opérateur. Ce relevé permet à un autre intervenant de distinguer une vérification propre d’une commande exécutée dans le mauvais répertoire plusieurs semaines plus tard.

Un critère de réussite utile comporte trois parties : le manifeste de sommes de contrôle réussit, le vérificateur de chaîne signale une réussite et le contenu restauré atteint la limite attendue du dernier enregistrement pour cette sauvegarde. Formulez la troisième partie avec un horodatage réel ou une limite de séquence issue de votre propre inventaire. « Assez récent » est une opinion ; « couvre la sauvegarde planifiée de 18:00 UTC » est une affirmation vérifiable.

Sallyport garde le journal source chiffré aveugle en écriture et en projette à la fois un journal Sessions et un journal Activity. Cette conception fait de la vérification hors ligne de la chaîne le contrôle de preuve ; les journaux lisibles par les personnes sont utiles pour l’exploitation, mais ne justifient pas le déverrouillage du coffre pendant la récupération.

## Une chaîne rompue doit être préservée avant toute réparation

Un échec de chaîne n’invite pas à improviser. Conservez d’abord la copie exacte qui a produit l’échec, y compris ses métadonnées de fichier lorsque votre processus de récupération peut les conserver, le manifeste de sommes de contrôle, la version du vérificateur et la sortie complète de commande. Créez ensuite une copie de travail distincte si vous devez comparer des sources.

Plusieurs causes peuvent produire le même symptôme d’échec. Une tâche de sauvegarde peut avoir capturé un segment de journal tout en omettant son prédécesseur. La conservation peut avoir supprimé un segment plus ancien sans garder les données de limite qui permettent à la vérification de continuer. Un opérateur peut avoir combiné deux exports issus de moments différents. Des dommages de stockage et une modification volontaire sont aussi possibles. Le vérificateur peut vous dire que la continuité ne tient pas ; votre enquête de récupération détermine pourquoi.

Parcourez un échec banal avant de le rencontrer sous pression. Une tâche nocturne copie le fichier journal chiffré le plus récent vers un volume de sauvegarde. Elle ignore un petit enregistrement compagnon car elle utilise un motif de nom de fichier défini il y a des mois. Le lendemain matin, un simple décompte de fichiers semble plausible et l’enregistrement le plus récent paraît présent. Pendant l’exercice, le manifeste SHA-256 réussit parce qu’il a été généré à partir de cet export déjà incomplet. Le vérificateur de chaîne échoue parce que l’enregistrement le plus récent ne peut pas se relier au prédécesseur omis.

Dans un exercice, cet échec est une bonne nouvelle. Il révèle une erreur dans la définition de la sauvegarde alors que les données d’origine et la personne qui a configuré la tâche sont encore disponibles. La correction ne consiste pas à supprimer le contrôle ni à redéfinir la réussite autour des fichiers qui ont été copiés. Corrigez la sélection d’export, conservez assez de données de continuité, créez une nouvelle sauvegarde et relancez l’exercice sur machine propre.

Ne « réparez » pas une sauvegarde défaillante dans le répertoire de preuves. Vous devrez peut-être récupérer une copie conservée plus ancienne ou une seconde destination pour restaurer le service, mais étiquetez-la comme une source différente. Dans une enquête, il faut savoir quel artefact a échoué et quel artefact a été vérifié ensuite.

## Le périmètre de restauration doit être écrit avant l’exercice

Décidez ce que la sauvegarde d’audit doit récupérer avant de toucher à la machine de récupération. La réponse comprend généralement une plage horaire, les enregistrements générés par les sessions d’agents et les appels externes concernés, ainsi que suffisamment de provenance pour identifier la version productrice. Elle peut aussi inclure l’inventaire de sauvegarde associé et le manifeste de sommes de contrôle détaché.

Elle n’inclut pas automatiquement chaque fichier associé à l’application. Le coffre contient les identifiants, et la piste d’audit enregistre le récit de la passerelle sur les exécutions d’agents et les actions individuelles. Ce sont des objectifs de récupération distincts, avec des règles d’accès différentes. Intégrer le coffre à un exercice d’audit étend l’exposition des secrets sans améliorer le résultat de la chaîne.

Rédigez une courte déclaration de périmètre qu’un opérateur peut tester. Par exemple :

```
Recovery target: encrypted audit data for the scheduled backup dated [organization timestamp]
Expected boundary: latest recorded audit entry is at or after [organization timestamp]
Required checks: transfer manifest passes; offline chain verification passes
Excluded from this drill: vault import, vault unlock, live API calls, SSH actions
Evidence retained: source identifier, verifier version, command output, operator record
```

Les champs entre crochets sont intentionnels. Renseignez-les depuis votre inventaire de sauvegarde avant l’exercice. Ne faites pas réussir l’exercice en choisissant une limite après avoir vu ce qui est arrivé.

C’est aussi là que la politique de conservation rencontre la réalité. Si une équipe promet de pouvoir reconstituer une période d’incident donnée, sa déclaration de périmètre doit couvrir cette période après les suppressions habituelles, les tâches échouées et la rotation du stockage. Une copie vérifiée de la semaine dernière ne satisfait pas une exigence d’enquête sur un événement d’hier.

## Le modèle d’approbation doit être absent de la vérification

L’approbation des actions et la vérification d’audit ont des rôles opposés. L’approbation détermine si un processus agent actif peut utiliser un identifiant pour produire un effet externe. La vérification établit si le texte chiffré d’audit stocké porte toujours un historique intact. Un exercice de récupération ne doit pas avoir besoin d’exercer le premier rôle pour accomplir le second.

Cette séparation révèle une erreur de conception subtile mais grave. Certaines équipes créent un script de récupération qui obtient un jeton, démarre la pile applicative normale, puis interroge un service en ligne pour décider si la sauvegarde est valide. Le script peut fonctionner au bureau et échouer lors d’une panne réseau. Pire, il peut créer une nouvelle activité pendant que les enquêteurs cherchent à établir ce qui s’est produit avant la panne.

Gardez l’environnement de vérification déconnecté des identifiants actifs et des systèmes externes. Si votre processus exige le téléchargement d’un paquet, récupérez-le avant l’exercice officiel et consignez la version exacte. Si le vérificateur tente un accès réseau, considérez cela comme un défaut de procédure. Un artefact d’audit doit rester inspectable lorsque DNS, les fournisseurs d’identité et la machine d’origine sont tous indisponibles.

Le même principe s’applique aux personnes. L’opérateur qui peut exécuter le vérificateur n’a pas besoin d’être autorisé à récupérer les secrets du coffre. Séparer ces rôles réduit l’accès inutile aux secrets et permet à une équipe d’incident d’établir rapidement l’état de ses preuves.

## Un compte rendu d’exercice doit rendre le prochain opérateur efficacement banal

Un exercice de reprise après sinistre remplit son rôle lorsqu’un autre ingénieur peut le répéter sans deviner. Conservez un bref relevé d’exécution à côté de la procédure, mais protégez le texte chiffré restauré et la sortie de commande avec les contrôles d’accès adaptés aux données d’audit.

Consignez ces éléments en langage clair :

- La source de sauvegarde et l’horodatage sélectionnés par l’opérateur.
- Le manifeste, la version de l’outil et le compte de la machine propre utilisés.
- La réussite ou l’échec du contrôle de somme de contrôle, de la vérification de chaîne et de la limite d’enregistrement attendue.
- Toute dépendance apparue, notamment un chemin non documenté, une requête réseau, un installateur manquant ou une demande d’autorisation.
- Ce qui a changé après l’exercice et qui est responsable du nouveau test.

N’évaluez pas un exercice comme réussi parce que l’équipe a trouvé une solution de contournement. Elle peut être nécessaire pour restaurer les preuves lors d’un véritable incident, mais elle révèle une lacune dans le processus documenté. Marquez le test initial comme échoué jusqu’à ce que la procédure habituelle fonctionne sur une machine fraîche.

Exécutez cet exercice après des changements importants dans les scripts de sauvegarde, le stockage d’audit, la conservation ou la version de l’application qui produit les enregistrements. Répétez-le selon un calendrier correspondant au délai dans lequel vous auriez besoin de preuves fiables après un incident. L’intervalle exact dépend de vos obligations et de votre fréquence de sauvegarde : notez-le au lieu de reprendre un chiffre d’une autre équipe.

Le premier exercice de récupération doit se terminer par une copie de texte chiffré préservée, une chaîne vérifiée, une limite de couverture déclarée et une liste de défauts que vous pouvez réellement corriger. S’il se termine par un coffre déverrouillé et un soupir de soulagement, recommencez.
