Sfruttare un reindirizzamento aperto nel corpo del POST?

2

Ho il seguente esempio di richiesta POST come parte di un modulo di feedback per un sito web che consente di fornire un valore arbitrario al parametro "done_url", consentendo un reindirizzamento aperto dopo che il modulo di feedback è stato elaborato.

POST /cgi-bin/formproc2.cgi HTTP/1.1
Host: foobar.com

mail_to=support%40support.com&subject=Feedback+Form&done_url=http://phishingsite.com&feedback=I+love+your+site&Submit=Submit

Ho familiarità con le tipiche forme di phishing eseguite per i reindirizzamenti aperti nelle richieste GET, come questo esempio link

Ma come potrebbe un utente malintenzionato sfruttare questo reindirizzamento nel corpo del POST?

    
posta eliteparakeet 10.09.2013 - 18:16
fonte

2 risposte

2

Di solito dovresti avere questo in un GET perché sia sfruttabile (nel senso di poter reindirizzare l'utente a un URL arbitrario dopo che hanno visitato il link), tuttavia un paio di punti si verificano a questo proposito

  • Potrebbe essere possibile convertire il POST in GET e continuare a farlo correttamente, dipende dalla logica lato server.
  • Tale modulo potrebbe avere un altro problema, ovvero che il target del principale è specificato come parametro. Se un utente malintenzionato può modificare tale parametro, può utilizzare questo modulo per inviare spam a indirizzi arbitrari. Dal punto di vista della sicurezza, il parametro mail_to deve essere conservato sul lato server non inviato dal client (se deve essere inviato dal client dovrebbe essere convalidato prima che l'e-mail sia effettivamente inviata)
risposta data 10.09.2013 - 19:05
fonte
0

Qualunque cosa potrebbe essere fatta è irrilevante, poiché proteggere tali collegamenti è economico e semplice .

Esamina questo post , che propone una soluzione generale : aggiunta di un token di sicurezza o nessuno nessuno .

    
risposta data 10.09.2013 - 23:21
fonte

Leggi altre domande sui tag