Home » Linux » Спам запросов к al_profileEdit.php на веб сервере

Спам запросов к al_profileEdit.php на веб сервере

Заметил, что в error.log web сервера массово сыпятся сообщения с ошибками. Смысл сообщений был в том, что кто-то очень настойчиво ломится по адресу http://site.ru/al_profileEdit.php?__query=edit&al=-1&al_id=vk. Этого файла на сайте нет, поэтому сообщение попадает в лог ошибок. До кучи все эти запросы присутствуют в access.log. Все это создает лишнюю нагрузку на сервер, поэтому решил разобраться, как заблокировать этот спам.

Если у вас есть желание детальнее разобраться в процессах настройки и обеспечения комплексной безопасности локальной и сетевой инфраструктуры, построенной на базе ОС Linux, рекомендую познакомиться с онлайн-курсом «Безопасность Linux» в OTUS. Курс не для новичков, для поступления нужно пройти .

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

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

На ум пришел простой и надежный fail2ban. Ранее я уже рассказывал о настройке fail2ban для защиты админки wordpress. В статье подробно все рассказано, как установить и настроить фильтры. Не буду подробно на этом останавливаться сейчас. Я просто добавлю новый фильтр, который будет навечно блокировать тех, кто будет обращаться к файлу al_profileEdit.php на веб сервере. Я сначала оставил дефолтные настройки блокировки на 10 минут вроде бы. Но долбили так часто, что с момента выхода из бана и до новой блокировки боты все равно успевали прилично наспамить в логи. Решил их блокировать навечно.

Создаем новый фильтр fail2ban:

# mcedit /etc/fail2ban/filter.d/wp-al-profileEdit.conf
[Definition]
failregex = ^<HOST> .* "GET /al_profileEdit.php

Этот фильтр вычленяет ip адреса всех, кто будет обращаться к файлу al_profileEdit.php на веб сервере. Данные будет брать из лог файла access.log.

Добавляем новый jail в /etc/fail2ban/jail.conf

[wp-al-profileEdit]
enabled = true
port = http,https
action = iptables[name=WP, port=http, protocol=tcp]
filter = wp-al-profileEdit
logpath = /web/sites/site.ru/log/access.log
maxretry = 1
bantime = -1

Перезапускаем fail2ban:

# systemctl restart fail2ban

и проверяем в логе как отработал. Он должен сразу забанить тех, кто успел отметиться в лог файле. Посмотреть список этих ip можно в правилах iptables:

# iptables -L -v -n

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

Онлайн курс Основы сетевых технологий

Теоретический курс с самыми базовыми знаниями по сетям. Курс подходит и начинающим, и людям с опытом. Практикующим системным администраторам курс поможет упорядочить знания и восполнить пробелы. А те, кто только входит в профессию, получат на курсе базовые знания и навыки, без воды и избыточной теории. После обучения вы сможете ответить на вопросы:
  • На каком уровне модели OSI могут работать коммутаторы;
  • Как лучше организовать работу сети организации с множеством отделов;
  • Для чего и как использовать технологию VLAN;
  • Для чего сервера стоит выносить в DMZ;
  • Как организовать объединение филиалов и удаленный доступ сотрудников по vpn;
  • и многое другое.
Уже знаете ответы на вопросы выше? Или сомневаетесь? Попробуйте пройти тест по основам сетевых технологий. Всего 53 вопроса, в один цикл теста входит 10 вопросов в случайном порядке. Поэтому тест можно проходить несколько раз без потери интереса. Бесплатно и без регистрации. Все подробности на странице .

Помогла статья? Есть возможность отблагодарить автора

Автор Zerox

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

4 комментария

  1. Аватар

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

    • Zerox

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

      • Аватар

        Теперь понял, сперва подумал что в блок лист будут добавляться все IP которые обращаются на несуществующие файлы. Мои извинения за невнимательность

  2. Аватар

    Кстати да! Меня не было на сайте несколько месяцев. За это время забыл пароль. Пытался восстановить его и при отправке запроса с сайта, последний просто переставал отвечать. Типа вис. Возможно из-за этого.

Добавить комментарий

Ваш e-mail не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.