Nome login e password nell'URL

4

Recentemente ho incontrato una webapp, che ha il suo URL nel seguente formato:

http://www.[WEBAPP].com/INetService/Show.aspx?Username=[EMAIL]&EncryptedPassword=[Some String of 32 characters length]

Ora questo sembra un modo piuttosto brutto di fornire le credenziali di accesso a specialmente dal momento che non utilizza solo http, quindi un utente malintenzionato potrebbe facilmente leggere il traffico, ma è anche possibile copiare incollare questo link dopo un qualsiasi periodo di tempo in un altro browser su un altro computer e funzionerà.

Questo significa in effetti che se la cronologia del browser degli utenti è in qualche modo compromessa (ad esempio usando incautamente un computer pubblico), l'account degli utenti può essere compromesso, e il log out essenzialmente non fa nulla.

Come dovrei procedere, dovrei avvisare lo sviluppatore dell'applicazione?

    
posta Bernd Schoolmann 21.10.2016 - 19:50
fonte

1 risposta

6

Sì, devi avvisare lo sviluppatore. Questa potrebbe essere considerata una vulnerabilità abbastanza seria. È una loro scelta scegliere o meno di ascoltare i tuoi consigli, ma almeno puoi stare tranquillo sapendo che hai fatto quello che potevi per aiutarli a migliorare la loro sicurezza per la loro applicazione web.

Alla fine della giornata sono gli unici responsabili della sicurezza dei loro utenti, e sarebbero estremamente sciocchi ignorare questa ovvia scappatoia nella sicurezza.

Se scegli di scrivere un'email / messaggio agli sviluppatori, prova a delineare le possibili conseguenze dell'inazione. Questo potrebbe aiutare a farli ripartire dal bug.

EDIT: vorrei proporre loro apportare le seguenti modifiche ...

  • Utilizza il metodo "post" quando invii moduli Web in modo che le informazioni non vengano visualizzate nell'URL della pagina web come è al momento.
  • Suggerisci implementazione SSL per aggiungere un livello base di crittografia alla comunicazione tra il client e il server
  • Suggerire di utilizzare i cookie per memorizzare le informazioni di sessione e NON utilizzare MAI le informazioni fornite in un URL come forma di autenticazione valida. In teoria, quando si progettano app come questa, sarebbe opportuno assumere che non ci si può fidare dell'utente finale e quindi gli script / software lato server devono eseguire tutta la necessaria validazione.
risposta data 21.10.2016 - 20:06
fonte