Анализируем access_log в bash

Если вы стали жертвой фрода, ваш сайт пытались взломать или нагрузка на ваш ресурс резко возросла, найдите IP злоумышленников и заблокируйте доступ в .htaccess с помощью директивы Deny:

Deny from 111.22.33.44

IP злоумышленников есть в файлах access_logs (логи доступа). Чтобы найти IP, с которого посетили, например, ‘order/1234’, переходим в папку с логами и вводим команду:

$ grep ‘order/1234’ * | awk ‘{print $2}’ | uniq

Если таких страниц много, создайте файл со списком url (например, ban.txt) и найдите сразу все IP одной командой:

$ grep -f ban.txt * | awk ‘{print $2}’ | uniq

Обратите внимание, что файл нужно создавать в unix (из-за разницы в том, как ОС делают переносы строк). Список запретных URL особенно эффективен, чтобы найти тех, кто сканирует сайт на уязвимости: например, ищет администраторскую (admin, root), техническую (var, database, php) и отладочную информацию (debug, test, error, exception).

А еще давайте найдем тех, кто создает аномально много запросов:

$ cat access_log-20241030 | awk ‘{print $2}’ | sort | uniq -c | sort | tail -5

Вывод команды покажет 5 наиболее активных посетителей в указанном логе (access_log-20241030) с количеством запросов. Проверьте тех, кто создает в намного больше запросов, чем остальные — это могут быть как очень активные пользователи или боты поисковых систем, так и злоумышленники.

Читать дальше → 

​Все посты подряд / Информационная безопасность / Хабр

Read More

Ваша реакция?
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x