Passa al contenuto principale

7. Considerazioni di sicurezza

7. Considerazioni di sicurezza

Si applicano le considerazioni di sicurezza di [RFC7049]; si richiama in particolare l’attenzione sul secondo paragrafo della Sezione 8 di [RFC7049].

Il tag per array omogenei fa una promessa sull’elemento dati taggato, promessa che un input CBOR costruito in modo malevolo può scegliere di ignorare. Come sempre, il decoder deve quindi assicurarsi di non essere portato in uno stato indefinito da elementi dell’array che non rispettano la promessa e che continui comunque a rispettare il proprio contratto API anche in questo caso.

Come per tutti i formati usati per lo scambio di dati, un attaccante può avere controllo sulla forma dei dati forniti come input all’applicazione, che deve quindi validare tale forma prima di usarla come base per l’elaborazione successiva. Un aspetto peculiare che gli array tipizzati aggiungono è che un attaccante potrebbe sostituire un Uint8ClampedArray dove l’applicazione si aspetta un Uint8Array, o viceversa, potenzialmente portando a semantiche di elaborazione molto diverse (e inattese) delle strutture dati in memoria costruite. Le applicazioni che potrebbero esserne influenzate devono quindi prestare attenzione a distinguere queste varianti nella validazione dell’input.