Безопасная отправка даных из формы

Rosco

Новичок
Безопасная отправка даных из формы

Умный броузер переодически напомнает что отправлять данные из моей формы небезопасно - перехватить могут.
Не подскажет ли многоуважаемое сообщество безопасный способ отправки данных?

Является ли единственным безопасным методом отправки паролей отправка их hash`ей после обработки JScript`ом?

Заранее благодарен.
 

tony2001

TeaM PHPClub
>Не подскажет ли многоуважаемое сообщество безопасный способ отправки данных?
SSL ?
 

Rosco

Новичок
Автор оригинала: tony2001
>Не подскажет ли многоуважаемое сообщество безопасный способ отправки данных?
SSL ?
В смысле протокол https? Но он не везде (не на каждом хостинге) поддерживается... Или я что-то путаю?
 

Lav

Guest
Rosco
Не путаешь, всё верно. Просто броузер - параноик.
 

Rosco

Новичок
Насчет параноика - это вряд ли. Но обо всем по порядку.

1. Безопасная отправка данных необходима как воздух - иначе куль-хацкер Вася П. с помощью сниффера...

2. В использовании SSL как минимум два минуса -- проблемы с тем, чтобы заставить его работать на нужном хостинге и платные нормальные сертификаты.

3. Тут в форуме много чего предлагали, в основном md5 JScript`ом. Но это
а) изврат
б) тормоза
в) несовместимость
г) как мне кажется НЕ решает проблему компа посередине.

4. Посмотрел как отправлают данные "профессионалы". Привожу код формы отправки логина и пароля с http://www.sitemanager.bitrix.ru/?referer1=bitrix&referer2=smdemo:

___________________________________________
<form name="form_auth_form" method="post" target="_top" action="/ru/index.php?referer1=bitrix&referer2=smdemo&login=yes">
<input type="hidden" name="AUTH_FORM" value="Y">
<input type="hidden" name="TYPE" value="AUTH">
<table width="95%" border="0" cellspacing="0" cellpadding="1" align="center" class="tableborder">
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr valign="middle">
<td align="center" class="tablehead"><font class="text">Авторизация</font></td>
</tr>
<tr valign="middle">
<td align="center" class="tablebody"><font class="tablebodytext">
<input type="text" name="USER_LOGIN" maxlength="50" size="10" value="demo" class="inputfield">
</font></td>
</tr>
<tr>
<td align="center" class="tablebody"><font class="tablebodytext">
<input type="password" name="USER_PASSWORD" value="demo" maxlength="50" size="10" class="inputfield">
</font></td>
</tr>
<tr>
<td align="center" class="tablebody"><font class="tablebodytext">
<input type="submit" name="Login" value="Login" class="inputbutton">
</font></td>
</tr>
</table></td>
</tr>
</table>
</form>
_______________________________________________

Может я слепой, но не вижу никакой защиты. Вообще никакой.
И это коммерческая система, от 200$...
 

HEm

Сетевой бобер
Если тебе это нужно только для того, чтобы браузер не ругался - обычно там стоит флажок "больше об этом не орать"
 

Кром

Новичок
>И это коммерческая система, от 200$...

Проблема не в системе, а в протоколе HTTP. Он незащищен.
То что тебе нужно, сказали в первом ответе.
 

Rosco

Новичок
Автор оригинала: HEm
Если тебе это нужно только для того, чтобы браузер не ругался - обычно там стоит флажок "больше об этом не орать"
Надо для того, чтобы пароль не перехватили.

Кстати, привет землякам! :)

-~{}~ 24.04.04 13:38:

Спасибо всем за ответы!
 

ziba

Guest
Надо для того, чтобы пароль не перехватили.
Ели не использовать https, то абсолютно неважно, передаешь ты пароль или его хеш. Перехватив хеш можно использовать его для формирования запроса.
 

HEm

Сетевой бобер
Rosco
дык я вроде как не в Израиле ;)
пароль передавать хешем (но даже в этом случае есть вероятность, что его расшифруют через некоторое время)
 

Z@

Guest
На самом деле проблема с хакером у которого есть сниффер довольна надумана. Если ты на модеме, то перехватить твой пароль можно только находясь в сети провайдера. Если ты выходишь в инет через локалку, то перехватить можно только находясь в этой локалке, а если в ней стоят не хабы а свичи то тогда перехватить может опять таки только провайдер. При шифровке пароля через яваскрипт, можно перехватывать шифрованный пароль и посылать его скрипту проверки пароля не расшифровывая, и все будет работать. Так что юзай https и не заморачивайся.
 

Lav

Guest
Ну, как защитить зашифрованный javascript'ом пароль, вроде, уже обсуждалось - через двойные хэши. И это работает - то есть даже в случае перехвата хэша, кул хацкер сможет его использовать только до конца сеанса.

Другой вопрос, что человек, который пойдёт на такой геморрой, будет достаточно опытным профессионалом, и этого времени ему будет более, чем достаточно...
 
Сверху