Определить уязвимость

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

Вам понадобится следующее:

  • Доступ администратора оболочки или терминала к серверам вашего сайта: сети, базе данных и файлам.
  • Знание команд оболочки или терминала
  • Понимание кода (например, PHP или JavaScript)
  • Возможность запуска двух антивирусных сканеров

Следующие действия

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

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

Потенциальные уязвимости {potential-vulnerabilities}

К потенциальным уязвимостям, требующим расследования, относятся следующие:

Компьютер администратора, зараженный вирусом

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

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

Слабые или повторно используемые пароли

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

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

Устаревшее программное обеспечение

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

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

4. Разрешительные практики кодирования, такие как открытые перенаправления и SQL-инъекции.

Открыть перенаправления

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

http://example.com/page.php?url=http://example.com/good-file.pdf

или

http://example.com/page.php?url=malware-attack-site>

  • Если ваш сайт подвергается злоупотреблениям с помощью открытых перенаправлений, вы, вероятно, заметили, что в сообщении в Search Console приведены примеры URL-адресов, которые включают открытые перенаправления на нежелательный пункт назначения.
  • Чтобы предотвратить открытые перенаправления в будущем, проверьте следующее:
    • Включено ли «разрешить открытые перенаправления» по умолчанию в вашем программном обеспечении.
    • Может ли ваш код запрещать перенаправления за пределы домена.
    • Можете ли вы подписать перенаправление, чтобы могли выполняться только перенаправления с правильно хешированными URL-адресами и правильной криптографической подписью.

SQL-инъекции

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

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