7. Sicherheitsaspekte
7. Sicherheitsaspekte
Die Sicherheitsbetrachtungen aus [RFC7049] gelten; besondere Aufmerksamkeit wird auf den zweiten Absatz von Abschnitt 8 in [RFC7049] gelenkt.
Der Tag für homogene Arrays macht eine Zusage über das von ihm getaggte Datenobjekt, die ein böswillig konstruiertes CBOR-Input dann ignorieren kann. Wie immer muss der Decoder daher sicherstellen, dass er nicht durch Array-Elemente, die die Zusage nicht erfüllen, in einen undefinierten Zustand getrieben wird, und dass er in diesem Fall weiterhin seinen API-Vertrag erfüllt.
Wie bei allen Formaten, die zum Datenaustausch verwendet werden, kann ein Angreifer Kontrolle über die Form („shape“) der als Eingabe gelieferten Daten haben; die Anwendung muss diese Form daher validieren, bevor sie sie zur Grundlage ihrer weiteren Verarbeitung macht. Ein besonderer Aspekt, den typisierte Arrays hinzufügen, ist, dass ein Angreifer anstelle eines Uint8Array ein Uint8ClampedArray liefern könnte oder umgekehrt, was potenziell zu sehr unterschiedlichen (und unerwarteten) Verarbeitungssemantiken der im Speicher aufgebauten Datenstrukturen führen kann. Anwendungen, die hiervon betroffen sein könnten, müssen daher bei ihrer Eingabevalidierung sorgfältig zwischen diesen Varianten unterscheiden.