2010-03-30 8 views
9

Dire che sono all'URL http://mysite.com/form.html. Durante la visualizzazione di origine, vedoLe informazioni sono ancora crittografate se utilizzo un <form action = "https"> da una normale pagina http?

<form method="post" action="https://mysite.com/process"> 
<input type="text" name="user" value="information"> 
<input type="submit"> 
</form> 

Se premo il pulsante di invio, sarà l'informazione modulo essere crittografati quando viene inviata alla pagina di processo/controllore?

+0

Interessante domanda! – NibblyPig

risposta

6

Sì: i dati nel modulo verranno inviati crittografati utilizzando la normale stretta di mano implementata da SSL. Da lì puoi scegliere di mantenere il tuo utente sotto SSL o di ritrasferirlo a una connessione standard usando un identificatore di sessione.

+0

Non è sicuro. Vedi [il post di Troy Hunt] (http://www.troyhunt.com/2013/05/your-login-form-posts-to-https-but-you.html). –

+2

"È" sicuro: ciò che non è sicuro è l'invio di un modulo HTTPS da una pagina HTTP. Un MITM è sicuramente un problema, ma anche in questo caso un MITM su un modulo HTTPS è anche un problema. Mentre il punto fatto nel video è costruttivo, il tuo metodo di trasmissione non lo era. Prova ad aggiungere qualche parola in più a un singolo commento, invece di più commenti con meno parole, la prossima volta. Inoltre, Sripathi Krishnan ha già fatto questo punto più di quattro anni fa. Sembrava un po 'di necromanzia o di spam su un blog, vero? – Seidr

+0

Proverò a dare commenti migliori in futuro. Questo post è un risultato di ricerca prominente per "https form action", e questo modello è ancora troppo comune. La risposta di Sripathi Krishnan ha meno voti e non è la risposta accettata, anche se penso che dovrebbe essere la risposta accettata. –

-1

Sarà crittografato sui livelli di rete inferiori (ad esempio pacchetti non elaborati, TCP, IP, Ethernet) non a livello di applicazione (poiché è decodificato in modo trasparente dal lato del destinatario).

Un uomo nel mezzo non vedrebbe il testo normale dei dati del modulo inviato quando l'URL di destinazione utilizza la crittografia (come fa HTTPS).

+0

Non è sicuro. Vedi [il post di Troy Hunt] (http://www.troyhunt.com/2013/05/your-login-form-posts-to-https-but-you.html). –

4

Sì, ma si noti che è stato fatto un notevole sforzo per addestrare gli utenti a cercare il lucchetto SSL nella pagina contenente il modulo (se la formazione è efficace è una questione diversa). I browser, in generale, si lamentano se un modulo su una pagina protetta viene inviato a una pagina non sicura, quindi questo comportamento addestrato ha uno scopo positivo.

Se si implementa il modulo in questo modo, l'utente non avrà modo di sapere che l'invio del modulo sarà sicuro (senza guardare il codice della pagina) fino a quando non viene inviato. Questo potrebbe non essere rilevante nel tuo caso d'uso, ma va contro i tentativi di addestrare le persone a cercare il lucchetto se i dati nel modulo sono tali che l'utente deve inviarlo in modo sicuro.

+1

grazie, è un buon punto! – John

+0

No. "L'utente non avrà modo di sapere che l'invio del modulo sarà sicuro fino a quando non verrà inviato": non viene trasmesso in modo sicuro! L'autore dell'attacco potrebbe aver iniettato un keylogger JavaScript o modificato l'azione modulo. Vedi [il post di Troy Hunt] (http: //www.troyhunt.com/2013/05/your-accesso-form-messaggi-to-https-ma-you.html). –

6

Non è possibile garantire che venga crittografato o che i dati inviati raggiungano il sito Web.

Poiché la risposta originale era su http, un man-in-the-middle avrebbe potuto alterare il codice sorgente HTML, o avrebbe potuto inserire qualche javascript per modificare il parametro di azione del modulo. Così, il vostro modulo potrebbe leggere in questo modo quando raggiunge il browser

<form method="post" action="https://evilsite.com/process"> 
<input type="text" name="user" value="information"> 
<input type="submit"> 
</form> 

Il che significa che si deve usare HTTPS su tutte le pagine, se si vuole essere sicuri.

+0

Un ottimo punto – NibblyPig

Problemi correlati