Содержание

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

Кликджекинг (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.

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

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

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

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

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

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

Кликджекинг — что это такое? Защита сайта от кликджекинга

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

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

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

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

Влияние кликджекинга на поисковое продвижение

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

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

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

Защита сайта от кликджекинга

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

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

При появлении подозрений следует использовать инструменты веб-разработки в браузере для проверки обращений сервиса в социальные сети. Дополнительно целесообразно применить Content Security Policy для ограничения взаимодействий сайта со сторонними ресурсами.

 

как проверить сайт и снять фильтр за кликджекинг в Яндекс

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

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

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

Статья в Википедии о кликджекинге

В Рунете одним из распространенных проявлений кликджекинга стал так называемый «соцфишинг».

Соцфишинг – это одна из технологий определения контактных данных по профилю в социальной сети для пользователя, который зашел на сайт, но не оставлял никаких данных. Для этого нужно выполнить 2 условия: посетитель сайта должен быть авторизован в социальной сети, а также выполнить хотя бы 1 клик на сайте.

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

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

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

Результат действия подобного сервиса примерно такой: вам в личные сообщения пишет неизвестный человек и предлагает услугу.

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

Будьте внимательны! Авторы подобных сервисов могут утверждать, что их скрипт «дружит» с Яндексом, поэтому внимательно изучайте, как работают скрипты, которые устанавливаете себе на сайт. Если сервис предлагает что-то похожее на описанное выше – подумайте и почитайте отзывы о нем.

При этом обычные виджеты соцсетей, конечно же, не являются кликджекингом:

Фильтр за кликджекинг

В декабре 2015 года Яндекс ввел новый фильтр за кликджекинг (новость в блоге Яндекса), который наказывает за использование подобных технологий. Заявлено, что такие сайты будут ранжироваться ниже.

Действительно, после попадания сайта под фильтр он практически по всем запросам проседает примерно на 20 позиций.

29 января 2016 года Яндекс опубликовал новую статью с советами и статистикой: за время работы нового фильтра было обнаружено более 15 000 сайтов, использовавших кликджекинг, а также около 50 сервисов, которые данную технологию предлагали.

Еще ряд важных тезисов из этой статьи:

  • Алгоритм принимает решение только по актуальным данным.
  • Если код кликджекинга не активен – санкций не будет. Алгоритм Яндекса наказывает не за код какого-то сервиса, а за использование технологии.
  • Многие сайты используют кликджекинг ненамеренно, он просто присутствует в ряде сервисов как дополнительный функционал. Большинство из этих сервисов отключили использование кликджекинга по умолчанию после появления фильтра.

К сожалению, с данным фильтром пришлось столкнуться и нам, поэтому алгоритм снятия фильтра будет дополнен данными реального кейса.

Все началось с того, что по одному из продвигаемых сайтов просели позиции без апдейта 16-го февраля. Просели на 12-28 позиций. В среднем, примерно на 20 позиций – так можно достаточно легко определить санкции такого рода. Позиции проседают по 60-90% запросов.

Динамика позиций проекта (справа-налево)

В нашем случае отслеживалось 394 запроса: в ТОП10 – было 83%, стало 171 – 36%. 57% запросов выпали из ТОП10 Яндекса.

Как определить наличие фильтра за кликджекинг

Мы не знали, что это за фильтр, однако определить его быстро и просто.

Заходим в Яндекс.Вебмастер, раздел «Диагностика» — «Безопасность и нарушения». Если фильтр есть, там будет четко про это написано. Так и было в нашем случае.

Мы также написали в техподдержку Яндекс, которая подтвердила санкции.

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

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

Сперва приведем краткую инструкцию от Яндекса:

Если вы не можете определить какой из скриптов может вызывать проблему, определите сперва, какие скрипты подключены на сайте. Для этого зайдите в исходный код сайта (комбинация Ctrl+U в браузере) и поищите в коде следующее (комбинация Ctrl+F в браузере):

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

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

Также можно проверить, не подключается ли виджет «Мне нравится» от ВКонтакте. Например, используем плагин Firebug для браузера FireFox и смотрим данные на вкладке Сеть – Все.

Важно! Если вы найдете, что подключаются скрипты от ВКонтакте, это не значит, что у вас используется кликджекинг. Это может быть кнопка «Мне нравится» для сайта.

Пример: нашли, что подключается виджет лайков от vk.com (ищем widget_like_php). Стоит ли паниковать в данном случае?

Нет, ведь на странице есть кнопка, она не скрыта и используется строго по назначению:

В нашем случае мы нашли при проверке вот такой скрипт:

Мы были в курсе, что этот сервис использует кликджекинг, поэтому дальше нужно было его удалить. Но не все может быть так просто.

Посмотрите еще один пример:

Отлично, скрипт найден, удаляем его самостоятельно либо поручаем программисту.

Обратите внимание, что скрипт может быть внедрен на сайт с помощью Google Tag Manager, поэтому вы не найдете его в исходном коде. Если GTM установлен на сайте, проверьте содержимое контейнера Google Tag Manager.

Итак, скрипт удален! Что дальше? Идем в Яндекс.Вебмастер и нажимаем кнопку «Все исправил» под сообщением о санкциях. Но сперва убедитесь, что вы действительно устранили проблему и обратите внимание на некоторые нюансы от Яндекса:

После нажатия кнопки вы увидите следующее:

Это только дополнительный способ сообщить об устранении кликджекинга. Алгоритм среагирует после переиндексации сайта. Мы на всякий случай написали в техподдержку после устранения проблемы, но это не поможет – процесс автоматизирован. Вот ответ Яндекса:

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

Но вы можете ускорить переиндексацию сайта с помощью инструмента «Инструменты» — «Переобход страниц» в Яндекс.Вебмастере: можно переиндексировать в приоритетном порядке до 10 страниц в день.

Проблема была устранена 18 февраля – мы нашли и удалили код.

Позиции вернулись также без апдейта 26 февраля – спустя 8 дней. Сообщение о санкциях в панели вебмастера, тем не менее, осталось еще на 3 дня. Видимо, была задержка с обновлением данных.

Поисковый трафик из Яндекс полностью вернулся.

Сообщение о проблеме пропало.

До наложения фильтра в ТОП10 было 394 запроса – 83% всех запросов, а после снятия фильтра в ТОП10 стало 353 запроса – 74%. 41 запрос из 477 не вернулся в ТОП10 сразу после снятия фильтра. Остальные запросы вернулись на те же позиции с разбежкой в 1-2 позиции по сравнению с позицией до наложения фильтра.

Важно! Яндекс не гарантирует 100% возвращения позиций.

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

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

  1. Код для ретаргетинга из «ВКонтакте»

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

  2. Социальный замок

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

  3. Push-рассылки

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

  4. Формы для оставления комментариев через социальную сеть

    Если такие формы не скрытые и не влияют на место сайта в поисковой выдаче Яндекса, то они также не являются кликджекингом.

Каким сервисам не стоит доверять?

В Интернете существует несколько сервисов, которые лишь добавляют пользователям неудобства, включая санкции Яндекса. Список самых популярных сервисов, которым не стоит доверять:

  • Socbox.ru
  • Soceffect.ru
  • Lptracker.ru
  • Sochunt.ru
  • Socfishing.ru
  • Leadvisit.ru
  • Userclick.su

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

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

Ответы на вопросы

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

Источники:
https://yandex.ru/blog/webmaster/21745 — 253 комментария
https://yandex.ru/blog/webmaster/chernyy-klikdzheking-s-polnym-ego-razoblacheniem — 119 комментариев

Вопрос 1: будет ли штраф, если вебмастер сделает фон сайта кликабельным, (например, разместит там брендированную рекламу), а пользователь по ошибке туда кликнет.

Вопрос 2: будет ли штраф за «социальный замок», когда полезный контент показывается пользователю в обмен на лайк или репост в соцсети?

Вопрос 3: я использую сервис, в котором есть возможность включить функцию с использованием кликджекинга, но она отключена. Я могу попасть под фильтр?

Вопрос 4: у меня санкции за кликджекинг, но никак не могу найти код у себя на сайте. Что делать?

Вопрос 5: я использовал код кликджекинга в 2015, но уже давно его удалил. Почему сайт под фильтром?

Вопрос 6: я не использую ни одну из указанных систем, использующих соцфишинг, почему сайт под фильтром?

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

Вопрос 8: код ретаргетинга Вконтакте – это кликджекинг?

Полезные материалы

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

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

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

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

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

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

Примечание.

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

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

как проверить и не попасть под санкции?

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

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

Не хочет клиент оставлять вам данные – силой их брать не стоит (и обманом тоже). Эти действия называются страшно красивым словом «кликджекинг», они караются санкциями с понижением позиций в органике.

Яндекс порадовал мир санкциями за серые методы выуживания информации у посетителей сайта (именно это и называется кликджекингом) еще в декабре 2015 года. Вскользь об этой технологии мы уже писали.

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


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

    Цитирую, как написано в Яндекс.Блоге для вебмастеров: «Кликджекинг – механизм обмана, связанный с размещением на сайте невидимых элементов, взаимодействие с которыми пользователь осуществляет, не подозревая этого».

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


  • Чем опасен кликджекинг?

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

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

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

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

     


  • Что принимают за кликджекинг?

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

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

    Яндекс напрямую ничего не говорит про код из ВК:

    Судя по всему, код ретаргетинга может рассматриваться как кликджекинг, но, скорее всего, для него сделано исключение.

    С этим же вопросом я обратилась в службу поддержки ВКонтакте.

    Что делать? Использовать спокойно, пока санкций за это не замечено.

    Что еще может быть под подозрением:

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

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

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

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

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

    • Активный фон сайта (здесь речь идет о том, что пользователь случайно может кликнуть не на ту кнопку или перепутать элементы). Также к кликджекингу не относится, хотя и очень похоже.

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

    • Push-рассылки. Кто не знает – это небольшие сообщения, которые появляются во всплывающем окне при просмотре сайта. Своего рода альтернатива рассылкам. К кликджекингу отношения не имеет, поскольку сообщения будут показываться только после того, как вы согласитесь их просматривать.

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

    Страхи и мифы мы рассмотрели. Теперь коротко скажу, чего стоит опасаться.

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


  • Каких сервисов точно стоит опасаться?

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

    Делюсь самыми распространенными, чтобы вы не наступили на грабли:

    • socfishing.ru
    • leadvizit.ru
    • socbox.ru
    • soceffect.ru
    • lptracker.ru
    • sochunt.ru
    • userclick.su

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


  • Что делать, если опасаетесь за судьбу своего сайта?

    У вас на сайте стоит код стороннего сервиса, и вы не уверены, что это не приведет к последствиям? Яндекс рекомендует смотреть, делает ли сервис обращение к социальным сетям во время работы или нет.

    Как проверить? Заходите на сайт, кликаете правой кнопкой мыши, и из выпавшего списка выбираете «исследовать элемент» (Firebug). В открывшимся окне выбираете вкладку «сети» (network) и в формирующемся списке окна проверяем, чтобы не было обращения к соцсетям:

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

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

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

    Кликджекинг и «черный» способ получения контактов пользователя

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

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

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

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

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

    С одной стороны — прикольно. Вы получили скидку и бесплатную доставку, а с другой…

    • Как магазин узнал ваши контактные данные?
    • Откуда он знает номер мобильного?
    • Что еще ему известно о вас?
    • Не нарушает ли он закон и сборе персональных данных?
    • Как данные используются?
    • Кому передаются?

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

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

    Что такое кликджекинг (clickjacking) и в чем заключается технология?

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

    Самым простым примером может быть реклама, которая расположена по верх ролика или кнопки на сайте.  Человек жмет кнопку и ожидает одного действия, а его, например, перекидывают на другой сайт или предлагают посмотреть рекламу.

    Это безобидный вариант кликджекинга, который просто раздражает, но что, если при подобном клике сервис узнает о вас гораздо больше, чем передает браузер. Например ФИО, дату рождения, чем интересуетесь, на какие группы в социальных сетях подписаны, номер телефона, email и многое другое…

    Вот безобидный пример с полупрозрачным предложением вступить в группу. Хотя пользователь хочет нажать на текст «click here»

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

    В реальности делается это все при помощи невидимого фрейма, например, с лайком от социальной сети, который следит за курсором. И когда вы хотите кликнуть на какой-то элемент, то происходит клик не по нему, а виджету с лайком или присоединением в друзья.

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

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

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

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

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

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

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

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

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

    Интервью с основателем сервиса на SeoPult

    Вот такой неоднозначный сервис.

    Как вы относитесь к тому, что магазин, банк или юридическая фирма собирают таким образом данные о вас?Poll Options are limited because JavaScript is disabled in your browser.

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

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

    Посмотрите, что у них в предложенной политике написано:

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

    Как вам такое соглашение? При этом: «взаимодействуя с сайтом вы даете согласие» на обработку персональных данных. Это как вообще? Тем что я зашел на сайт, я даю согласие… Бред… Но насколько я понял, это вполне «нормальная» практика.

    Вот, например, у «LPTracker» в предложенной политике конфиденциальности:

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

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

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

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

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

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

    По сути, сервис делает все то, что вы можете сделать сами. Например, вы получили от пользователя письмо через форму обратной связи на сайте. Взяли его email и вбили в поиске по людям в Facebook. Нашли его профиль, а у него там имя, фамилия, телефон и другие данные. Все это делает и Carrot Quest, только быстрее, автоматически и по нескольким социальным сетям.

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

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

    Думаю, что это более-менее честно. А как вы относитесь к такому вида кликджекинга и подходу, который предлагает Carrot Quest? Был ли у вас опыт использования таких инструментов? Каких именно? Напишите пожалуйста в комментариях.

    Что такое кликджекинг и в чем его опасность для пользователя | Интернет

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

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

    Содержание:
    1. Кликджекинг – что это такое
    2. Секрет использования кликджекинга
    3. Санкции для сайтов за кликджекинг

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

    В Яндекс.Блоге для вебмастеров дается такое объяснение:

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

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

    • адрес электронной почты посетителей,
    • адрес страниц в социальных сетях (профиль ВКонтакте, Фейсбук),
    • номер телефона
    • и т.п.

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

    В чём секрет использования кликджекинга

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

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

    Кликджекинг используется для привлечения клиентов (то есть, для лидогенерации).   Каким видом лидогенерации является кликджекинг: черным или серым? Уже из самого названия понятно, что эти виды привлечения клиентов не являются честными. Отсюда можно сделать вывод, что кликджекинг — это не есть хорошо.

    Санкции поисковиков за кликджекинг

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

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

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

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

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

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

    Дополнительно:

    1. Как мошенники обретают доступ к аккаунтам пользователей

    2. Осторожно: примеры обмана на сайтах бесплатных объявлений

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

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

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

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

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

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

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

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

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

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

    ×

    Защита от кликджекинга

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

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

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

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

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

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

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

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

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

    Что такое кликджекинг? Учебник и примеры

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

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

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

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

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

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

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



    <стиль>
    #target_website {
    положение: относительное;
    ширина: 128 пикселей;
    высота: 128 пикселей;
    непрозрачность: 0.00001;
    z-индекс: 2;
    }
    #decoy_website {
    позиция: абсолютная;
    ширина: 300 пикселей;
    высота: 400 пикселей;
    z-индекс: 1;
    }


    ...

    ... обмануть веб-контент здесь ...



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

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

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

    Скрипты удаления кадров

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

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

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



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

    Сочетание кликджекинга с атакой DOM XSS

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

    Многоступенчатый кликджекинг

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

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

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

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

    Параметры X-Frame

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


    X-Frame-Options: отказать

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


    Опции X-Frame: sameorigin

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


    X-Frame-Options: allow-from https: // normal-website.ком

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

    Политика безопасности контента (CSP)

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


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

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

    Рекомендуемая защита от кликджекинга заключается в включении директивы frame-ancestors в политику безопасности контента приложения.Директива frame-ancestors 'none' аналогична по поведению директиве X-Frame-Options deny . Директива frame-ancestors 'self' в целом эквивалентна директиве X-Frame-Options sameorigin . Следующий CSP добавляет фреймы в белый список только для того же домена:


    Content-Security-Policy: фрейм-предки «сам»;

    В качестве альтернативы кадрирование можно ограничить именованными сайтами:


    Content-Security-Policy: нормальный веб-сайт предков фреймов.com;

    Чтобы быть эффективными против кликджекинга и XSS, CSP нуждаются в тщательной разработке, внедрении и тестировании и должны использоваться как часть стратегии многоуровневой защиты.

    Clickjacking-атак: что это такое и как их предотвратить

    Збигнев Банах — чт, 15 авг.2019 г. —

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

    Ваша информация будет храниться в тайне.

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

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

    Щелкните здесь, чтобы начать: как выглядит типичная атака кликджекинга

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

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

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

    Типы кликджекинг-атак

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

    • Полное прозрачное наложение: Это метод, использованный в нашем примере выше, где прозрачная легитимная страница (здесь называется инструментальной страницей ) накладывается на тщательно созданную вредоносную страницу. Страница инструмента загружается в невидимый iframe и размещается над видимой страницей путем установки более высокого значения z-index.Одна из первых громких атак с использованием кликджекинга использовала этот метод против страницы настроек подключаемого модуля Adobe Flash, чтобы обманом заставить пользователей предоставить Flash-анимации доступ к камере и микрофону компьютера.
    • Обрезка: Для этой атаки злоумышленник накладывает только выбранные элементы управления с прозрачной страницы на видимую страницу. В зависимости от цели атаки это может означать закрытие кнопок невидимыми гиперссылками для запуска другого действия, чем ожидалось, закрытие текстовых меток вводящими в заблуждение инструкциями, замену подписей кнопок ложными командами или закрытие всей допустимой страницы вводящим в заблуждение содержимым, оставляя открыта только одна оригинальная кнопка.
    • Скрытое наложение: Это был первый продемонстрированный подход к кликджекингу. Злоумышленник создает iframe размером 1 x 1 пиксель, содержащий вредоносный контент, и помещает его под курсором мыши, чтобы он был скрыт курсором, но любой щелчок будет регистрироваться на вредоносной странице.
    • Отбрасывание события клика: Допустимая страница отображается на переднем плане, полностью скрывая вредоносную страницу за ней. Злоумышленник устанавливает для свойства CSS-указателя-событий верхнего уровня значение none, в результате чего события щелчка «пропадают» через наложенную легитимную страницу, регистрируясь только на вредоносной странице ниже.
    • Быстрая замена содержимого: Непрозрачные оверлеи используются для прикрытия целевых элементов управления, удаляются только на долю секунды, чтобы зарегистрировать щелчок, и немедленно заменяются. Для этого злоумышленник должен предсказать точный момент клика жертвы, но при небольшом знании привычек и психологии пользователей компьютера это проще, чем кажется.

    Даже без использования уязвимостей кликджекинга для вставки оверлеев, у злоумышленников есть множество способов обманом заставить пользователей щелкнуть неожиданные элементы управления:

    • Прокрутка: Злоумышленник частично прокручивает допустимое диалоговое окно или другой элемент веб-страницы с экрана, поэтому пользователь видит только некоторые элементы управления.Например, диалоговое окно с предупреждением может быть прокручено за пределы экрана, так что будут видны только кнопки «ОК» и «Отмена», а злоумышленник разместит безобидный текст приглашения таким образом, чтобы оно выглядело так, как будто кнопки относятся к этому сообщению, а не как предупреждение.
    • Перемещение: Эта атака требует, чтобы злоумышленник быстро переместил доверенный диалог (или другой элемент пользовательского интерфейса) под курсором, в то время как пользователь сосредоточен на щелчке по другим, невинно выглядящим элементам. Если это сработает, пользователь инстинктивно щелкнет замещенный элемент управления, прежде чем поймет, что что-то изменилось.Как и в случае быстрой замены содержимого, злоумышленник может быстро переместить диалоговое окно назад после щелчка, чтобы избежать обнаружения.
    • Drag-and-drop: В то время как большинство атак с использованием clickjacking явно сосредоточены на перехвате кликов, можно использовать уязвимости перетаскивания, чтобы обмануть пользователя для выполнения множества других действий, таких как заполнение веб-форм путем перетаскивания невидимого текста в невидимые текстовые поля или раскрытие злоумышленнику конфиденциальной личной информации.
    • …и многие другие: Динамическое взаимодействие между пользователем и элементами веб-страницы, ставшее возможным благодаря объединению JavaScript, DOM и CSS, предлагает бесчисленные варианты, позволяющие обманом заставить пользователей выполнять неожиданные действия. Поскольку атаки кликджекинга используют доверие пользователя к отображаемому контенту и элементам управления, их может быть трудно обнаружить автоматически, и новые атаки будут продолжать появляться.

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

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

    • Framebusting или framebreaking: До того, как поддержка новых HTTP-заголовков стала широко распространенной, разработчики веб-сайтов были сами по себе и должны были развертывать специальные сценарии framebuster (или framekiller), чтобы предотвратить фрейминг своих страниц. Первые скрипты очистки кадра просто проверяли top.location , чтобы убедиться, что это текущая страница — в противном случае — top.Расположение было установлено на себя. Однако эти сценарии можно было легко заблокировать от внешнего фрейма или иным образом обойти, и были разработаны более сложные решения. Несмотря на это, существует множество способов обхода даже самых сложных программных прерывателей фреймов, и такие сценарии следует использовать только для обеспечения элементарной защиты устаревших браузеров. Подход, рекомендуемый в настоящее время OWASP, заключается в том, чтобы скрыть весь текст HTML-документа и показать его только после проверки того, что страница не обрамлена.
    • X-Frame-Options: Вероятно, лучшим решением в настоящее время является использование заголовка HTTP-ответа X-Frame-Options (XFO) в ответах сервера.Первоначально представленный Microsoft в Internet Explorer 8, а затем формализованный в RFC 7034, заголовок X-Frame-Options используется для указания того, может ли страница быть встроена в ,

      Если опустить атрибут allow-top-navigation, iframe, содержащий ложную веб-страницу, не может быть загружен сверху невидимой страницы.С помощью этой защиты злоумышленник может разрешить браузеру запускать сценарии и отправлять формы.

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

      Исследование, проведенное Standford Web Security Group, описывает уязвимости методов перебора фреймов, связанных с перехватом щелчков мышью.

      2. Установите расширения браузера

      Расширения браузера для защиты от кликджекинга не обеспечивают наилучшего взаимодействия с пользователем, поскольку отключают весь JavaScript на загруженных веб-сайтах. Многие популярные веб-сайты, такие как Facebook, Twitter и Youtube, работают на Javascript, и эти расширения будут препятствовать их функциональности.

      Чтобы поддерживать работу Javascript на надежных сайтах, вам необходимо вручную указать белый список

      Вот список надстроек блокировки Javascript для разных браузеров

      Chrome

      Scriptsafe — это расширение для Chrome.

      Mozilla Firefox

      NoScript — это надстройка браузера Mozilla Firefox.

      Safari

      JS Blocker — это расширение браузера Safari.

      Microsoft Edge

      Javascript Toggle ON и Off — это надстройка, которую можно установить в Microsoft Edge.

      DuckDuckGo

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

      Internet Explorer

      Чтобы отключить Javascript в Internet Explorer, выполните следующие действия:

      1. Выберите значок шестеренки в правом верхнем углу или нажмите ALT + X
      2. В раскрывающемся меню выберите «Свойства обозревателя»
      3. Щелкните вкладка «Безопасность»
      4. Щелкните «Пользовательский уровень»
      5. В разделе «Активные сценарии» выберите «Отключить».
      6. Выберите «Да» для подтверждения.
      Существует ли риск утечки данных для вашего бизнеса?

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

      Проверьте свою устойчивость к утечкам данных, НАЖМИТЕ ЗДЕСЬ , чтобы получить БЕСПЛАТНЫЙ рейтинг надежности прямо сейчас!

      Атаки кликджекинга и способы их предотвращения

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

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

      Цель атаки с использованием кликджекинга — обмануть ничего не подозревающих посетителей веб-сайта, заставив их выполнить действия на другом веб-сайте (целевом веб-сайте).Например, пользователя может привлечь веб-сайт, который обещает ему исключительный приз. Когда пользователь нажимает кнопку, чтобы принять приз, его щелчок вместо этого используется для покупки товара на веб-сайте электронной коммерции. Обычно эта атака выполняется путем сокрытия пользовательского интерфейса целевого веб-сайта и организации видимого пользовательского интерфейса таким образом, чтобы пользователь не знал о щелчке по целевому веб-сайту. Из-за такого расположения UI этот вид атаки также известен как UI, восстанавливающий или UI, восстанавливающий атаку .

      Из-за этого обмана пользователь невольно выполняет такие операции, как перевод денег, покупка продуктов, загрузка вредоносных программ, предоставление им , как в социальной сети и т. Д. Но как это работает? Читайте дальше, и вы узнаете

      Типы атак с использованием Clickjacking

      В зависимости от характера конкретной операции атака может иметь разные названия. Рассмотрим, например, следующие варианты:

      • Likejacking : Этот вид атаки направлен на захват кликов пользователей и перенаправление их на «лайки» на странице Facebook или других социальных сетях.
      • Cookiejacking : в этом случае пользователю предлагается взаимодействовать с элементом пользовательского интерфейса, например, путем перетаскивания, и предоставлять злоумышленнику файлы cookie, хранящиеся в его браузере. Таким образом, злоумышленник может выполнять действия на целевом веб-сайте от имени пользователя.
      • Filejacking : С помощью этого типа атаки пользователь позволяет злоумышленнику получить доступ к своей локальной файловой системе и взять файлы.
      • Cursorjacking : Этот метод изменяет положение курсора на другое место, отличное от того, где пользователь его воспринимает.Таким образом, пользователь считает, что он совершает действие, в то время как на самом деле он выполняет другое.
      • Атаки менеджеров паролей : Этот тип атаки направлен на то, чтобы обмануть менеджеры паролей, чтобы воспользоваться их функцией автозаполнения.

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

      Clickjacking в действии

      Чтобы понять подробности атаки clickjacking, давайте посмотрим, как это может происходить на практике.Это поможет вам узнать его поведение и разработать стратегию его предотвращения.

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

      Настройка среды

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

        git clone https://github.com/auth0-blog/clickjacking-sample-app.git  

      После завершения загрузки установите зависимости проекта, переместив проект и запустите эту команду:

        npm install  

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

        npm start  

      Наконец, откройте браузер и перейдите по адресу http: / / localhost: 3000 адрес.Вы должны увидеть следующую страницу:

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

      Запустить атаку кликджекинга

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

      Итак, запустим веб-сайт злоумышленника, выполнив следующую команду в окне терминала:

        узел атакующий-сервер.js  

      Затем откройте новую вкладку или новый экземпляр браузера и перейдите по адресу http: // localhost: 4000. Вы должны увидеть следующую страницу:

      Эта страница обещает вам чудесный отпуск, просто нажав Примите приз! Кнопка . Похоже, это совершенно не связано с сайтом фильма. Однако, если вы нажмете кнопку, вы фактически покупаете DVD на веб-сайте фильма. Вы можете проверить это, открыв инструмент разработчика в своем браузере и проанализировав сетевой трафик, нажав кнопку.Это пример отслеживания в Chrome DevTools:

      . Вы можете заметить HTTP-запрос POST к конечной точке http: // localhost: 3000 / buy веб-сайта фильма.

      Какая связь между этим сайтом и сайтом фильма? Вы откроете для себя это через мгновение.

      «Атака кликджекинга направлена ​​на захват действия пользователя с помощью уловки пользовательского интерфейса».

      Tweet This

      Анатомия атаки

      Чтобы понять, что произошло, давайте взглянем на страницу сайта злоумышленника.Перейдите в папку views и откройте страницу index.ejs . Тело страницы выглядит следующим образом:

       
      
      
        
        
      
          

      Ты победитель !!!

      Вы выиграли замечательный отпуск в тропиках!

      Тропический отпуск

      Примите его, нажав кнопку ниже.

      Его содержимое представляет собой шаблон EJS с двумя основными элементами:

      • Видимая часть страницы определяется блоком div с идентификатором attacker_website .
      • iframe с weak_website id указывает на веб-сайт фильма, но на самом деле вы не видите его на странице злоумышленника.

      Уловка, которая соединяет два веб-сайта, выполняется правилами CSS, определяющими положение и видимость этих элементов. Давайте посмотрим на них:

       
      
      
        
        
          <стиль>
            #vulnerable_website {
              положение: относительное;
              непрозрачность: 0,0;
              ширина: 800 пикселей;
              высота: 900 пикселей;
              верх: 75 пикселей;
              слева: -95px;
              z-индекс: 2;
              отступ слева: 80 пикселей;
              }
      
            #attacker_website {
              позиция: абсолютная;
              z-индекс: 1;
              }
            #attacker_website button {
              маржа слева: 100 пикселей;
            }
          
        
        
        

      Как видите, iframe weak_website присвоил 0.0 для его непрозрачности, что делает его прозрачным. Кроме того, он расположен так, что перекрывает div attacker_website . Вы можете увидеть, как iframe перекрывает div, изменив значение непрозрачности iframe на 0,3 . После изменения этого значения перезапустите сайт злоумышленника. Вы должны увидеть страницу злоумышленника, как показано на следующем рисунке:

      Вы видите, что Примите приз! Кнопка перекрывает кнопку Купить DVD на веб-сайте фильма.

      Свойство z-index завершает работу: невидимый iframe находится над div злоумышленника. Итак, пользователи думают, что нажимают Принять приз! , но на самом деле они нажимают кнопку Купить DVD .

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

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

      Отличия от CSRF

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

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

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

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

      Даже если пример приложения, приведенный в этой статье, представляет собой традиционное веб-приложение, учтите, что ядро ​​атаки — это возможность включить веб-сайт или приложение в iframe.Это означает, что атака кликджекинга может затронуть любой тип приложения независимо от технологии или инфраструктуры, использованной для его создания. Таким образом, уязвимы не только обычные веб-приложения, но и React, Angular и другие приложения.

      То же самое относится к серверной части приложения.

      «Узнайте, как защитить свои веб-приложения от атак с использованием clickjacking».

      Tweet This

      Защита на стороне клиента

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

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

       
      
      
      
        
          <мета-кодировка = utf-8>
          
          
           Киноцентр уязвимых 
          
          <сценарий>
            if (top! = window) {
              Топ.location = window.location;
            }
          
      
        
      
        

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

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

       
      
      
        
          
        
        
          
      
          <сценарий>
            window.onbeforeunload = function () {
              вернуть ложь;
            };
          
          
        
        

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

       
      
      
        
          
        
        
          
          
          
          
        
        

      В этом случае злоумышленник указывает, что содержимому iframe разрешено выполнять сценарии ( allow-scripts ), отправлять формы ( allow-forms ) и обрабатывать как исходящие из то же происхождение ( allow-same-origin ).Никакие другие разрешения не указаны, поэтому содержимое iframe не может заменить содержимое верхнего уровня, как это разрешило бы значение allow-top-navigation .

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

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

        git clone -b client-side-defenses https: // github.com / auth0-blog / clickjacking-sample-app.git  

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

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

      Начните с исходного примера проекта, следуя инструкциям, приведенным в разделе «Настройка среды». Затем отредактируйте файл server.js , как показано ниже:

        // server.js
      
      const express = require ('экспресс');
      const session = require ('экспресс-сеанс');
      const bodyParser = require ('body-parser');
      
      const порт = 3000;
      константное приложение = экспресс ();
      
      app.set ('просмотры', './templates');
      app.set ('движок просмотра', 'ejs');
      
      // 👇 новый код
      app.use (function (req, res, next) {
        рез.setHeader ('Параметры X-кадра', 'sameorigin');
        следующий();
      });
      
      // ... существующий код ...
      
      app.listen (порт, () => console.log (`Сервер прослушивает http: // localhost: $ {port}`));  

      Вы настроили промежуточное ПО Express, которое добавляет HTTP-заголовок X-Frame-Options к каждому ответу браузера. Значение, связанное с этим заголовком ответа, — sameorigin , которое сообщает браузеру, что только страницы одного и того же веб-сайта могут включать эту страницу в iframe.

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

       
      
      
        
        
          <стиль>
            #vulnerable_website {
              положение: относительное;
              непрозрачность: 0,3; // 👈 измененный код
              ширина: 800 пикселей;
              высота: 900 пикселей;
              верх: 75 пикселей;
              слева: -95px;
              z-индекс: 2;
              отступ слева: 80 пикселей;
              }
      
            #attacker_website {
              позиция: абсолютная;
              z-индекс: 1;
              }
            #attacker_website button {
              маржа слева: 100 пикселей;
            }
          
        
        
        

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

      На этот раз содержимое iframe заблокировано.

      Альтернативным значением для заголовка X-Frame-Options является deny , что предотвращает любую попытку поместить страницу во фрейм.

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

        git clone -b x-frame-options https://github.com/auth0-blog/clickjacking-sample-app.git  

      Использование CSP

      Основные браузеры поддерживают заголовок X-Frame-Options . Однако он никогда не был стандартизирован, поэтому могут быть браузеры, не поддерживающие его. Альтернативный стандартный подход к предотвращению атак типа «кликджекинг» — использование определенных директив политики безопасности контента (CSP).

      Например, после восстановления исходного состояния проекта примера приложения измените содержимое файла server.js следующим образом:

        // server.js
      
      const express = require ('экспресс');
      const session = require ('экспресс-сеанс');
      const bodyParser = require ('body-parser');
      
      const порт = 3000;
      константное приложение = экспресс ();
      
      app.set ('просмотры', './templates');
      app.set ('движок просмотра', 'ejs');
      
      // 👇 новый код
      app.use (function (req, res, next) {
        res.setHeader ("Content-Security-Policy", "frame-ancestors 'self';");
        следующий();
      });
      
      // ... существующий код ...
      
      app.listen (порт, () => console.log (`Сервер прослушивает http: // localhost: $ {port}`));  

      В этом случае вы присоединяете заголовок Content-Security-Policy с «self» предков кадра ; Значение для каждого исходящего ответа.Эта директива CSP позволяет получить тот же результат, что и заголовок X-Frame-Options со значением sameorigin .

      Альтернативные значения для управления внедрением iframe через заголовок Content-Security-Policy :

      • frame-ancestors 'none'; : Это предотвращает любую попытку включить страницу во фрейм.
      • кадры-предки https://www.authorized-website.com; : Эта директива позволяет указать, какому веб-сайту разрешено встраивать страницу во фрейм.Вы можете указать несколько URI.

      Auth0 защищает свою страницу универсального входа от атак кликджекинга, отправляя заголовки X-Frame-Options и Content-Security-Policy . Если указаны оба заголовка, приоритет имеет X-Frame-Options .

      Чтобы протестировать подход CSP для защиты образца приложения от кликджекинга, загрузите проект, выполнив следующую команду:

        git clone -b content-security-policy https: // github.com / auth0-blog / clickjacking-sample-app.git  

      «Используйте политику безопасности контента для предотвращения атак с использованием кликджекинга».

      Tweet This

      Использование cookie-файла sameSite origin

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

      Свойство sameSite было введено недавно, поэтому старые браузеры могут его не поддерживать.

      Давайте посмотрим, как можно применить этот подход. Восстановите исходный проект, как описано в разделе «Настройка среды», и измените содержимое файла server.js , как показано в следующем фрагменте кода:

        // server.js
      
      // ... существующий код ...
      
      app.use (express.static ('общедоступный'));
      app.use (session ({
        секрет: 'мой-секрет',
        повторно сохранить: правда,
        saveUninitialized: правда,
        cookie: {
          httpOnly: правда,
          sameSite: 'strict' // 👈 новый код
        }
      }));
      app.use (bodyParser.urlencoded ({extended: true}));
      
      // ... существующий код ...
      
      app.listen (порт, () => console.log (`Сервер прослушивает http: // localhost: $ {port}`));  

      Вы просто добавили свойство sameSite со значением 'strict' в файл cookie сеанса.Это значение указывает браузеру не отправлять cookie сеанса, если запрос поступает из другого домена.

      Чтобы убедиться, что пользователь не может завершить покупку через веб-сайт злоумышленника, вам необходимо получить доступ к веб-сайту злоумышленника по адресу http://127.0.0.1:4000. Это необходимо, потому что вы используете одно и то же доменное имя ( localhost ) как для уязвимых, так и для злоумышленников веб-сайтов, а файлы cookie используются независимо от порта. Конечно, на производстве у вас не будет этой проблемы.

      Чтобы загрузить проект, реализующий эту защиту от кликджекинга, выполните следующую команду:

        git clone -b same-site-cookie https://github.com/auth0-blog/clickjacking-sample-app.git  

      Об Auth0

      Современный подход Auth0 к идентификации позволяет организациям обеспечивать безопасный доступ к любому приложению для любого пользователя. Платформа Auth0 — это настраиваемая операционная система идентификации, которая настолько проста, насколько хотят команды разработчиков, и настолько гибкой, насколько им нужно.Защищая миллиарды транзакций входа в систему каждый месяц, Auth0 обеспечивает удобство, конфиденциальность и безопасность, поэтому клиенты могут сосредоточиться на инновациях. Для получения дополнительной информации посетите https://auth0.com.

      Заключение

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

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

      Что такое кликджекинг-атака (с примерами) и как ее предотвратить

      Clickjacking — это онлайн-атака, при которой жертва обманом заставляет жертву щелкнуть что-либо, не осознавая этого. Clickjacking также называется атакой восстановления пользовательского интерфейса (атакой восстановления пользовательского интерфейса). Классическая атака кликджекинга «исправляет» видимый для жертвы пользовательский интерфейс, встраивая вредоносный веб-сайт в невидимый iframe поверх исходной веб-страницы.

      У жертвы нет визуальных подсказок, что есть невидимый iframe вверху страницы, которую она действительно видит. Невидимая страница содержит интерактивные элементы, которые совпадают с фактическими кнопками на видимой странице внизу. Следовательно, когда жертва нажимает, например, кнопку «Загрузить pdf», она на самом деле щелкает невидимый элемент, который загружает вредоносный скрипт, который затем запускает их браузер.

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

      Как и в случае со многими онлайн-атаками, атаки clickjacking обычно используют ту или иную форму социальной инженерии, чтобы направить цели на скомпрометированный / вредоносный сайт. Это может быть электронное письмо, текстовое сообщение, сообщение в Facebook и т. Д.

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

      Два исследователя безопасности, Джеремайя Гроссман и Роберт Хансен, придумали термин «кликджекинг» после того, как в 2008 году обнаружили, что проигрыватель Adobe Flash уязвим для кликджекинга.

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

      Рабочий пример кликджекинга

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

      Встроенный сайт также может быть легитимным, но уязвимым (для кликджекинга). Давайте возьмем тот же пример, что и выше, но сделаем встроенный невидимый сайт amazon.com. В этом примере, когда жертва нажимает ссылку или кнопку, чтобы сказать, потребовать свой приз или просмотреть фотографию, она фактически совершает дорогостоящую покупку на Amazon.Конечно, для того, чтобы этот пример работал, жертва должна войти в свою учетную запись Amazon и включить покупки в один клик. Но ты получил идею.

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

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

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

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

      Классический

      Мы объяснили классическую атаку выше.Он состоит из создания законно выглядящего веб-сайта и встраивания вредоносного или легитимного (и уязвимого) веб-сайта в невидимый iframe. Затем злоумышленник обманом заставляет жертву (с помощью социальной инженерии) щелкнуть вредоносный или законный, но нежелательный элемент. Законным, но нежелательным элементом может быть что-то вроде кнопки покупки Amazon в один клик для совершения нежелательной покупки. Или это может быть вредоносный элемент, который загружает неприятный скрипт в ваш браузер. В любом случае жертва считает, что запрашивает свой приз или открывает привлекательную фотографию на законно выглядящем и видимом веб-сайте.

      Лайкджекинг

      Чрезвычайно распространенной формой атаки на пользовательский интерфейс является взлом: захват лайков в Facebook. Likejacking работает аналогично классической атаке clickjacking. Но это обманом заставляет пользователей Facebook «нравиться» то, что они никогда не собирались делать. Страница злоумышленника в Facebook встроена в невидимый iframe. Следовательно, пользователь не осознает, что на самом деле нажимает невидимую кнопку «Нравится» злоумышленника. Известный случай этой атаки произошел в Италии в 2011 году.

      Cursorjacking

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

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

      Cookiejacking

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

      Filejacking

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

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

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

      Клиентская

      1. Используйте браузер, поддерживающий API-интерфейс Intersection Observer

      API-интерфейс Intersection Observer может отслеживать «видимость» целевых элементов на веб-странице. Этот API позволяет браузеру определять, когда окно в рамке скрыто.

      Следующие настольные браузеры поддерживают API в настоящее время:

      • Google Chrome 58 и выше
      • Mozilla Firefox 55 и выше
      • Microsoft Edge 16 и выше
      • Opera 45 и выше

      На мобильных устройствах существует так много браузеров, которые доступны как в Apple App Store, так и в Google Play Store, что перечислить их все практически невозможно.Однако браузеры по умолчанию как на iOS, так и на Android поддерживают Intersection Observer API, так что это хорошие новости.

      • iOS Safari с iOS версии 12.2 и выше
      • Chrome для Android 51 и выше

      2. Используйте надстройку браузера

      Некоторые надстройки браузера могут обеспечить некоторую защиту от атак типа «кликджекинг».

      Некоторые популярные варианты:

      • NoScript : надстройка браузера NoScript не позволяет пользователям нажимать на невидимые или «исправленные» элементы веб-страницы.NoScript бесплатен, но поддерживается только Mozilla Firefox.
      • NoClickjack : надстройка браузера NoClickjack поддерживается Google Chrome, Mozilla Firefox, Microsoft Edge и Opera. Надстройка делает видимыми все фреймы на веб-странице.

      На стороне сервера

      На стороне сервера способ защиты от кликджекинга заключается в добавлении соответствующих директив в заголовки HTTP вашего веб-сайта.

      1. X-Frame-Options Директива

      Представленный Microsoft в выпуске Internet Explorer 2009 года, HTTP-заголовок X-Frame-Options обеспечивал частичную защиту от кликджекинга.Большинство основных браузеров сегодня поддерживают директиву X-Frame-Options (Safari, Firefox, Chrome и Opera). В заголовке, установленном администратором веб-сайта, указывается его политика кадрирования. Возможные варианты:

      • DENY: запрещает все кадрирование
      • ALLOW-FROM origin: Запрещает создание фреймов с внешних сайтов.
      • SAMEORIGIN: позволяет создавать фреймы только для указанных сайтов.

      Заголовок X-Frame Options никогда не был официальным интернет-стандартом и был вытеснен политикой frame-ancestors .Несмотря на этот факт, многие веб-сайты до сих пор используют X-Frame-Options .

      2. Директива предков кадров

      Директива frame-ancestors политики безопасности контента (CSP) может контролировать (разрешая или запрещая) встраивание контента потенциально вредоносными страницами с использованием iframe, объекта и т. Д. CSP — это заголовок HTTP-ответа, который позволяет вам определять, какой динамический ресурсы могут загружаться в зависимости от источника запроса.

      Как упоминалось выше, директива frame-ancestors заменяет директиву X-Frame-Options . Если страница обслуживается с обоими заголовками, веб-браузер должен использовать политику frame-ancestors . Однако некоторые браузеры могут игнорировать это требование.

      Как добавить директиву frame-ancestors на ваши веб-сайты

      Мы собираемся предоставить инструкции о том, как включить директиву frame-ancestors на вашем веб-сайте как в Apache, так и в Nginx.

      Apache

      1. Нам сначала нужно включить mod_headers .
        sudo a2enmod заголовки  
      1. Затем нам нужно перезапустить apache
        sudo service apache2 перезапуск  
      1. Затем нам нужно отредактировать httpd.conf или apache.conf в зависимости от вашей установки, чтобы добавить директиву frame-ancestors .

      Запретить из всех источников

        Набор заголовков Content-Security-Policy «frame-ancestors 'none';»  

      Разрешить себе, но запретить все другие источники

        Набор заголовков Content-Security-Policy "frame-ancestors 'self';"  

      Разрешить с определенных доменов

        Заголовок набора Content-Security-Policy "frame-ancestors example1.com example2.com example3.com; " 

      Разрешить из собственного и указанного доменов

        Набор заголовков Content-Security-Policy «frame-ancestors 'self' example1.com example2.com example3.com;»  

      Не забудьте перезапустить Apache после внесения изменений

        sudo service apache2 перезапуск  

      Nginx

      В Nginx вам необходимо отредактировать соответствующий файл конфигурации вашего сайта и добавить директиву frame-ancestors в блок «server».

      Запретить из всех источников

        add_header set Content-Security-Policy "frame-ancestors 'none';";  

      Разрешить себе, но запретить все другие источники

        add_header set Content-Security-Policy "frame-ancestors 'self';";  

      Разрешить с определенных доменов

        add_header set Content-Security-Policy "frame-ancestors example1.com example2.com example3.com;"  

      Разрешить из собственного и указанного доменов

        add_header set Content-Security-Policy «сам» предков кадра example1.com example2.com example3.com; " 

      Не забудьте перезапустить Nginx после внесения изменений.

        sudo service nginx перезапуск  

      Заключение

      Вот и все. Clickjacking — довольно неприятная атака. К счастью, у администраторов сайта есть защита, как и у посетителей сайта. Однако нет ничего 100%. Так что оставайтесь бдительными.

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

      • Никогда не нажимайте всплывающие окна. Никогда не знаешь, куда они тебя приведут.
      • Если ваш браузер отображает предупреждение о веб-сайте, к которому вы пытаетесь получить доступ, вам следует обратить внимание и получить необходимую информацию в другом месте.
      • Не нажимайте ссылки (URL-адреса) в сообщениях электронной почты, если вы точно не знаете, кто отправил этот URL-адрес и на что он ведет. И даже тогда внимательно проверьте ссылку. Это ссылка HTTP или HTTPS? Сегодня большинство легитимных сайтов используют HTTPS. Есть ли в ссылке орфографические ошибки (gooogle вместо google)? Если вы можете добраться до пункта назначения, не используя ссылку, сделайте это.

      Что такое кликджекинг: простое объяснение

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

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

      • Тайно загружать вредоносное ПО на ваше устройство;
      • Направляет на вредоносный веб-сайт;
      • Соберите учетные данные для входа;
      • Распространять червей в социальных сетях;
      • Оплатите то, что вы не собирались покупать;
      • Включите веб-камеру и / или микрофон.

      Варианты кликджекинга

      Атаки кликджекинга также имеют несколько разновидностей:

      • Лайкджекинг — метод, используемый для манипулирования кнопкой «Нравится» в Facebook.Когда на него нажимают, вы ставите лайки страницам, которые не собирались делать.
      • Cursorjacking — метод, используемый для управления курсором. Он меняет свое положение с того места, где вы его воспринимаете, в другом месте. Этот метод в основном используется для эксплуатации уязвимостей, обнаруженных в Adobe Flash и Firefox. Однако теперь это исправлено.
      • Без браузера — метод, который, как следует из названия, не требует наличия браузера. Этот метод обычно используется на мобильных устройствах для перехвата всплывающих уведомлений.
      • Взлом cookie — в этой атаке хакер крадет файлы cookie вашего браузера. Обычно жертвам предлагается переместить безвредный объект, но на самом деле они копируют все содержимое своего файла cookie и передают его хакеру.
      • Взлом файлов — метод, при котором хакер обманом заставляет вас установить активное соединение с файловым сервером в вашем веб-браузере, чтобы он мог получить доступ к файлам на вашем устройстве.

      Классический пример кликджекинга

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

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

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

      1. На стороне сервера

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

      1. HTTP-заголовок X-Frame Options может использоваться, чтобы определить, должен ли браузер разрешать упаковку страницы в теги frame , iframe или object . Вы можете выбрать одно из трех значений:
        • DENY — запрещает браузерам отображать вашу страницу во фрейме;
        • SAMEORIGIN — позволяет браузерам отображать вашу страницу во фрейме на другой странице, но только если она из текущего домена;
        • ALLOW-FROM * uri * — страница может отображаться во фрейме, но только из указанного источника.
      2. HTTP-заголовок Content Security Policy предлагает более широкий диапазон безопасности, чем параметры X-Frame. Он позволяет вам заносить в белый список домены, которым разрешено встраивать страницы и домены, из которых могут загружаться такие ресурсы, как скрипты и шрифты.
      3. Удаление фреймов — это метод, который в основном используется в старых браузерах. Все, что вам нужно сделать, это вставить Javascript, убивающий фреймы, на страницы, которые вы не хотите включать в сторонние фреймы. Большинство веб-страниц не нужно встраивать.Таким образом, уничтожение кадров легко настроить и обеспечивает высокий уровень защиты от кликджекинга.
      2. На стороне клиента

      Clickjacking может беспокоить пользователей, но вы можете защитить себя, установив расширения браузера. Некоторые из них не позволят вам щелкнуть невидимые или «исправленные» элементы страницы. Вы можете попробовать NoScript ClearClick для Mozilla Firefox или NoClickjack, если вы используете Chrome, Mozilla, Opera или Microsoft Edge. Последнее расширение обеспечит защиту, не мешая законным фреймам iFrame.