Sto provando a capirlo, perché è consigliabile convalidare il content-type
, inviato da un client a un'API REST.
Gli stati di OWASP nella scheda Trucchi sulla sicurezza REST :
When POSTing or PUTting new data, the client will specify the Content-Type (e.g. application/xml or application/json) of the incoming data. The server should never assume the Content-Type; it should always check that the Content-Type header and the content are the same type. A lack of Content-Type header or an unexpected Content-Type header should result in the server rejecting the content with a 406 Not Acceptable response.
Non dichiarano mai realmente come possa essere sfruttata una convalida mancante. Ovviamente è meglio convalidare l'input, per il parser dei dati, ma l'intestazione può essere falsificata comunque da un utente malintenzionato, giusto?
Perché è suggerita la convalida content-type
e in che modo è possibile sfruttare una convalida mancante?