# Как определить взлом по логам сервера и не допустить заражения сайта

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

# Просмотр лога ошибок

Проверьте, к каким файлам были направлены последние запросы. Если это .htaccess, install.php, wp-config.php, то похоже, что вашим сайтом заинтересовался злоумышленник. Тем более, если IP–адрес компьютера пользователя вам незнаком.

Ошибка в журнале может выглядеть примерно так:

[Sat Jul 12 15:23:15 2023] [error] [client 123.45.67.890:20744] AH01630: client denied by server configuration: /путь/к/вашему/сайту/wp-config.php

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

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

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

# Вычисление взломщика по ответам сервера

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

Несколько примеров ошибок:

  • 400 Bad Request — ошибка синтаксиса или неверный запрос.
  • 401 Unauthorized — ошибка, возникающая при необходимости авторизоваться, чтобы просмотреть веб-страницу (отобразится в логах, если пользователь не ввёл доступы или сделал это неправильно).
  • 403 Forbidden — ошибка, которая появляется у тех, кому не разрешено просматривать веб-страницу.
  • 429 Too Many Requests — ошибка, оповещающая о том, что поступил большой объём запросов за определённый отрезок времени.

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