In alcune applicazioni, i metodi HTTP GET e POST possono essere usati in modo intercambiabile.
Ad esempio, l'applicazione potrebbe aspettarsi una richiesta POST, e il frontend invierà anche i dati in una richiesta POST, ma se la richiesta viene manomessa, i dati saranno accettati anche in una richiesta GET.
Un esempio di questo comportamento sarebbe Javas getParameter
o PHP $_REQUEST
, che forniscono entrambi i parametri GET e POST.
- Questo è generalmente considerato un problema di sicurezza? È documentato da qualche parte, ad esempio come CWE o OWASP?
- Questo problema ha un nome?
- Quali sono i pericoli del POST per ottenere il downgrade? Un esempio che potrei pensare sarebbe la possibilità di sfruttare i problemi CSRF tramite i tag
img
, il che significa che un utente malintenzionato può caricare payload CSRF su siti Web in cui non possono pubblicare script, rendendo molto più facile sfruttare il problema. Ci sono altri vantaggi per gli attaccanti? - Che cosa - se del caso - sono i pericoli della modifica da GET a POST?