Специалисты по безопасности обращают внимание, что в последнее время участились случаи атак с использованием давно известного метода preventDefault () в JavaScript (фрейворк jQuery). Они говорят, что делать простенькие скрипты с использованием preventDefault () научились даже скрипт-кидди, то есть техника пошла в народ.

Функция preventDefault () позволяет веб-сайту перехватить стандартное поведение браузера в той или иной ситуации. Например, вы жмёте на ссылку www.yandex.ru, а скрипт через preventDefault () перехватывает нажатие по ссылке и редиректит вас на совершенно другой сайт, на котором нарисован интерфейс www.yandex.ru. Если одновременно переключить пользователя в полноэкранный режим, то получается очень даже правдоподобно. Естественно, для фишинга должны быть готовы интерфейсы разных браузеров.

Творчески мыслящий злоумышленник найдёт массу способов, как можно использовать preventDefault (). Например, можно перехватывать сочетания горячих клавиш Ctrl+F — и записывать всю информацию, которую введёт пользователь в фальшивое окошко поиска текста. В данном случае простой код будет выглядеть так:

$(window).keydown(function(evt){
if((evt.which == "70" && (evt.metaKey || evt.ctrlKey))){
console.log("STRG+F");
evt.preventDefault();
/* показываем фальшивое окошко поиска */
$("#searchbox").slideDown(110);
$('#search').focus();

Опять же, для сбора информации нужно распознавать браузер и подготовить элементы интерфейса разных браузеров.

Proof-of-Concept перехвата по Ctrl+F.

Ещё один вариант — перехватывать сочетание Ctrl+S и рисовать фальшивое окно сохранения файла, с требованием ввести пароль для завершения операции.

Разработчики Google Chrome в курсе этой «уязвимости», но считают её низкоприоритетной. Вероятно, такого же мнения придерживаются и разработчики других браузеров.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии