Как я кодирую пароли в веб-формах без JavaScript?

Не то, чтобы у меня нет доступа к JavaScript, конечно. В большинстве моих курсов веб-разработки CS нам преподают немного о проверке серверной стороны, и затем как только JavaScript представлен, проверка серверной стороны брошена из окна.

Я принимаю решение не просто полагаться на JavaScript, поскольку клиентским никогда не является безопасное место. Я выработал привычку записи и клиент и серверный код для таких вещей. Однако для веб-приложения, которое я пишу, это имеет дополнительный Ajax, я не хочу, чтобы пароль был, отправляют простой текст по проводу, если кому-то выключили JavaScript.

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

5
задан rook 29 October 2010 в 04:16
поделиться

4 ответа

SSL Решает эту проблему. Для протокола, пароли никогда не должны быть "зашифрованы" или "закодированы", это подразумевает, что существует метод "декодирования" или "расшифровки", что является явным нарушением CWE-257. Пароли должны быть хэшированы, SHA-256 - отличный выбор, но он не предназначен для передачи, только для хранения. При передаче секретов существует длинный список вещей, которые могут пойти не так, SSL является лучшим выбором для решения этих проблем.

Если злоумышленник сможет перехватить трафик, он сможет увидеть идентификатор сессии и сразу же использовать его, так что это спорный вопрос. Вы должны использовать SSL для защиты аутентифицированной сессии в любом случае.

5
ответ дан 13 December 2019 в 22:06
поделиться

Простым решением является SSL.

3
ответ дан 13 December 2019 в 22:06
поделиться

Вы также можно использовать Дайджест HTTP-аутентификации .

0
ответ дан 13 December 2019 в 22:06
поделиться

Мне кажется, вы смешиваете несколько понятий. Браузер не шифрует отдельные поля. Сценарии на стороне клиента, сценарии на стороне сервера и AJAX не являются средствами защиты от подслушивания.

Как уже говорили другие, SSL - это технология, которая шифрует данные. Весь запрос и ответ, включая поля и сценарии, содержатся в SSL-сессии.

2
ответ дан 13 December 2019 в 22:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: