Межсайтовый скриптинг: руководство для пользователей WordPress

Опубликовано: 2021-04-21

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

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

А теперь давайте погрузимся.

В этом руководстве

    Что такое межсайтовый скриптинг (XSS)?

    Межсайтовый скриптинг (XSS) - это тип атаки вредоносного ПО, который выполняется путем использования межсайтовых уязвимостей на любом сайте WordPress. Фактически, это наиболее распространенный способ взлома сайтов WordPress, потому что существует очень много плагинов WordPress, имеющих XSS-уязвимости.

    Объяснение межсайтового скриптинга

    Что такое межсайтовый скриптинг в еще более технических терминах?

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

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

    Множество различных типов XSS-атак можно разделить на две отдельные категории:

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

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

    Что делает XSS-атаки обычными для веб-сайтов WordPress?

    Как пользователь WordPress, вы, возможно, уже знаете, насколько сложны некоторые плагины WordPress. Фактически, некоторые плагины, которые вы используете, даже сложнее, чем само ядро ​​WordPress.

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

    Некоторые из самых уважаемых технологических гигантов, такие как Facebook, Apple и Google, в прошлом пострадали от XSS-атак. Фактически, они нанимают целые специализированные группы безопасности, чтобы минимизировать риски этих атак.

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

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

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

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

    межсайтовый скриптинг WordPress

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

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

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

    • Взломайте сеансы ваших пользователей, обнаружив идентификаторы сеанса
    • Размещайте неавторизованные перенаправления и всплывающие окна
    • Остерегайтесь злонамеренных фишинговых атак
    • Записывайте каждое нажатие клавиши своей жертвы, установив кейлоггеры
    • Украсть вашу финансовую информацию или финансовую информацию пользователя сайта

    Какие бывают типы межсайтового скриптинга?

    Не все атаки XSS одинаково опасны. На самом деле некоторые из них намного опаснее других.

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

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

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

    Как работает межсайтовый скриптинг?

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

    К сожалению, весь процесс взлома может быть выполнен ботами.

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

    1. Взломать сеанс пользователя

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

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

    Хакеры могут отправить файл cookie сеанса на конкретный сайт, например, http://198.178.260.468/, и запрос записывается в файл access.log сервера.

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

    2. Несанкционированное выполнение действий

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

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

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

    3. Фишинговые атаки

    Часто уязвимости межсайтового скриптинга WordPress приводят хакеров к гораздо более масштабной схеме, чем простая XSS-атака.

    Межсайтовые скрипты могут привести к фишинговым атакам на ваш сайт.

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

    Это очень опасная атака.

    4. Установка кейлоггера

    В этом типе атаки хакер реализует сценарий, который устанавливает кейлоггер на уязвимый сайт WordPress.

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

    5. Кража конфиденциальной информации

    Мы обсудили файлы cookie и способы их кражи. Но эта конкретная атака выводит этот принцип на другой уровень.

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

    Хотя это не новая концепция, это расширение возможностей хакеров с помощью файлов cookie сеанса.

    Как защитить свой сайт WordPress от атак с использованием межсайтовых сценариев?

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

    Это действительно что-то вроде игры в кошки-мышки.

    Лучший способ обнаружить XSS-атаки - использовать такой плагин, как iThemes Security Pro. IThemes Security Pro имеет несколько функций безопасности веб-сайтов для создания вашей передовой защиты от атак межсайтового скриптинга. (подробнее об этом чуть позже).

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

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

    Как работают XSS-атаки

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

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

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

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

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

    • Всплывающие окна
    • Информационные формы
    • Панели поиска
    • URL

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

    Постоянные или сохраненные XSS-атаки

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

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

    Без этой проверки он может открыть брешь XSS в WordPress.

    Вот как это работает:

    1. Хакер находит и использует уязвимость

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

    Без каких-либо проверок ваш сайт берет вредоносный сценарий и отправляет его в базу данных.

    2. Посетители просматривают вашу зараженную страницу.

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

    Это негативно повлияет на всех, кто посетит эту страницу.

    3. Кража файлов cookie в браузере

    У большинства пользователей в браузере постоянно открыто несколько вкладок для таких вещей, как социальные сети, электронная почта, Amazon, YouTube и веб-сайт их работодателя.

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

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

    4. Использование украденных файлов cookie.

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

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

    Вредоносные возможности кажутся безграничными.

    Непостоянные или отражающие атаки XSS

    Это не атака на посетителей сайта, а атака на сайт.

    Если вы владелец сайта WordPress, у вас, вероятно, и вы сами открыли много вкладок в браузере.

    Часто панель администратора WordPress - это всего лишь одна из множества различных вкладок, которые вы обычно оставляете открытыми. И именно это делает возможными рефлексивные XSS-атаки.

    Вот как это происходит:

    1. Владелец сайта перешел по вредоносной ссылке

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

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

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

    2. Получение файлов cookie сеанса

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

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

    Что страшно, так это то, что они будут делаться на ваше имя.

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

    Вот почему так важно принять все возможные меры предосторожности.

    Предотвращение межсайтового скриптинга WordPress: 5 шагов

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

    1. Загрузите и установите подключаемый модуль iThemes Security Pro.

    Чтобы приступить к обеспечению безопасности и защите вашего сайта, загрузите и установите плагин iThemes Security Pro.

    Получите iThemes Security Pro сейчас

    2. Защитите своих пользователей от взлома сеанса

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

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

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

    Функция надежных устройств в iThemes Security Pro позволяет идентифицировать устройства, которые вы и другие пользователи используете для входа на свой сайт WordPress. После того, как ваши устройства будут идентифицированы, мы сможем помешать злоумышленникам и другим злоумышленникам нанести какой-либо ущерб вашему веб-сайту.

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

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

    Еще одно преимущество Trusted Devices заключается в том, что перехват сеанса уходит в прошлое. Если устройство пользователя изменится во время сеанса, iThemes Security автоматически выйдет из системы, чтобы предотвратить любые несанкционированные действия в учетной записи пользователя, такие как изменение адреса электронной почты пользователя или загрузка вредоносных подключаемых модулей.

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

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

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

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

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

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

    3. Активируйте управление версиями, чтобы обновлять темы и плагины.

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

    Функция управления версиями в iThemes Security Pro позволяет автоматически обновлять WordPress, плагины и темы. Помимо этого, в системе управления версиями также есть возможности для повышения безопасности вашего веб-сайта, когда вы используете устаревшее программное обеспечение и сканируете старые веб-сайты.

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

    Теперь нажмите кнопку « Настроить параметры» , чтобы подробнее ознакомиться с настройками.

    4. Включите сканирование сайта безопасности iThemes.

    Программа iThemes Security Pro Site Scan проверяет ваш сайт на наличие известных уязвимостей WordPress, плагинов и тем и применяет исправление, если оно доступно.

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

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

    Результаты сканирования сайта отобразятся в виджете.

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

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

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

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

    5. Включите обнаружение изменений файлов.

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

    Настройки обнаружения изменений файла безопасности WordPress

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

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

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

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

    Кнопка сканирования безопасности WordPress на предмет изменений файлов

    Подведение итогов: межсайтовый скриптинг и защита вашего сайта WordPress

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

    Получите бонусный контент: Руководство по безопасности WordPress
    Скачать руководство

    межсайтовый скриптинг WordPress