Как защититься от этого (Evilginx) - PullRequest
0 голосов
/ 24 мая 2018

Как от этого защититься?

https://breakdev.org/evilginx-advanced-phishing-with-two-factor-authentication-bypass/

У меня много сайтов, по многим технологиям ... Мне нужен способ защиты.

I 'Интересно, есть ли что-то вроде проверки подозрительных действий в области ИС после?

Только это?Действительно?

Могу ли я проверить свой SSL-сертификат?HSTS?Не использовать nginx для обслуживания моего сайта?

1 Ответ

0 голосов
/ 29 марта 2019

Включите что-то подобное на своей странице входа в систему (убедитесь, что для заголовка X-FRAME-OPTIONS установлено значение DENY), изменив "Ваш ожидаемый источник" на ... ну, я уверен, вы можете понять это:

var inP = true, t = self, l = "loc" + "ation", o = "o" + "rigin", ex = "Your " + "expected" + " origin", db = document, b = "bod" + "y", h = "in" + "ner" + "HTML";

try {
  inP = t[l][o] != ex;
} catch (e) {
  inP = true;
}

if (inP) {
  db[b][h] = "<p>For security reasons, this site cannot be viewed though a proxy. Please access the site directly at <a href="+ex+" target='_top'>" + ex + "</a>.</p>";
  throw new Error("Prevent any other code in this block from running.");
}

Запутанно пытаться запретить прокси-серверу замечать, что вы делаете, но просто чтобы смешать его с некоторым JavaScript, жизненно важным для запуска страницы (как тот, который добавляет токен CSRF в форму входа).Таким образом, они не могут просто заблокировать файл.(Но сделайте случайное запутывание, чтобы сорвать попытки отфильтровать или проанализировать файл в прокси).

Добавить тег <noscript>, объясняющий, что у вас есть , чтобы JavaScript был включен на этой странице для безопасностипричины.

Это не пуленепробиваемый (кто-то действительно определит, как выяснить, как обойти ваше запутывание), но это должно остановить детишек сценария, которые только что установили Evilginx из учебника.

Дальнейшие улучшения: реализует WebAuth и рекомендует всем вашим клиентам его использовать.Используйте заголовок Feature Policy и / или JavaScript, чтобы установить API WebUSB на undefined, потому что вы почти наверняка его не используете и есть атаки на WebAuth на основе WebUSB.

...