Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

ClickJacking (классифицируются как пользовательский интерфейс возмещения атаки , UI возмещения атаки , UI ПРАВКА ) является вредоносным техником из обманывая на пользователе в щелкнув на что - то отличное от того , что воспринимает пользователь, таким образом , потенциально раскрывающий конфиденциальную информацию или позволяет другим взять под контроль своего компьютера при нажатии на кажущиеся безобидными объекты, включая веб-страницы . [1] [2] [3] [4]

Clickjacking - это пример запутанной проблемы депутата , когда компьютер обманом заставляют злоупотреблять своими полномочиями. [5]

История [ править ]

В 2002 году было замечено, что можно загрузить прозрачный слой поверх веб-страницы и заставить пользовательский ввод влиять на прозрачный слой без ведома пользователя. Однако до 2008 года это в основном игнорировалось как серьезная проблема [6].

В 2008 году Джереми Гроссман и Роберт Хансен обнаружили, что Adobe Flash Player может быть взломан, что позволяет злоумышленнику получить доступ к компьютеру без ведома пользователя. [6]

Термин «ClickJacking» был придуман Иеремия Гроссман и Роберт Хансен, [7] [8] контаминация слов «нажмите» и «угон» . [6]

По мере того, как было обнаружено все больше атак аналогичного характера, акцент в термине «восстановление пользовательского интерфейса» был изменен, чтобы описать категорию этих атак, а не просто кликджекинг. [6]

Предупреждение "Возможный кликджекинг" от надстройки интернет-браузера "NoScript"

Описание [ править ]

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

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

Категории кликджекинга [ править ]

  • Классический: работает в основном через веб-браузер [6]
  • Likejacking: использует возможности социальных сетей Facebook [9] [10]
  • Вложенные: кликджекинг, адаптированный для Google+ [11]
  • Cursorjacking: манипулирует внешним видом и положением курсора [6]
  • MouseJacking : ввод с клавиатуры или мыши через удаленную радиочастотную связь [12]
  • Без браузера: не использует браузер [6]
  • Cookiejacking : получает файлы cookie из браузеров [6] [13]
  • Filejacking: возможность настройки пораженного устройства в качестве файлового сервера [6] [14]
  • Атака с помощью диспетчера паролей: кликджекинг, использующий уязвимость в функции автозаполнения браузеров [15]

Классический [ править ]

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

Пользователь может получить электронное письмо со ссылкой на видео о новостях, но другая веб-страница, например, страница продукта на Amazon , может быть «скрыта» вверху или под кнопкой «PLAY» новостного видео. Пользователь пытается «воспроизвести» видео, но на самом деле «покупает» продукт у Amazon. Хакер может отправить только один клик, поэтому они полагаются на тот факт, что посетитель одновременно авторизован на Amazon.com и имеет возможность заказа в один клик.

Хотя техническая реализация этих атак может быть сложной из-за несовместимости между браузерами, ряд инструментов, таких как BeEF или Metasploit Project, предлагают почти полностью автоматизированное использование клиентов на уязвимых веб-сайтах. Кликджекинга могут способствовать или могут способствовать другие веб-атаки, такие как XSS . [16] [17]

Likejacking [ править ]

Лайкджекинг - это злонамеренный метод, с помощью которого пользователи, просматривающие веб-сайт, заставляют « понравиться » странице Facebook или другим сообщениям / учетным записям в социальных сетях, которым они намеренно не хотели «лайкнуть». [18] Термин «likejacking» вышел из комментария , публикуемых Кори Балла в статье Как Anything «Like» в Интернете (Безопасно) , [19] , который является одним из первых документированных проводок , объясняющей возможность злонамеренных действий в отношении Кнопка «Нравится» в Facebook. [20]

Согласно статье , опубликованной в IEEE Spectrum , решение likejacking был разработан на одном из Facebook , хакатон . [21] Доступен букмарклет «Нравится», который позволяет избежать возможности получения «лайков» на кнопке «Нравится» в Facebook . [22]

Вложенный [ править ]

Вложенный кликджекинг, по сравнению с классическим кликджекингом, работает путем встраивания вредоносного веб-фрейма между двумя фреймами исходной безвредной веб-страницы : фреймом из фреймовой страницы и фреймом, отображаемым в верхнем окне. Это работает из-за уязвимости в заголовке HTTP X-Frame-Options, в котором, когда этот элемент имеет значение SAMEORIGIN, веб-браузер проверяет только два вышеупомянутых уровня. Тот факт, что между этими двумя могут быть добавлены дополнительные кадры, оставаясь незамеченными, означает, что злоумышленники могут использовать это в своих интересах.

В прошлом, с Google+ и неисправной версией X-Frame-Options, злоумышленники смогли вставить кадры по своему выбору, используя настоящую уязвимость в Image Поисковик от Google . Между кадрами отображения изображений, которые также присутствовали в Google+, эти кадры, контролируемые злоумышленником, могли загружаться и не быть ограниченными, что позволяло злоумышленникам вводить в заблуждение любого, кто попадал на страницу отображения изображений. [11]

Cursorjacking [ править ]

CursorJacking - это метод исправления пользовательского интерфейса для изменения курсора из того места, которое воспринимает пользователь, обнаруженный в 2010 году Эдди Борди, исследователем Vulnerability.fr [23], Маркус Ниемиц продемонстрировал это с помощью настраиваемого значка курсора, а в 2012 году Марио Хайдерих - скрытие курсора. [24] [25]

Джорди Чансел, исследователь из Alternativ-Testing.fr, обнаружил уязвимость CursorJacking с использованием кода Flash, HTML и JavaScript в Mozilla Firefox в системах Mac OS X (исправлено в Firefox 30.0), которая может привести к выполнению произвольного кода и слежке за веб-камерой. [26]

Вторую уязвимость CursorJacking снова обнаружил Джорди Чансел в Mozilla Firefox в системах Mac OS X (исправлено в Firefox 37.0) с использованием кода Flash, HTML и JavaScript, который также может привести к шпионажу через веб-камеру и запуску вредоносного дополнения. разрешение выполнения вредоносного ПО на компьютере зараженного пользователя. [27]

MouseJack [ править ]

В отличие от других техник кликджекинга, которые исправляют пользовательский интерфейс, MouseJack - это уязвимость пользовательского интерфейса на основе беспроводного оборудования, о которой впервые сообщил Марк Ньюлин из Bastille.net в 2016 году, которая позволяет вводить ввод с внешней клавиатуры в уязвимые ключи. [28] Компания Logitech предоставила исправления для прошивки, но другие производители не смогли устранить эту уязвимость. [29]

Без браузера [ править ]

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

Этот метод кликджекинга в основном распространен среди мобильных устройств, обычно на устройствах Android , особенно из-за того, как работают всплывающие уведомления . Поскольку всплывающие уведомления имеют небольшую задержку между моментом запроса уведомления и моментом фактического отображения уведомления на экране, злоумышленники могут использовать этот промежуток для создания фиктивной кнопки, которая скрыта под уведомлением и по-прежнему может быть нажата. . [6]

CookieJacking [ править ]

CookieJacking - это форма кликджекинга, при которой файлы cookie украдены из веб-браузеров жертвы . Это делается путем обмана пользователя, заставляя его перетащить объект, который на первый взгляд кажется безвредным, но на самом деле заставляет пользователя выбрать все содержимое целевого файла cookie. Оттуда злоумышленник может получить файл cookie и все данные, которыми он обладает. [13] [ требуется пояснение ]

FileJacking [ править ]

В fileJacking злоумышленники используют возможности веб-браузера для навигации по компьютеру и доступа к компьютерным файлам для получения личных данных. Он делает это, заставляя пользователя создать активный файловый сервер (через окно выбора файлов и папок, которое используют браузеры). Благодаря этому злоумышленники теперь могут получать доступ и брать файлы с компьютеров своих жертв. [14]

Атака на диспетчер паролей [ править ]

В статье 2014 года исследователя из Университета Карнеги-Меллона было обнаружено, что, хотя браузеры отказываются выполнять автозаполнение, если протокол на текущей странице входа отличается от протокола на момент сохранения пароля, некоторые менеджеры паролей будут небезопасно вводить пароли для http-версии. https-сохраненных паролей. Большинство менеджеров не защищали от атак на основе iFrame и перенаправления и раскрывали дополнительные пароли в тех случаях, когда синхронизация паролей использовалась между несколькими устройствами. [15]

Профилактика [ править ]

На стороне клиента [ править ]

NoScript [ править ]

Защиту от кликджекинга (включая лайкджекинг) можно добавить в настольную и мобильную [30] версии Mozilla Firefox , установив надстройку NoScript : его функция ClearClick, выпущенная 8 октября 2008 года, не позволяет пользователям нажимать на невидимые или "исправленные" элементы страницы. встроенных документов или апплетов. [31] Согласно «Руководству по безопасности браузера» от Google от 2008 года, ClearClick от NoScript является «свободно доступным продуктом, который предлагает разумную степень защиты» от Clickjacking. [32] В NoScript 2.2.8 RC1 была добавлена ​​защита от новой атаки с перехватом курсора. [24]

NoClickjack [ править ]

Надстройка веб-браузера «NoClickjack» ( расширение браузера ) добавляет клиентскую защиту от кликджека для пользователей Google Chrome , Mozilla Firefox , Opera и Microsoft Edge, не мешая работе законных фреймов iFrames. NoClickjack основан на технологии, разработанной для GuardedID. Надстройка NoClickjack предоставляется бесплатно.

GuardedID [ править ]

GuardedID (коммерческий продукт) включает защиту от кликджека на стороне клиента для пользователей Internet Explorer, не мешая работе законных фреймов iFrames. [33] Защита от щелчка GuardedID заставляет все кадры становиться видимыми. Команды GuardedID [ необходимы разъяснения ] с надстройкой NoClickjack, чтобы добавить защиту для Google Chrome , Mozilla Firefox , Opera и Microsoft Edge .

Газель [ править ]

Gazelle - это безопасный веб-браузер проекта Microsoft Research, основанный на IE, который использует модель безопасности, подобную ОС , и имеет собственную ограниченную защиту от кликджекинга. [34] В Gazelle окно другого происхождения может рисовать только динамический контент поверх экранного пространства другого окна, если контент, который он рисует, непрозрачен.

Наблюдатель пересечения v2 [ править ]

API Intersection Observer v2 [35] вводит концепцию отслеживания фактической «видимости» целевого элемента в том виде, в каком его определил бы человек. [36] Это позволяет виджету в рамке определять, когда он закрывается. Эта функция включена по умолчанию, начиная с Google Chrome 74, выпущенного в апреле 2019 года. [37] В настоящее время Chrome - единственный браузер, реализующий API.

На стороне сервера [ править ]

Framekiller [ править ]

Владельцы веб-сайтов могут защитить своих пользователей от исправления пользовательского интерфейса (кликджекинга на основе фреймов) на стороне сервера, включив фрагмент кода JavaScript framekiller на те страницы, которые они не хотят включать во фреймы из разных источников. [32]

Такая защита на основе JavaScript не всегда надежна. Это особенно верно для Internet Explorer [32], где такого рода меры противодействия можно обойти «преднамеренно», включив целевую страницу в элемент <IFRAME SECURITY = limited>. [38]

X-Frame-Options [ править ]

В 2009 году в Internet Explorer 8 был представлен новый заголовок HTTP, X-Frame-Optionsкоторый предлагал частичную защиту от кликджекинга [39] [40] и был принят другими браузерами ( Safari , [41] Firefox , [42] Chrome , [43] и Opera [ 44] ) вскоре после этого. Заголовок, когда устанавливается владельцем сайта, заявляет о своей предпочтительной политике кадрирования: ценности DENY, или предотвратят обрамление, обрамление на внешних сайтах, или разрешить обрамление только указанному сайтом, соответственно. Кроме того, некоторые рекламные сайты возвращают нестандартныйALLOW-FROM originSAMEORIGINALLOWALL значение с намерением разрешить фрейм их содержимого на любой странице (что эквивалентно отсутствию установки X-Frame-Options вообще).

В 2013 году заголовок X-Frame-Options был официально опубликован как RFC 7034 , [45], но не является стандартом Интернета. Документ предназначен только для информационных целей. Рекомендация W3C по политике безопасности контента уровня 2 предоставляет альтернативную директиву безопасности, frame-ancestors, которая предназначена для устаревания заголовка X-Frame-Options. [46]

Заголовок безопасности, такой как X-Frame-Options, не защитит пользователей от атак типа clickjacking, которые не используют фрейм. [47]

Политика безопасности контента [ править ]

frame-ancestorsДиректива Content политики безопасности (введен в версии 1.1) можно разрешить или запретить встраивание контента потенциально враждебных страниц с помощью IFRAME, объект и т.д. Эта директива отменяет действие директивы X-Frame-Options. Если страница обслуживается с обоими заголовками, браузер должен отдавать предпочтение политике предков фрейма. [48] ​​- хотя некоторые популярные браузеры не подчиняются этому требованию. [49]

Пример политики предков кадра:

# Запретить встраивание. Все фреймы и т. Д. Будут пустыми или будут содержать страницу с ошибкой браузера.Content-Security-Policy: frame-ancestors 'нет'# Разрешить встраивание только собственного контента .Content-Security-Policy: фрейм-предки 'я'# Разрешить конкретным источникам встраивать этот контентContent-Security-Policy: frame-ancestors www.example.com www.wikipedia.org

См. Также [ править ]

  • Мышеловка
  • Взлом страницы
  • Безопасность браузера
  • Мошенничество с кликами
  • Межсайтовый скриптинг
  • Интернет-безопасность
  • Интернет-безопасность
  • Вредоносная реклама
  • Фишинг
  • Хакер безопасности
  • Социальный домкрат

Ссылки [ править ]

  1. Роберт Макмиллан (17 сентября 2008 г.). «По просьбе Adobe хакеры не говорят« кликджекинг »» . Мир ПК. Архивировано из оригинала 17 июля 2015 года . Проверено 8 октября 2008 года .
  2. ^ Megha Dhawan (29 сентября 2008). «Осторожно, кликджеки на охоте» . Индия Таймс . Проверено 8 октября 2008 года .
  3. ^ Dan Goodin (7 октября 2008). «Сетевая игра превращает ПК в зомби под прикрытием наблюдения» . Реестр . Проверено 8 октября 2008 года .
  4. Fredrick Lane (8 октября 2008 г.). «Веб-серферы сталкиваются с новой опасной угрозой:« кликджекинг » » . newsfactor.com. Архивировано из оригинального 13 октября 2008 года . Проверено 8 октября 2008 года .
  5. Смущенный депутат снова едет! , Тайлер Клоуз, октябрь 2008 г.
  6. ^ Б с д е е г ч я J Niemietz, Marcus (2012). «Защита пользовательского интерфейса от атак на устройства Android» (PDF) . Черная шляпа .
  7. ^ Вы не знаете (щелкните) Джек Роберт Лемос, октябрь 2008 г.
  8. ^ JAstine, Берри. «Номер справки Facebook 1-888-996-3777» . Проверено 7 июня +2016 .
  9. ^ «Вирусный червь кликджекинга« Нравится »поражает пользователей Facebook» . Обнаженная безопасность . 31 мая 2010 . Проверено 23 октября 2018 года .
  10. ^ "Facebook Worm -" Likejacking " " . Обнаженная безопасность . 31 мая 2010 . Проверено 23 октября 2018 года .
  11. ^ a b Lekies, Себастьян (2012). «О хрупкости и ограничениях существующих схем защиты от кликджекинга, предоставляемых браузером» (PDF) . USENIX .
  12. ^ «Взломы беспроводной мыши и защита сетевой безопасности» . МУЗДЖЕК . Дата обращения 3 января 2020 .
  13. ^ a b Валотта, Росарио (2011). «Cookiejacking» . tentacoloViola - sites.google.com . Проверено 23 октября 2018 года .
  14. ^ a b «Filejacking: Как создать файловый сервер из вашего браузера (конечно, с HTML5)» . blog.kotowicz.net . Проверено 23 октября 2018 года .
  15. ^ a b «Менеджеры паролей: атаки и защиты» (PDF) . Проверено 26 июля 2015 года .
  16. ^ «Clickjacking встречает XSS: состояние искусства» . Использовать БД. 26 декабря 2008 . Проверено 31 марта 2015 года .
  17. ^ Кшиштоф Котович. «Использование неэксплуатируемого XSS с помощью кликджекинга» . Проверено 31 марта 2015 года .
  18. ^ Коэн, Ричард (31 мая 2010 г.). «Работа в Facebook -« Лайкджекинг » » . Sophos . Архивировано из оригинала на 4 июня 2010 года . Проверено 5 июня 2010 года .
  19. ^ Баллу, Corey (2 июня 2010). " Прибегает срок " лайкджекинга " . jqueryin.com. Архивировано из оригинала 5 июня 2010 года . Проверено 8 июня 2010 года .
  20. Перес, Сара (2 июня 2010 г.). " Likejacking " взлетает на Facebook " . ReadWriteWeb. Архивировано из оригинального 16 августа 2011 года . Проверено 5 июня 2010 года .
  21. Кушнер, Дэвид (июнь 2011 г.). «Философия Facebook: двигайся быстро и ломай дела» . Spectrum.ieee.org . Проверено 15 июля 2011 года .
  22. Перес, Сара (23 апреля 2010 г.). «Как« лайкнуть »что-нибудь в сети (безопасно)» . ReadWriteWeb . Проверено 24 августа 2011 года .
  23. ^ Подлипенский, Пол. «Спуфинг курсора и перехват курсора» . Podlipensky.com . Павел Подлипенский. Архивировано из оригинального 22 ноября 2017 года . Проверено 22 ноября 2017 года .
  24. ^ a b Кшиштоф Котович (18 января 2012 г.). «Снова взлом курсора» . Проверено 31 января 2012 года .
  25. ^ Аспект безопасности. «Атака с перехватом курсора может привести к нарушениям безопасности приложений» . Проверено 31 января 2012 года .
  26. ^ "Рекомендации по безопасности Mozilla Foundation 2014-50" . Mozilla . Проверено 17 августа 2014 .
  27. ^ "Рекомендации по безопасности Mozilla Foundation 2015-35" . Mozilla . Проверено 25 октября 2015 года .
  28. ^ "Что такое MouseJack!" . Бастилия . Дата обращения 3 января 2020 .
  29. ^ "CERT VU # 981271 Несколько устройств беспроводной клавиатуры / мыши используют небезопасный собственный беспроводной протокол" . www.kb.cert.org . Дата обращения 3 января 2020 .
  30. ^ Giorgio Maone (24 июня 2011). «NoScript Anywhere» . hackademix.net . Проверено 30 июня 2011 года .
  31. ^ Giorgio Maone (8 октября 2008). «Привет, ClearClick, прощай, кликджекинг» . hackademix.net . Проверено 27 октября 2008 года .
  32. ^ a b c Михал Залевски (10 декабря 2008 г.). «Руководство по безопасности браузера, часть 2, исправление ошибок пользовательского интерфейса» . Google Inc . Проверено 27 октября 2008 года .
  33. Роберт Хансен (4 февраля 2009 г.). «Лаборатория безопасности веб-приложений с помощью Clickjacking и GuardedID ha.ckers.org» . Архивировано из оригинального 11 июля 2012 года . Проверено 30 ноября 2011 года .
  34. ^ Ван, Хелен Дж .; Гриер, Крис; Мощук Александр; King, Samuel T .; Чоудхури, Пиали; Вентер, Герман (август 2009 г.). "Конструкция многоосновной ОС веб-браузера Gazelle" (PDF) . 18-й симпозиум по безопасности Usenix, Монреаль, Канада . Проверено 26 января 2010 года .
  35. ^ "Наблюдатель за пересечением - черновик редактора W3C" .
  36. ^ «Доверие - это хорошо, наблюдение - лучше» .
  37. ^ «Деанонимизация с помощью Clickjacking в 2019 году» .
  38. ^ Giorgio Maone (27 октября 2008). «Привет, IE8, у меня есть защита от кликджекинга» . hackademix.net . Проверено 27 октября 2008 года .
  39. Эрик Лоуренс (27 января 2009 г.). "Безопасность IE8, часть VII: Защита от кликджекинга" . Проверено 30 декабря 2010 года .
  40. Эрик Лоуренс (30 марта 2010 г.). «Борьба с кликджекингом с помощью X-Frame-Options» . Проверено 30 декабря 2010 года .
  41. ^ Райан Naraine (8 июня 2009). «Jumbo patch для Apple Safari: исправлено более 50 уязвимостей» . Проверено 10 июня 2009 года .
  42. ^ https://developer.mozilla.org/en/The_X-FRAME-OPTIONS_response_header Заголовок ответа X-Frame-Options - MDC
  43. Адам Барт (26 января 2010 г.). «Безопасность в глубине: новые функции безопасности» . Проверено 26 января 2010 года .
  44. ^ «Поддержка веб-спецификаций в Opera Presto 2.6» . 12 октября 2010 года Архивировано из оригинала 14 января 2012 года . Проверено 22 января 2012 года .
  45. ^ "Параметры X-кадра поля заголовка HTTP" . IETF. 2013.
  46. ^ «Уровень политики безопасности контента 2» . W3C. 2016 г.
  47. ^ «Блог lcamtuf: X-Frame-Options, или решение неправильной проблемы» .
  48. ^ «Уровень политики безопасности контента 2» . w3.org . 2 июля 2014 . Проверено 29 января 2015 года .
  49. ^ «Шпаргалка по защите от кликджекинга» . Проверено 15 января +2016 .