В статье рассказывается:
- Что такое уязвимость сайта
- 10 наиболее уязвимых мест веб-сайта
- Профилактика уязвимости сайта с помощью аудита
- Лучшие сканеры уязвимостей сайта онлайн
- ТОП-10 бесплатных сканеров уязвимостей сайтов
- Что делать, если злоумышленники уже воспользовались уязвимостью вашего сайта
В системе любого сайта есть слабые места, получив доступ к которым хакеры могут управлять им и использовать личные данные пользователей. Эти слабые места — уязвимости сайтов. Чтобы мошенники не могли получить информацию с сайта, он должен быть надежно защищен. Но в любой, даже самой защищенной системе есть лазейки, по которым хакеры получают доступ к данным. Проникнув в систему, они могут изменить любую информацию и воспользоваться сайтом в личных целях.
Что такое уязвимость сайта
В IT-области уязвимостями называют недостатки в системе, которые хакеры используют для намеренного причинения ущерба. Эти недостатки появляются в результате ошибок при программировании, проектировании системы, использования ненадежных паролей, воздействия вирусов и вредоносных программ, скриптовых и SQL-инъекций.
Как сайты, так и разное ПО могут быть уязвимыми и терять информацию из-за недостатков в системе, которыми воспользовались хакеры для незаконных действий. Некоторые недостатки представляют реальную опасность для веб-ресурсов и могут серьезно навредить вашим проектам. Поэтому важно понимать, какие уязвимости сайтов существуют и как они могут влиять на интернет-проекты.
Источник: shutterstock.com
Приведем элементарный пример, позволяющий лучше понять, что такое уязвимости сайтов.
Допустим, веб-ресурс — это большая защищенная крепость с бойницами. Пока на территорию крепости не проникнут посторонние, все в порядке. На первый взгляд, благодаря высоким стенам, пушкам на башнях и глубокому рву недоброжелатель не может попасть внутрь.
Однако один злоумышленник перелез через стену, другой под видом мирного жителя прошел в ворота, третий проник во двор через неохраняемую потайную лазейку.
Ситуации с сайтами мало отличаются от этого примера. Вы можете позаботиться о надежной и многоступенчатой защите своего ресурса. Но чем сложнее он устроен, тем выше вероятность того, что в одном из элементов окажется уязвимое место для безопасности всей системы. Используя уязвимости сайтов, злоумышленник может сбить работу ресурса и получить полный доступ к системе.
Результаты специального исследования на тему самых уязвимых сайтов, проведенного компанией Positive Tehnologics, показали, что атаке со стороны хакеров наиболее подвержены те ресурсы, которые написаны на PHP и имеют собственный движок. Самими безопасными оказались сайты, где использованы технологии Java/ASP.NET и коммерческие CMS.
Не забывайте, что главная цель хакеров — получить полный контроль над системой, и если на сайте есть уязвимости, задача для злоумышленников упрощается. Поэтому не жалейте средств на создание безопасного ресурса. Это дешевле, чем дальнейшее устранение недостатков и восполнение ущерба от хакерских атак.
10 наиболее уязвимых мест веб-сайта
Перечислим основные уязвимости сайтов, на которые стоит обратить внимание.
Инъекции/Injection
Инъекции — это слабые места, которые возникают из-за передачи пользователем непроверенных данных интерпретатору для выполнения. То есть любой интернет-пользователь может произвольно ввести код в интерпретаторе. Самыми распространенными видами инъекций считаются SQL, OS, XXE и LDAP.
Скорее всего, о трех последних вы никогда не слышали. Но сайты с уязвимостью SQL однозначно вам знакомы. Используя их, хакер может проникнуть в базу данных, прочесть секретную информацию из нее и даже внести собственные значения. Инъекции появляются тогда, когда не проверяют, есть ли в информации, передаваемой интерпретатору, управляющие последовательности и команды, например кавычки в SQL.
Проблемы с аутентификацией и проверкой сессий
Для работы со многими приложениями пользователи должны пройти идентификацию. Часто проверка подлинности и управления сессиями проводится неправильно, в результате чего хакеры получают доступ к учетным записям пользователей без паролей. Мошенники могут заполучить ключи или токены сеанса, идентифицирующие пользователей, и применять их какое-то время или постоянно.
XSS
Инъекции и проблемы с аутентификацией и проверкой сессий наиболее опасны для сайта и его сервера. XSS для сервера не представляет серьезную угрозу. Но при этом XSS опасна для посетителя сайта. XSS работает в его браузере и позволяет украсть его информацию.
Источник: shutterstock.com
XSS, или Cross-Site Scripting, работает в JavaScript по такому же принципу, как и в инъекциях. Мошенник передает в одном из полей специальную строчку с JS-кодом. Браузер думает, что этот код отправил сайт, и выполняет его. При этом код может быть любым. Чтобы защититься от подобных атак, все специальные символы нужно экранировать при помощи функции html special chars или аналогичных ей.
Проблемы с контролем доступа
Часто из-за невнимательности администраторов простые пользователи получают доступ к закрытой информации. Эта проблема характерна даже для популярных движков.
Яркий пример — файлы в корне веб-сайта. Допустим, файл wp-config.php с паролями доступа к базе данных закрыт благодаря своему расширению php. Но его редактирование в Vim и неправильное сохранение ведет к созданию резервной копии с расширением .swp, которую уже можно спокойно открывать в браузере.
Еще одна проблема с контролем доступа — ошибки в коде приложения, из-за которых незарегистрированным посетителям становится доступна секретная информация.
Неправильная конфигурация
Для обеспечения безопасности приложение должно иметь безопасную конфигурацию, спланированную и разработанную на уровне приложения и framework, и правильно настроенные серверы. Нужно разрабатывать, внедрять и постоянно поддерживать настройки безопасности. Многие сервисы по умолчанию имеют небезопасную конфигурацию. Кроме того, ПО должно быть актуальным всегда.
Незащищенная конфиденциальная информация
Во многих веб-приложениях, на сайтах, API нет защиты персональной информации пользователей, в результате чего она находится в открытом доступе. Это могут быть пароли, токены, ключи, медицинская или финансовая информация. Хакеры могут украсть или даже изменить важные данные, применив атаку «Человек посередине». Конфиденциальная информация должна быть защищена, например, шифрованием https или другими методами.
Слабое противостояние атакам
Большая часть приложений и API не могут выявлять, предотвращать и реагировать как на ручные, так и на автоматизированные атаки. У них нет для этого базового функционала. Чтобы надежно защищать ресурс от атак, недостаточно просто проверять соответствие логина и пароля.
Для защиты сервис должен выявлять, фиксировать и даже блокировать попытки неверного входа и прочие несанкционированные действия. У авторов приложений также должна быть возможность быстрого развертывания исправлений для защиты от новых атак.
Уязвимости CSRF
При атаке CSRF или Cross-Site Request Forgery хакер может отправить с браузера пользователя тот или иной HTTP-запрос, в том числе cookie, файлы сеанса и любые другие данные, которые автоматически включаются в слабозащищенное веб-приложение.
То есть мошенник может делать запросы из браузера пользователя. Приложение считает, что они верные и отправлены непосредственно пользователем. Допустим, вы просто проходите по ссылке, а сайт уже делает рекламную рассылку вашим друзьям без вашего ведома или удаляет аккаунт.
Применение компонентов с уязвимостями
У таких компонентов, как библиотеки, frameworks и прочие программные модули, те же полномочия, что и у приложения. Если один компонент уязвим, то, атаковав сервис, хакер может украсть важную информацию или даже начать управлять сервисом. Из-за приложений и API, использующих компоненты с распространенными уязвимостями, может ослабнуть защита приложений, что приведет ко всевозможным атакам. В компонентах могут присутствовать разные виды уязвимостей, обеспечивающие мошеннику доступ к закрытой информации.
Незащищенные API
Современные приложения состоят сейчас в основном из клиентских приложений и богатых API интерфейсов, доступных через JavaScript в браузере или из мобильных приложений. Они могут работать по протоколам SOAP/XML, REST/JSON, RPC, GWT и т. д. Эти API часто не защищены и также разработаны со множеством ошибок, ведущих к уязвимости.
Профилактика уязвимости сайта с помощью аудита
Тест сайта на уязвимость — это упреждающий процесс, позволяющий обнаружить слабые места, понять, насколько защищен сайт, какие атаки ему грозят. На основе полученной информации можно разработать план защиты веб-ресурса.
Как найти уязвимость на сайте? Комплексная проверка безопасности включает в себя следующие действия:
-
Атаку методом подбора паролей.
-
Внедрение XML-сущностей.
-
Поиск элементов с известными уязвимостями.
-
Проверку на удаленное выполнение произвольного кода.
-
Выявление уязвимых мест в компонентах сервера и веб-окружении сайта.
-
Проверку на наличие инъекций кода.
-
Попытки обойти систему аутентификации.
-
Выявление CSRF-/XSS-уязвимости сайта.
-
Попытки перехватить привилегированные аккаунты или их сессии.
-
Проверку вероятности файловых инъекций Remote File Inclusion / Local File Inclusion.
-
Проверку на открытые редиректы и перенаправления на другие веб-ресурсы.
-
Сканирование директорий при помощи перебора и взлома через индекс Google.
-
Проверку всех форм на сайте: регистрации, входа, поиска и других.
-
Проверку возможности открыто получать конфиденциальные данные.
-
Проверку на атаки класса Race Condition — ошибки при проектировании многопоточных систем и приложений.
Аудит проводят с помощью сканеров уязвимостей — специализированных программ, проверяющих сайт и анализирующих типичные слабые места. На основании полученных данных делают вывод об общей защищенности сайта.
Выделяют 3 вида сканеров:
-
Сетевые. Проводят дистанционную проверку через подключение к сетевым ресурсам. Этот тип сканеров самый востребованный.
-
Пассивные. Информацию они получают из сетевого трафика, но при этом, в отличие от сетевых, снижают влияние сканера на уязвимые места.
-
Локальные. Устанавливаются прямо на проверяемый узел и позволяют получить максимально достоверные данные. Поиск уязвимостей на сайте предполагает сравнение атрибутов файлов.
Лучшие сканеры уязвимостей сайта онлайн
Достаточно распространенный сейчас вид софта — сканеры веб-приложений. Эти инструменты бывают как платными, так и бесплатными. Каждый обладает определенным набором характеристик и проверяет разные виды уязвимости сайтов онлайн. Одни сканеры только публикуются в OWASP Top Ten (Open Web Application Security Project), другие проводят гораздо более глубокое black-box тестирование.
Далее мы рассмотрим 7 самых распространенных и опробованных на практике сканеров. Каждый их них был опробован на независимых точках двух платформ (.NET и php): premium.pgabank.com и php.testsparker.com.
OWASP ZAP
Из названия следует, что OWASP ZAP выпускает компания OWASP. Это бесплатный сканер, который определяет вероятность проникновения в систему и ищет слабые места в веб-приложениях.
Ключевые возможности OWASP ZAP:
-
Man-in-the-middle Proxy.
-
Traditional and AJAX spiders.
-
Automated scanner.
-
Passive scanner.
-
Forced browsing.
-
Fuzzer.
Интерфейс сканера разработан на русском языке, что удобно для многих пользователей. Рабочее поле OWASP ZAP состоит из нескольких окошек. Снизу расположены вкладки с текущими задачами и процессом их решения. Слева — дерево сайтов. Дополнительно можно вывести вправо часть окна запросов и ответов.
Маркетплейс позволяет чуть расширить функционал инструмента.
В каждом компоненте программы можно настроить множество параметров. Предусмотрены возможности настройки входящих векторов для активной проверки, генерации динамических SSL-сертификатов, добавления идентификаторов HTTP-сессий и т. д.
При тестировании инструмент выявил на сайте php.testsparker.com Blind SQL Injection. На этом уязвимые места закончились. На premium.bgabank.com тестирование уязвимостей сайта дало более интересные результаты: инструмент нашел возможность Server Side Include (SSI) и Reflected Cross Site Scripting.
Все результаты тестирования можно поместить в отчет (в форматах*.pdf, *.html, *.xml, *.json), включающий в себя выявленные векторы, подробное описание уязвимостей и способы их устранения.
В целом использовать OWASP ZAP удобно. Он включает в себя весь необходимый инструментарий для пентеста веб-приложений, обладает простым и понятным интерфейсом, быстро, в один клик, сканирует сервисы. Кроме того, благодаря глубоким и гибким настройкам для более тщательного анализа в дальнейшем сканировать сайт на уязвимости можно вручную.
W9scan
W9scan — бесплатный консольный сканер уязвимостей ресурса с более чем 1200 встроенными плагинами, способными распознавать отпечатки веб-страниц, портов, анализировать структуру сайта, находить известные уязвимости, сканировать на SQL Injection, XSS и выполнять иные функции.
W9scan в автоматическом режиме формирует отчетность о результатах сканирования в формате HTML. Чтобы запустить сканирование сайта на уязвимости, достаточно указать url сайта и плагины, которые будут использованы. Можно выбрать сразу все — дописать «all».
В процессе сканирования php.testsparker.com в тестовом режиме W9scan обнаружил svn и потенциальные пути загрузки payload. Из менее значимых событий — установил версии работающих сервисов, векторы проведения XXE-, XXS-атак, обнаружил конфигурационные файлы сервера и нашел субдомены.
На сайте premium.bgabank.com сканер не нашел ничего существенного. Но выявил вероятные векторы атак, версии сервисов, субдомены и директории.
После проверки W9scan автоматически создает в HTML-формате файл отчета с результатами сканирования.
Инструмент подходит для быстрого запуска в одну команду. Лучше всего применять его в качестве вспомогательного инструмента, позволяющего определять версии сервисов и потенциальные векторы атак.
Wapiti
Тоже достаточно хороший консольный сканер. Как и W9scan, готов к запуску в одну команду, но при этом имеет множество настроек, благодаря которым проверка сайта на уязвимости онлайн весьма удобна.
Wapiti ищет следующие уязвимости:
-
File disclosure (Local and remote include/require, fopen, readfile...).
-
Database Injection (PHP/JSP/ASP SQL Injections and XPath Injections).
-
XSS (Cross Site Scripting) injection (reflected and permanent).
-
Command Execution detection (eval(), system(), passtru()...).
-
CRLF Injection (HTTP Response Splitting, session fixation...).
-
XXE (XML External Entity) injection.
-
SSRF (Server Side Request Forgery).
-
Use of know potentially dangerous files.
-
Weak .htaccess configurations that can be bypassed.
-
Presence of backup files giving sensitive information.
-
Shellshock.
Кроме вышеперечисленного, предусмотрены разные методы аутентификации (Basic, Digest, Kerberos, NTLM), поддержка прокси (HTTP, HTTPs и SOCKS5), поддержка SSL-сертификатов, возможность добавлять разные HTTP-заголовки или настройки user-agent.
В ходе тестирования после проверки php.testsparker.com сканер нашел уязвимости сайта Blind SQL Injection, Cross Site Scripting, Commands execution. На premium.bgabank.com Wapiti, по сравнению с другими сканерами, показывает не такие грандиозные успехи: ей удалось обнаружить лишь Cross Site Scripting.
После проверки также автоматически создается отчет формата HTML, включающий в себя категории и количество выявленных уязвимых мест вместе с их описанием, запросами, командами для url и рекомендациями по устранению недостатков в безопасности сайта.
Как и предполагалось, Wapiti отстает от OWASP ZAP. Но при этом результаты его проверки оказалось лучше, чем у W9scan, хотя и не были найдены директории, субдомены, не были определены версии сервисов.
Arachni
Бесплатный инструмент с высокой мощностью, проверяющий уровень защищенности веб-приложений и ищущий уязвимости. Обладает графическим интерфейсом и очень богатым функционалом, о котором можно подробнее узнать на официальном сайте.
Активное тестирование:
-
SQL injection — Error based detection.
-
Blind SQL injection using differential analysis.
-
Blind SQL injection using timing attacks.
-
NoSQL injection — Error based vulnerability detection.
-
Blind NoSQL injection using differential analysis.
Пассивное тестирование:
-
Allowed HTTP methods.
-
Backup files.
-
Backup directories.
-
Common administration interfaces.
-
Common directories.
-
Common files.
Впечатляет, не так ли? Но это не все. «Паутина» включает в себя еще множество плагинов: Passive Proxy, Dictionary attacker for HTTP Auth, Cookie collector, WAF Detector и другие.
Инструмент обладает лаконичным и приятным интерфейсом.
Результаты сканирования на сайтах при тестировании. Php.testsparker.com:
-
Cross-Site Scripting (XSS) in script context.
-
Blind SQL Injection (differential analysis).
-
Code injection.
-
Code injection (timing attack).
-
Operating system command injection (timing attack).
-
Operating system command injection.
На premium.bgabank.com из критичных уязвимостей сканер выявил только вероятность межсайтовой подделки запросов (CSRF).
Надо заметить, что Arachni формирует очень привлекательные визуально отчеты в форматах HTML, XML, text, JSON, Marshal, YAML, AFR.
То есть с Arachni приятно работать. Его можно считать маст-хэвом, обязательным для любого веб-мастера.
Tenable.io
Облачный инструмент для сканирования с обширным функционалом. Использование платное. Выявляет множество уязвимостей сайта и практически полностью превосходит OWASP TOP 10 2017.
Инструмент оснащен встроенным веб-пауком. При указании в настройках проверки данных авторизации (запроса авторизации, логина и пароля, авторизованных cookies) проанализирует и личный кабинет (зону зарегистрированного пользователя).
Помимо проверки приложений, инструмент также сканирует сеть, выявляя, есть ли в ней известные уязвимости и хосты. Можно подключить агентов для анализа внутренней сети. Отчеты создаются в форматах *.nessus, *.csv, *.db, *.pdf.
После проверки можно увидеть статистику и выявленные уязвимости в порядке приоритетности: critical, high, middle, low, information.
В карточке уязвимости отражены дополнительные сведения о ней и советы по устранению недостатков.
Анализ php.testsparker.com. Уязвимости с приоритетом high:
-
H: Уязвимости компонентов:
-
вышедшая из поддержки версия PHP;
-
вышедшая из поддержки версия Apache.
-
H: Code injection.
-
H: SQLinj.
-
H: XSS.
-
H: LFI.
-
H: Path Traversal.
Далее — premium.bgabank.com. Уязвимости с приоритетом high:
-
H: Уязвимости компонентов:
-
вышедшая из поддержки версия PHP;
-
уязвимости Apache;
-
уязвимости Bootstrap;
-
уязвимости JQuery.
Инструмент Tenable.io отлично себя зарекомендовал, выявив много уязвимостей. Благодаря удобному графическому интерфейсу и представлению данных работать с ним легко. Еще одно преимущество состоит в том, что в Tenable.io присутствуют дополнительные профили сканирования. Отличительная черта инструмента — облачная структура. Программа для поиска уязвимостей на сайте не пользуется локальными вычислительными ресурсами рабочего компьютера. При этом проверять веб-приложения в локальной сети она не может.
Burp Suite Pro
Burp Suite — это комплексный инструмент для проверки приложений. Состоит из различных утилит, предназначенных для улучшения и ускорения поиска уязвимостей в приложении.
Burp Suite включает в себя следующие утилиты:
-
Прокси-сервер, перехватывающий трафик, который проходит по протоколу HTTP(S), в режиме man-in-the-middle. Утилита находится между браузером и целевым приложением, помогает перехватить, изучить и изменить трафик, идущий в двух направлениях.
-
Spider. Веб-паук, автоматически собирающий данные о содержании и функциях приложения (сайта).
-
Scanner (только в Burp Suite Pro). Инструмент, который автоматически ищет уязвимости в веб-приложениях.
-
Гибкая утилита, предназначенная для различных автоматизированных атак. К примеру, она может перебирать идентификаторы, собирать важную информацию и т. д.
-
Сервис, позволяющий вручную менять и повторно направлять отдельные HTTP-запросы, а также анализировать ответы приложения.
-
Утилита помогает анализировать случайную информацию приложения на возможность предсказания схемы ее генерации.
-
Утилита, позволяющая автоматически или вручную кодировать и декодировать данные в приложении.
-
Инструмент помогает искать визуальные отличия между двумя вариантами информации.
-
Инструмент, добавляющий расширения в Burp Suite.
Утилита Scanner расположена в одноименной вкладке в основном окне программы Burp Suite. Язык интерфейса — английский, но сегодня это никого не пугает.
Во вкладке Issue Definition размещен полный перечень всех уязвимостей, которые способна обнаружить программа. Надо сказать, что перечень довольно большой.
Все уязвимости разделены на 3 группы: high, medium, low. Кроме того, есть группа information, включающая в себя алгоритмы сбора разных полезных данных о проверяемом сайте. Запустив сканирование, в окне Scan queue вы сможете увидеть поэтапный процесс анализа. Есть различия по цвету.
Во вкладке Options выполняют основную настройку параметров анализа.
Чтобы пользователю было удобнее, все опции поделены на категории. Есть возможность получить справку по каждой категории напрямую из окна настройки.
Результат сканирования Burp Suite Pro оказался в целом неплохим. При анализе php.testsparker.com сканер выявил и классифицировал довольно много уязвимостей для получения полного контроля над приложением и информацией в нем: это и OS command injection, и SSTI, и File path traversal.
На сайте premium.bgabank.com сканер нашел:
-
H: Cross-site scripting (reflected).
-
M: SSL cookie without secure flag set.
-
M: SSL certificate (not trusted or expired).
-
L: Cookie without HttpOnly flag set.
-
L: Password field with autocomplete enabled.
-
L: Strict transport security not enforced.
Если вы предпочитаете для веб-пентеста Burp Suite, довольны его функционалом, но хотели бы сделать поиск уязвимостей на сайте более автоматизированным, эта утилита станет отличным решением.
Acunetix
И, наконец, еще один достойный платный инструмент. Его активно рекламируют, однако Acunetix не стал бы популярным без своего богатого функционала. Как искать уязвимости сайта с его помощью? Сканер выявляет уязвимости SQL injection всех видов, Cross site scripting, CRLF injection и другие слабые места в веб-приложениях. При этом для качественного анализа важно правильно выбрать профиль.
Все выявленные уязвимости делятся на группы: High, Medium, Low. Ну и, конечно, категория Information с самой интересной, по мнению программы, информацией тоже здесь есть.
Во вкладке Scans вы можете следить за процессом проверки и другими диагностическими данными.
После анализа во вкладке Vulnerabilities отображаются выявленные виды и количество уязвимостей. Дифференциация по цветам также присутствует.
При тестировании на php.testsparker.com программа неплохо себя показала, а вот с premium.bgabank.com ожиданий не оправдала.
Acunetix обладает обширными возможностями и полезен тем, кто нуждается в stand-alone решении. Имеет простой и понятный интерфейс. Инфографика и отчетность выглядят весьма приемлемо. При анализе не исключены ошибки.
ТОП-10 бесплатных сканеров уязвимостей сайтов
Один из важнейших параметров в сфере IT — безопасность. Известно ли вам, что уязвимости есть у 95 % тестируемых приложений?
На диаграмме от Cenzic отражены выявленные уязвимости разных видов.
Предлагаем ознакомиться с перечнем бесплатных инструментов, позволяющих проверять сайты, выявлять на них уязвимости и вредоносные программы:
-
Scan My Server;
-
SUCURI;
-
Qualys SSL Labs, Qualys FreeScan;
-
Quttera;
-
Detectify;
-
SiteGuarding;
-
Web Inspector;
-
Asafa Web;
-
Netsparker Cloud;
-
UpGuard Web Scan;
-
Tinfoil Security.
-
Scan My Server
Программа формирует максимально полную отчетность по проверке безопасности: SQL-инъекциям, межсайтовому скриптингу, инъекциям PHP-кода, выявлению источника, установке HTTP-заголовков и многим другим параметрам.
Отчет по итогам проверки, включающий в себя краткое описание обнаруженных уязвимостей, направляется по email.
-
SUCURI
SUCURI — самый востребованный бесплатный сканер опасных программ. Позволяет оперативно проверять, есть ли на сайте вредоносный код, SPAM-инъекции, не включен ли веб-ресурс в разные черные списки.
SUCURI также чистит сайт и защищает его от интернет-угроз. Сканер работает на любых CMS, в том числе на WordPress, Joomla, Magento, Drupal, phpBB и т. д.
-
Qualys SSL Labs, Qualys FreeScan
SSL Labs — одна из самых известных программ для проверки SSL. Углубленно анализирует https URL-адреса, общий рейтинг, шифр, версию SSL/TLS, имитацию рукопожатий, данные о протоколе, BEAST и т. д.
FreeScan проверяет сайты на наличие OWASP Top Risks и опасных программ, анализирует параметры SCP и проводит другие виды тестирования. Чтобы проверить сайт на уязвимости, необходимо создать бесплатную учетную запись.
-
Quttera
Инструмент выявляет опасные программы и уязвимости на сайте. Quttera проверяет, есть ли на веб-ресурсе вредоносные, подозрительные и потенциально подозрительные файлы, phishTank, а также проверяет, присутствует ли сайт в списках безопасного просмотра (Google, Yandex) и вредоносных программ.
-
Detectify
Программа для поиска уязвимостей на сайте, основанная на SaaS. С помощью сканера можно автоматически выполнять свыше 100 тестов безопасности, включая тестирование OWASP Top 10, проверять, нет ли на сайте опасного ПО и т. д.
Detectify предлагает бесплатный тестовый период на 21 день.
-
SiteGuarding
С помощью SiteGuarding можно проверять наличие на домене вредоносного ПО, SPAM-инъекций, определять, нет ли сайта в черных списках, и получать другую информацию.
Программа совместима с WordPress, Joomla, Drupal, Magento, osCommerce, Bulletin и другими движками.
SiteGuarding также подходит для удаления вредоносного ПО с сайта.
-
Web Inspector
Web Inspector проверяет сайт и формирует отчетность: «черный список», «фишинг», «вредоносные программы», «черви», «бэкдоры», «трояны», «подозрительные фреймы», «подозрительные подключения».
-
Asafa Web
Asafa Web позволяет сканировать трассировку, пользовательские ошибки, трассировку стека, патча Hash DoS, журнала EMLAH, HTTP Only Cookies, Secure Cookies, Clickjacking и т. д.
-
Netsparker Cloud
Netsparker Cloud проверяет веб-приложения на безопасность и может выявить свыше 25 опасных уязвимостей. Для веб-ресурсов с открытым исходным кодом программа бесплатна. Кроме того, вы можете воспользоваться ее пробной версией.
-
UpGuard Web Scan
Этот сканер оценивает внешние риски. При анализе использует общедоступные данные по разным факторам, включая SSL, атаки Clickjack, Cookie, DNSSEC, заголовки и прочее. Сейчас находится на этапе бета-тестирования, но попробовать его стоит.
-
Tinfoil Security
В первую очередь инструмент проверяет ресурс на наличие десяти уязвимостей OWASP, а потом на другие известные угрозы. В результате сканер формирует отчет о выполненной работе, на основе которого можно внести необходимые исправления и заново проверить сайт на уязвимости онлайн.
На полную настройку уходит около 5 минут. Инструмент может проверять даже те сайты, которые защищены или требуют регистрации для входа.
Один из основных факторов безопасности любого ресурса — непрерывный мониторинг. Поэтому сервис сообщает о сбое или попытке взлома.
С помощью всех этих программ вы можете проверять ресурс по запросу и планировать автоматический анализ сайта на уязвимости. Надеемся, что они позволят вам обеспечить безопасность своего веб-ресурса.
Что делать, если злоумышленники уже воспользовались уязвимостью вашего сайта
Выявлять потенциальные проблемы и проверять уязвимости сайтов следует регулярно, минимум раз в месяц, а в идеале — чаще, поскольку в случае взлома вы понесете серьезный ущерб.
И в завершение хотим дать несколько общих рекомендаций по защите веб-ресурса. Возможно, опытным специалистам они покажутся элементарными, но начинающим веб-мастерам пригодятся.
-
Оперативно загружайте новую версию CMS.
-
Пользуйтесь плагинами для защиты сайта (для WordPress подойдет Wordfence или Sucuri) и непременно обновляйте их версии.
-
Ставьте сложный пароль и постоянно меняйте его.
-
Обязательно меняйте пароль, если сообщили его третьему лицу (программисту, SEO-оптимизатору и т. д.).
-
Не загружайте темы и плагины из непроверенных источников.
-
Подключайте сайт к Яндекс.Вебмастеру, чтобы своевременно получать нужную информацию при возникновении неполадок.
-
Регулярно делайте бэкапы, в том числе на локальный компьютер.
-
Поставьте на компьютер антивирус и постоянно проверяйте его на вирусы.
Если ваш ресурс подвергся атаке, восстановления (бэкапа) будет недостаточно. Как действовать? В такой ситуации необходимо:
-
сразу же выявить, какие файлы были изменены (заменены), например index.php, шаблон, изображение и т. д.;
-
сделать скриншоты последствий;
-
сообщить о случившемуся хостинг-провайдеру (и согласовать с ним все действия);
-
запротоколировать файлы сайта в отдельном каталоге вместе с доступом, временем и модификацией;
-
восстановить (бэкап), воспользовавшись резервной копией сайта или при помощи хостера;
-
скачать логи ошибок (доступа) к сайту или попросить их у хостера (после чего скопировать в отдельный каталог);
-
проанализировать время изменения сайтов и соотнести их с указанным временем в логах (это поможет установить характер уязвимости и IP-адрес хакера);
-
обновить скрипты и, если это невозможно, перестать использовать все уязвимые модули;
-
поменять пароли доступа (ВСЕ!).