7.5.3. Analyse des valeurs de champ structurées
7.5.3. Analyse des valeurs de champ structurées
Plusieurs parties de cette spécification reposent sur l’analyse des valeurs de champ structurées [STRUCTURED-FIELDS] — en particulier la sérialisation stricte des valeurs de champ structurées HTTP (section 2.1.1), la référence aux membres d’un champ structuré de type Dictionary (section 2.1.2), et le traitement de la valeur @signature-input lors de la vérification d’une signature (section 3.2). Bien que les valeurs de champ structurées soient conçues pour être relativement simples à analyser, une implémentation naïve ou défectueuse d’un tel analyseur pourrait exposer des surfaces d’attaque subtiles dans l’implémentation.
Par exemple, si un analyseur défectueux de la valeur @signature-input n’impose pas la fermeture correcte des guillemets autour des valeurs de chaîne dans la liste des identifiants de composants, un attaquant pourrait en profiter pour injecter du contenu supplémentaire dans la base de signature en manipulant la valeur du champ Signature-Input sur un message.
Pour contrer cela, les implémentations devraient utiliser des analyseurs pleinement conformes et dignes de confiance pour tout traitement de champ structuré, côté signataire et côté vérificateur.