SVGO et vérification manuelle du XML
Avant de publier un SVG, on peut utiliser un outil d'optimisation comme SVGO.
Il sert à réduire les attributs inutiles, commentaires, métadonnées et taille de fichier.
C'est une opération utile.
Mais pour l'anonymat, on ne peut pas dire « c'est passé par SVGO donc c'est sûr ». Les informations que l'outil retire et celles qu'une personne doit lire ne sont pas les mêmes.
Cet article explique l'intérêt de SVGO et pourquoi il faut ensuite vérifier manuellement le XML.
Qu'est-ce que SVGO
SVGO est un outil d'optimisation de fichiers SVG.
Il sert à alléger les SVG en retirant attributs et métadonnées inutiles. Le dépôt officiel documente l'usage, les plugins et les réglages.
URL: https://github.com/svg/svgo
Ici, il s'agit d'un usage local après consultation des informations officielles. Téléverser un SVG vers un service d'optimisation en ligne peut transmettre le contenu XML et le nom de fichier à l'extérieur.
SVGO est utile, mais ce n'est pas un outil spécialisé d'anonymisation.
Son objectif principal est l'optimisation. Il ne juge pas et ne supprime pas toutes les informations liées à l'anonymat.
Ce que l'outil peut réduire
Selon les réglages, SVGO peut réduire commentaires, métadonnées, attributs inutiles ou éléments vides.
| Élément pouvant être réduit | Description | Point d'attention |
|---|---|---|
| Commentaires | Retrait de commentaires XML | Dépend des réglages |
| Métadonnées | Éléments metadata, etc. | Ne couvre pas forcément toute information |
| Attributs inutiles | Attributs non nécessaires à l'affichage | id et class peuvent rester |
| Éléments vides | Éléments non utilisés | Ne juge pas toutes les informations masquées |
| Taille du fichier | Réduit les écritures superflues | Ce n'est pas l'anonymat lui-même |
L'optimisation est une étape importante avant publication.
Mais optimisation et anonymisation ne sont pas identiques.
Pourquoi la vérification manuelle est nécessaire
Un outil ne comprend pas entièrement le sens d'une chaîne.
Par exemple, il ne sait pas forcément si project-alpha est un nom de projet interne ou un simple ID de forme. Le fait que school-map soit lié à l'anonymat dépend aussi du contexte de publication.
| Information pouvant rester | Pourquoi une personne doit regarder |
|---|---|
| id et class | Il faut juger si ce sont des termes internes ou des noms de dossier |
| Élément text | Vérifier si le texte est visible ou caché |
| Nom de fichier | Hors du traitement de l'outil |
| Sens de l'image | Arrière-plan et logos ne sont pas retirés par optimisation |
| Information contextuelle | Seules les personnes liées peuvent parfois la comprendre |
Pour l'anonymat, on regarde non seulement la structure du fichier, mais aussi le sens.
Cette vérification du sens revient finalement à une personne.
Flux de vérification manuelle
Après optimisation avec SVGO ou un outil comparable, ouvrez le SVG dans un éditeur de texte.
Vérifiez dans cet ordre.
| Ordre | Ce qu'il faut vérifier | Raison |
|---|---|---|
| 1 | Nom de fichier | Nom réel, dossier ou date peuvent apparaître |
| 2 | Élément metadata | Créateur ou outil peut rester |
| 3 | Commentaires | Notes de travail ou informations internes |
| 4 | Élément text | Texte invisible ou texte supprimé visuellement |
| 5 | id et class | Noms de calques ou termes internes |
| 6 | URL | Liens externes ou environnement interne |
Chercher seulement son propre nom ne suffit pas.
Vérifiez aussi entreprise, école, service, projet, e-mail, lieu, ancien pseudonyme et abréviation interne.
Vérifier aussi l'apparence
Même si le XML est propre, l'image peut encore montrer des informations.
Logo, enseigne, carte, emblème scolaire, badge, nom d'utilisateur, notification d'écran ou design de tableau propre à une organisation ne sont pas retirés par optimisation.
| Information visible | Risque restant | Ce qu'il faut vérifier |
|---|---|---|
| Logo | Organisation ou service visible | Remplacer si nécessaire |
| Carte | Lieu habituel ou position visible | Baisser la granularité |
| Interface écran | Compte ou notification visible | Vérifier jusqu'aux bords |
| Graphique propre | Se relie à d'anciens documents | Attention aux modèles réutilisés |
Un SVG doit être vérifié comme XML et comme image.
Un seul côté ne suffit pas.
Choisir entre SVG et PNG
Quand l'anonymat compte, publier en PNG plutôt qu'en SVG peut être une option.
La conversion PNG rend en principe invisibles les commentaires XML et les id.
Mais l'information visible dans l'image reste. La conversion peut aussi ajouter des métadonnées à l'image de sortie.
| Méthode | Avantage | Point d'attention |
|---|---|---|
| Publier en SVG | Net à l'agrandissement, modifiable | Vérifier le XML |
| Publier après SVGO | Réduit les écritures inutiles | Vérification manuelle nécessaire |
| Publier en PNG | Réduit l'information XML | Vérifier image et métadonnées |
Le meilleur format dépend du but et du risque.
Si le lecteur n'a pas besoin d'un schéma éditable, le PNG peut être une option.
Gérer aussi réglages et fichiers source
Si vous utilisez SVGO, pensez non seulement au SVG traité, mais aussi aux réglages et fichiers source.
Partager le fichier source dans le même dossier peut transmettre les informations non optimisées. Le fichier de configuration peut contenir un nom de projet ou des commentaires internes.
| Cible | Ce qu'il faut vérifier | Raison |
|---|---|---|
| SVG source | Informations non traitées restantes | Peut être partagé par erreur |
| SVG de sortie | Ce qui reste après optimisation | C'est le fichier publié |
| Fichier de configuration | Commentaires ou chemins internes | Peut être inclus dans le partage |
| Dossier | Nom de dossier ou d'organisation | Visible dans un zip |
| README | Notes de travail ou responsables | Peut être joint à la publication |
Pour l'anonymat, il ne suffit pas toujours de regarder le fichier traité.
Vérifiez aussi le dossier ou le zip envoyé, afin que l'ancien SVG, les données source ou notes ne soient pas inclus.
Automatiser, puis regarder quand même
Si vous utilisez la même procédure SVGO à chaque fois, l'automatisation aide.
Mais elle ne supprime pas la vérification. Elle prépare plutôt le fichier pour une revue humaine finale.
Après traitement automatique, ouvrez le contenu dans un éditeur, affichez-le dans un navigateur, vérifiez le nom de fichier et les fichiers joints.
Pour un fichier à haut risque, une autre personne peut aussi relire. Mais lui transmettre le fichier est déjà un partage ; choisissez donc soigneusement le destinataire.
Si la publication est un zip ou un dossier, vérifiez non seulement le SVG de sortie, mais aussi tout ce qui l'accompagne.
Un ancien SVG, des données sources, des notes ou des réglages peuvent fuiter depuis un autre endroit que le fichier optimisé.
Résumé
SVGO est un outil pratique pour optimiser les SVG.
Il peut réduire commentaires, métadonnées et attributs inutiles.
Mais SVGO n'est pas un outil spécialisé d'anonymisation. Termes internes, id, class, éléments text, nom de fichier et informations visibles dans l'image doivent être vérifiés par une personne selon le contexte.
Avant publication, ouvrez le contenu comme XML après le traitement par l'outil.
Pour l'anonymat, ce qui compte n'est pas que l'outil ait été lancé, mais ce qui reste dans le fichier final.
Outils liés
ExifTool
Ressource externe liée à cet article. Ouvrez-la seulement si elle correspond à votre situation et à votre modèle de menace.
Pourquoi il est listé ici: Elle peut aider sur le sujet de l’article, mais elle se situe hors d’Anonymity Sense et doit être vérifiée avant usage.
URL : https://exiftool.org/
MAT2
Ressource externe liée à cet article. Ouvrez-la seulement si elle correspond à votre situation et à votre modèle de menace.
Pourquoi il est listé ici: Elle peut aider sur le sujet de l’article, mais elle se situe hors d’Anonymity Sense et doit être vérifiée avant usage.