Клик джекинг: Кликджекинг: что это такое?

Содержание

Кликджекинг: что это такое?

Оглавление

  1. Отношение поисковых систем

  2. Риски

  3. Как обнаружить кликджекинг

  4. Что не относится к кликджекингу


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


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

Отношение поисковых систем


Яндекс относит кликджекинг к факторам, негативно влияющим на ранжирование сайта, потому что технология в той или иной степени наносит вред пользователям.


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


Отмечают проседание позиций на 20–30 пунктов и заметное снижение поискового трафика по брендовым запросам.


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


Наложение санкций за кликджекинг отображается в разделе «Безопасность и нарушения» в Яндекс.Вебмастере.


В Яндекс.Браузере сайт будет показываться с предупреждением, что может заметно сказываться на кликабельности.


Решение о наложении санкций применяется только по актуальным данным. То есть использование кликджекинга, например, месяц назад не сказывается на его сегодняшнем положении в выдаче Яндекса.


Если код обманной технологии есть, но неактивен, ограничения в ранжировании на поиске Яндекса не будет.


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

Риски


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


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


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


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

  • идентифицировать пользователей по аккаунтам в социальных сетях;
  • предоставлять информацию, которую пользователь явно не указывает.


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


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

Как обнаружить кликджекинг


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


Найти их можно с помощью специального софта или вручную.


Пример софта – расширение Clickjacking Reveal для браузера Google Chrome. Нужно произвести установку, на исследуемом сайте открыть Developer Tools (Ctrl + Shift + I), обновить страницу (Ctrl + F5). Расширение найдет вредоносный код. Если он есть, откроется вкладка Source. В ней будут указаны скрипты, использующие обманную технологию.


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


Необходимо выполнить следующие действия:

  1. Авторизоваться в соцсети (например, во «ВКонтакте»).
  2. Очистить cookies сайта в браузере.
  3. Открыть консоль (сочетание клавиш Ctrl + Shift + I или Ctrl + Shift + K для Mozilla Firefox).
  4. Загрузить исследуемую страницу.
  5. Произвести какие-нибудь действия, имитируя активность обычного пользователя.
  6. Посмотреть, есть ли обращение к социальной сети. Для этого на вкладке «Сеть» в консоли нужно поискать записи, соответствующие событиям соцсети. Для «ВКонтакте» это widget_auth.php – авторизация, widget_like.php – лайк.
  7. Далее нужно найти код, вызывающий подгрузку скрытых элементов. Во вкладке «Инспектор» нужно найти фрагменты кода, обращающиеся к социальным сетям. Каждый элемент нужно проверить: относится он к видимому или скрытому участку. Для этого достаточно навести курсор и посмотреть выделенную область экрана.
  8. Если на вкладке «Сеть» есть обращение к социальным сетям, а во вкладке «Инспектор» не удается обнаружить вызывающий его фрагмент кода, – это кликджекинг.
  9. Выявить код можно, последовательно удаляя сомнительные фрагменты, проверяя при этом, не исчезло ли обращение к социальным сетям. Особое внимание следует уделить элементам script, iframe и object.


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


После устранения кода кликджекинга нужно зайти в раздел «Безопасность и нарушения» в Вебмастере Яндекса и нажать на кнопку «Я все исправил», чтобы быстрее произошла повторная проверка.

Что не относится к кликджекингу


Внедрение санкций со стороны Яндекса за кликджекинг вызвало много вопросов о некоторых размещаемых на сайтах элементах. Что не попадает под определение и может использоваться:

  • код для ретаргетинга из «ВКонтакте». При его установке собирается информация о том, что на сайте смотрел пользователь, а потом в соцсети ему демонстрируется «догоняющая» реклама. Так как все данные обезличены, это не кликджекинг;
  • формы для оставления комментариев через социальную сеть. Если они не скрытые, то не попадают под определение и не влияют на положение сайта в выдаче Яндекса;
  • социальный замок. Делает недоступной часть контента, пока ссылкой на страничку не поделятся в соцсети. Такой замок не собирает данные, и пользователь о нем знает, поэтому никаких санкций.


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

Кликджекинг — Вебмастер. Справка

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

Посетитель, зашедший на сайт с кликджекингом, может незаметно для себя оформить подписку в социальной сети или «лайкнуть» какую-либо запись. После этих действий сайт автоматически определяет учетную запись посетителя, а его владелец может использовать личные данные по своему усмотрению. Например, номер телефона — для навязчивых звонков с предложениями купить тот или иной товар. Чаще всего подобный механизм используется в сервисах по «улучшению продаж».

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

Примечание. Сайт, на котором обнаружен кликджекинг, показывается в поисковой выдаче с предупреждением. Также предупреждение отображается при переходе на сайт в Яндекс Браузере. Рекомендуем обратить внимание на записи в блоге Яндекс Вебмастера: Как кликджекинг влияет на ранжирование и Черный кликджекинг с полным его разоблачением.

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

Чтобы найти кликджекинг на сайте, необходимо выявить фрагменты кода, отвечающие за скрытые элементы. Для поиска вам требуется авторизоваться в социальной сети и использовать консоль (веб-консоль) браузера.

Рекомендуем воспользоваться такими браузерами, как Mozilla Firefox, Яндекс Браузер, Google Chrome, Opera. Для вызова консоли браузера обычно используется сочетание клавиш Ctrl + Shift + J, а также Ctrl + Shift + K при работе в Mozilla Firefox. Для семейства операционных систем Apple используются сочетания ⌥ + ⌘ + J и ⌥ + ⌘ + K соответственно.

Внимание. Если вы решили удалить с сайта HTML-код, отвечающий за кликджекинг, перед этим создайте резервную копию сайта.

Ниже приведен пример работы в веб-консоли Mozilla Firefox с авторизацией во Вконтакте.

  1. Авторизуйтесь в социальной сети. Если вы по тем или иным причинам не можете этого сделать, то обнаружение кликджекинга по данному алгоритму возможно не во всех случаях.

  2. Выберите URL страницы вашего сайта для проверки на наличие кликджекинга.

  3. Удалите cookies сайта в браузере.

  4. Откройте новую вкладку в браузере.

  5. Откройте консоль браузера. Затем введите в адресную строку выбранный ранее URL. Дождитесь загрузки страницы, имитируя активность посетителя: шевелите мышью, прокручивайте страницу.

  6. Выявите обращения сайта к адресам социальной сети.

    Для поиска в консоли перейдите на вкладку Сеть и найдите адреса социальной сети, которые соответствуют событиям «авторизация», «лайк». Например, во Вконтакте событию «авторизация» соответствует путь URL widget_auth.php, событию «лайк» — widget_like.php.

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

  7. Определите код, который вызывает подгрузку скрытого элемента сайта.

    Для поиска перейдите на вкладку Инспектор. Найдите HTML-элементы, соответствующие ранее указанным адресам социальной сети.

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

    Если элемент сайта является скрытым, то, вероятнее всего, вы зафиксировали кликджекинг — перейдите к следующему шагу.

    Примечание. Если на вкладке Инспектор искомый фрагмент кода не обнаружен, но на вкладке Сеть есть обращения к социальной сети по указанным выше адресам — вы зафиксировали кликджекинг.

  8. Определите код, который вызывает взаимодействие с социальной сетью. При этом особое внимание уделите элементам script, iframe или object.

    Если элемент не найден, можно выявить его, последовательно удаляя фрагменты кода, которые вызывают сомнения. После удаления повторите шаги с 3 по 8.

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

Примечание.

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

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

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

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

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

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

Что такое кликджекинг | Пример атаки | Плюсы и минусы опций X-Frame

184,1 тыс. просмотров

Что такое кликджекинг

Clickjacking — это атака, которая заставляет пользователя щелкнуть элемент веб-страницы, который невидим или замаскирован под другой элемент. Это может привести к тому, что пользователи непреднамеренно загрузят вредоносное ПО, посетят вредоносные веб-страницы, предоставят учетные данные или конфиденциальную информацию, переведут деньги или приобретут товары в Интернете.

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

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

Существует несколько вариантов атаки кликджекинга, например:

  • Лайкджекинг  – метод, при котором манипулируют кнопкой Facebook «Нравится», заставляя пользователей «лайкать» страницу, которую они на самом деле не собирались лайкать.
  • Cursorjacking  – метод исправления пользовательского интерфейса, который меняет курсор для позиции, которую воспринимает пользователь, на другую позицию. Cursorjacking основан на уязвимостях в Flash и браузере Firefox, которые уже устранены.

Пример атаки Clickjacking

  1. Злоумышленник создает привлекательную страницу, которая обещает предоставить пользователю бесплатную поездку на Таити.
  2. В фоновом режиме злоумышленник проверяет, вошел ли пользователь на его банковский сайт, и если это так, загружает экран, который разрешает перевод средств, используя параметры запроса для вставки банковских реквизитов злоумышленника в форму.
  3. Страница банковского перевода отображается в невидимом фрейме над страницей бесплатного подарка, при этом кнопка «Подтвердить перевод» точно совмещена с видимой для пользователя кнопкой «Получить подарок».
  4. Пользователь заходит на страницу и нажимает кнопку «Забронировать бесплатную поездку».
  5. На самом деле пользователь нажимает на невидимый iframe и нажимает кнопку «Подтвердить перевод». Средства переводятся злоумышленнику.
  6. Пользователь перенаправляется на страницу с информацией о бесплатном подарке (не зная, что произошло в фоновом режиме).

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

Предотвращение кликджекинга

Существует два основных способа защиты от кликджекинга:

  • Методы на стороне клиента  — наиболее распространенный называется блокировкой кадров. Методы на стороне клиента могут быть эффективными в некоторых случаях, но считаются не лучшей практикой, поскольку их можно легко обойти.
  • Методы на стороне сервера  – наиболее распространенными являются X-Frame-Options. Методы на стороне сервера рекомендуются экспертами по безопасности как эффективный способ защиты от кликджекинга.

Снижение кликджекинга с помощью заголовка ответа X-Frame-Options

Заголовок ответа X-Frame-Options передается как часть ответа HTTP веб-страницы, указывая, следует ли разрешить браузеру отображать страницу внутри Тег или

Просмотрите HTML-страницу в браузере и оцените ее следующим образом:

  • Если появится текст «Веб-сайт уязвим для кликджекинга», а под ним вы увидите содержание конфиденциальной страницы,  страница уязвима для кликджекинга .
  • Если отображается только текст «Веб-сайт уязвим для кликджекинга», а вы не видите содержимое своей конфиденциальной страницы, значит, страница не уязвима для простейшей формы кликджекинга.

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

Как Imperva помогает смягчить атаку кликджекинга

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

Что такое Clickjacking? Учебник и примеры

Твиттер

WhatsApp

Фейсбук

Реддит

LinkedIn

Электронное письмо

В этом разделе мы объясним, что такое кликджекинг, опишем распространенные примеры атак кликджекинга и обсудим, как защититься от этих атак.

Что такое кликджекинг?

Clickjacking — это атака на основе интерфейса, при которой пользователя обманом заставляют щелкнуть по полезному контенту на скрытом веб-сайте, щелкнув какой-либо другой контент на фиктивном веб-сайте. Рассмотрим следующий пример:

Веб-пользователь заходит на веб-сайт-приманку (возможно, это ссылка, предоставленная по электронной почте) и нажимает кнопку, чтобы выиграть приз. По незнанию они были обмануты злоумышленником, который нажал альтернативную скрытую кнопку, что привело к оплате счета на другом сайте. Это пример атаки кликджекинга. Этот метод зависит от включения невидимой веб-страницы (или нескольких страниц), содержащей кнопку или скрытую ссылку, скажем, внутри iframe. Кадр iframe накладывается поверх предполагаемого содержимого веб-страницы-приманки пользователя. Эта атака отличается от атаки CSRF тем, что от пользователя требуется выполнить действие, такое как нажатие кнопки, тогда как атака CSRF зависит от подделки всего запроса без ведома или ввода пользователя.

Защита от CSRF-атак часто обеспечивается с помощью токена CSRF: одноразового номера для конкретного сеанса или одноразового номера. Атаки Clickjacking не нейтрализуются токеном CSRF, поскольку целевой сеанс устанавливается с контентом, загруженным с подлинного веб-сайта, и все запросы выполняются в домене. Токены CSRF помещаются в запросы и передаются на сервер как часть обычного сеанса. Отличие от обычного пользовательского сеанса заключается в том, что процесс происходит внутри скрытого iframe.

Как построить базовую атаку кликджекинга

Атаки Clickjacking используют CSS для создания слоев и управления ими. Злоумышленник включает целевой веб-сайт в виде слоя iframe, наложенного на веб-сайт-приманку. Пример использования тега стиля и параметров выглядит следующим образом:

<голова>
<стиль>
#целевой_сайт {
должность: родственница;
ширина: 128 пикселей;
высота: 128 пикселей;
непрозрачность: 0,00001;
z-индекс: 2;
}
#приманка_веб-сайт {
положение: абсолютное;
ширина: 300 пикселей;
высота: 400 пикселей;
z-индекс: 1;
}


. ..
<тело>
<дел>
...приманка веб-контента здесь...


iframe целевого веб-сайта размещается в браузере таким образом, чтобы обеспечить точное перекрытие целевого действия с веб-сайтом-приманкой с использованием соответствующих значений ширины и высоты положения. Абсолютные и относительные значения положения используются для того, чтобы целевой веб-сайт точно перекрывал обманку независимо от размера экрана, типа браузера и платформы. Z-индекс определяет порядок размещения слоев iframe и веб-сайта. Значение непрозрачности определяется как 0,0 (или близко к 0,0), чтобы содержимое iframe было прозрачным для пользователя. Защита от кликджекинга в браузере может применять обнаружение прозрачности iframe на основе порогового значения (например, Chrome версии 76 включает это поведение, а Firefox — нет). Злоумышленник выбирает значения непрозрачности таким образом, чтобы желаемый эффект был достигнут без срабатывания защитных действий.

ЛАБОРАТОРИЯ

УЧЕНИК
Базовый кликджекинг с защитой токена CSRF

Clickbandit

Хотя вы можете вручную создать доказательство концепции кликджекинга, как описано выше, на практике это может быть довольно утомительно и требует много времени. Когда вы тестируете кликджекинг в дикой природе, мы рекомендуем вместо этого использовать инструмент Burp Clickbandit. Это позволяет использовать браузер для выполнения необходимых действий на странице с возможностью создания фреймов, а затем создает HTML-файл, содержащий подходящее наложение кликджекинга. Вы можете использовать это для создания интерактивного доказательства концепции за считанные секунды, не написав ни одной строки HTML или CSS.

Clickjacking с вводом предварительно заполненной формы

Некоторые веб-сайты, требующие заполнения и отправки формы, разрешают предварительное заполнение входных данных формы с использованием параметров GET перед отправкой. Другие веб-сайты могут потребовать текст перед отправкой формы. Поскольку значения GET являются частью URL-адреса, целевой URL-адрес может быть изменен для включения значений по выбору злоумышленника, а прозрачная кнопка «Отправить» накладывается на сайт-приманку, как в базовом примере кликджекинга.

ЛАБОРАТОРИЯ

УЧЕНИК
Clickjacking с предварительно заполненными входными данными формы из параметра URL

Скрипты блокировки кадров

Атаки Clickjacking возможны всякий раз, когда веб-сайты могут быть подделаны. Таким образом, превентивные методы основаны на ограничении возможности создания фреймов для веб-сайтов. Обычная защита на стороне клиента, реализуемая через веб-браузер, заключается в использовании сценариев прерывания кадров или прерывания кадров. Их можно реализовать с помощью проприетарных надстроек или расширений JavaScript для браузера, таких как NoScript. Сценарии часто разрабатываются таким образом, чтобы они выполняли некоторые или все из следующих действий:

  • проверить и обеспечить, чтобы текущее окно приложения было главным или верхним окном,
  • сделать все кадры видимыми,
  • предотвратить нажатие на невидимые рамки,
  • перехватывает и помечает пользователя как потенциальные кликджекинговые атаки.

Методы блокировки кадров часто зависят от браузера и платформы, и из-за гибкости HTML злоумышленники обычно могут их обойти. Поскольку блокировщики кадров — это JavaScript, настройки безопасности браузера могут помешать их работе, или браузер может даже не поддерживать JavaScript. Эффективным обходным путем злоумышленника против прерывателей кадров является использование HTML5 iframe 9.0143 песочница атрибут. Если это установлено со значениями allow-forms или allow-scripts , а значение allow-top-navigation опущено, то сценарий блокировки кадров можно нейтрализовать, поскольку iframe не может проверить, является ли он верхним или нет. окно:

Оба значения allow-forms и allow-scripts разрешают указанные действия в iframe, но навигация верхнего уровня отключена. Это запрещает прерывание кадров, но обеспечивает функциональность на целевом сайте.

ЛАБОРАТОРИЯ

УЧЕНИК
Перехват кликов с помощью скрипта блокировки кадров

Сочетание перехвата кликов с XSS-атакой DOM

До сих пор мы рассматривали кликджекинг как автономную атаку. Исторически кликджекинг использовался для выполнения таких действий, как накрутка лайков на странице Facebook. Однако истинная мощь кликджекинга раскрывается, когда он используется в качестве носителя для другой атаки, такой как атака DOM XSS. Реализация этой комбинированной атаки относительно проста, если предположить, что злоумышленник сначала идентифицировал эксплойт XSS. Затем эксплойт XSS объединяется с целевым URL-адресом iframe, так что пользователь нажимает кнопку или ссылку и, следовательно, выполняет атаку DOM XSS.

ЛАБОРАТОРИЯ

ПРАКТИК
Использование уязвимости кликджекинга для запуска XSS на основе DOM

Многошаговый кликджекинг

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

ЛАБОРАТОРИЯ

ПРАКТИК
Многошаговый кликджекинг

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

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

Clickjacking — это поведение на стороне браузера, и его успех или иным образом зависит от функциональности браузера и соответствия преобладающим веб-стандартам и передовой практике. Защита на стороне сервера от кликджекинга обеспечивается путем определения и передачи ограничений на использование таких компонентов, как iframe. Однако реализация защиты зависит от соответствия браузера и соблюдения этих ограничений. Двумя механизмами защиты от кликджекинга на стороне сервера являются X-Frame-Options и Content Security Policy.

Подробнее

Найдите уязвимости кликджекинга с помощью веб-сканера уязвимостей Burp Suite

X-Frame-Options

X-Frame-Options изначально был представлен как неофициальный заголовок ответа в Internet Explorer 8 и быстро был принят в других браузерах. Заголовок предоставляет владельцу веб-сайта контроль над использованием фреймов или объектов, поэтому включение веб-страницы во фрейм можно запретить с помощью директивы deny :

X-Frame-Options: запретить

Кроме того, кадрирование может быть ограничено тем же источником, что и веб-сайт, с помощью директивы sameorigin .

X-Frame-Options: тот же источник

или на указанный веб-сайт с помощью директивы allow-from :

X-Frame-Options: разрешить-от https://normal-website.com

X-Frame-Options не реализована последовательно в разных браузерах (9Директива 0143 allow-from не поддерживается, например, в Chrome версии 76 или Safari 12). Однако при правильном применении в сочетании с Content Security Policy в рамках многоуровневой стратегии защиты она может обеспечить эффективную защиту от атак с использованием кликджекинга.

Политика безопасности содержимого (CSP)

Политика безопасности контента (CSP) — это механизм обнаружения и предотвращения, который обеспечивает смягчение последствий таких атак, как XSS и кликджекинг. CSP обычно реализуется на веб-сервере в виде возвращаемого заголовка вида:

Content-Security-Policy: политика

где политика — это строка директив политики, разделенных точкой с запятой.

This entry was posted in Продвижение