Передается ли мой пароль от формы в виде открытого текста?

StackOverflow https://stackoverflow.com/questions/146146

  •  02-07-2019
  •  | 
  •  

Вопрос

Вот что отправил мой браузер при входе на какой-то сайт:

POST http://www.some.site/login.php HTTP/1.0
User-Agent: Opera/8.26 (X2000; Linux i686; Z; en)
Host: www.some.site
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: en-US,en;q=0.9
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: http://www.some.site/
Proxy-Connection: close
Content-Length: 123
Content-Type: application/x-www-form-urlencoded

lots_of_stuff=here&e2ad811=мое_имя_логина&e327696=мой пароль&lots_of_stuff=here

Могу ли я заявить, что кто угодно может унюхать мое имя пользователя и пароль для этого сайта?Может быть, только в моей локальной сети?
Если так (даже только по локалке), то я в шоке.Я думал, используя

<input type="password">

сделал нечто большее, чем просто сделал все символы похожими на '*'

п.с.Если это имеет значение, я играл с netcat (в Linux) и установил соединение
браузер <=> netcat (здесь зарегистрирован) <=> прокси <=> удаленный_сайт

Это было полезно?

Решение

Все данные, отправленные через http-соединение, могут быть просмотрены кем-то на вашем пути к серверу (атака «человек посередине»).

type="password" только скрывает символ на экране, и даже другие программы на вашем компьютере могут читать данные.

Единственный способ защитить данные — отправить их через SSL (HTTPS вместо HTTP).

Другие советы

type="password" только скрывает символ на экране.Если вы хотите прекратить прослушивание, вам необходимо зашифровать соединение (т.е.HTTPS).

Вы можете либо зашифровать HTTP-соединение через HTTPS, либо использовать MD5 и другие алгоритмы хэширования, реализованные в JavaScript, которые можно использовать на стороне клиента для хеширования пароля на стороне клиента перед его отправкой, что предотвращает возможность сниффера прочитать ваш пароль.

Да, ваши учетные данные передаются в открытом виде, любой, кто слышит ваш сетевой трафик, может их прослушать.

Содержимое тела POST видимо, то есть «в открытом виде», если оно передается по незашифрованному каналу.Если вы хотите защитить тело HTTP от перехвата, вам следует сделать это по защищенному каналу, через HTTPS.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top