База знаний: Linux Server
Определение и частичная нейтралицая Dos атак
Автор Алексей | HiTex.BY, Последнее изменение: Алексей | HiTex.BY на 09 марта 2012 9:29
|
|
Данный вариант подходит только для атак типа "отказ в обслуживании". Итак для определения возможно атаки на понадобятся следующие команды: Кол-во запущенных процессов Apache: CentOS ps aux | grep httpd |wc -l Debian/Ubuntu ps aux | grep apache | wc -l SYN netstat -na | grep ":80\ " | grep syn netstat -na | grep ":80\ " | grep SYN | wc -l netstat -na | grep ":80\ " | grep SYN | sort -u | more Cколько коннектов на 80 порт: netstat -na | grep ":80\ " | wc -l На какой домен чаще всего идут запросы: tcpdump -npi eth0 port domain Количество соединений с сервером: cat /proc/net/ip_conntrack | wc -l IP которые соединены с сервером и какое количество соединений по каждому IP netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n Статус Apache: apachectl status Посмотреть откуда атакующий IP адрес: whois xxx.xxx.xxx.xxx где xxx.xxx.xxx.xxx IP атакующего Просниферить трафик идущий на domain.ru (атакуемый домен) с записью в файл output.txt: tcpdump -n -i eth0 -s 0 -w output.txt dst port 80 and host domain.ru dst также можно поменять на src: tcpdump -n -i eth0 -s 0 -w output.txt src port 80 and host domain.ru Допустим нашли IP (xxx.xxx.xxx.xxx) с которого много запросов: tcpdump и там где был атакуемый домен вводим этот IP: tcpdump -n -i eth0 -s 0 -w output.txt src port 80 and host xxx.xxx.xxx.xxx С какого IP сколько запросов: netstat -ntu | awk '{print $5}'| cut -d: -f1 | sort | uniq -c | sort -nr | more Посмотреть на какие порты: netstat -na | grep xxx.xxx.xxx.xxx где xxx.xxx.xxx.xxx IP атакующего и блокировать начиная с тех, где больше коннектов. Закрыть доступ для целой подсети IP (xxx.xxx.xxx.xxx), на конкретный протокол(-p) порт(–destination-port) в конкретном направлении(-d или -s: В одном направлении (-d): iptables -A INPUT -d xxx.xxx.0.0/16 -p tcp --destination-port http -j DROP В другом направлении (-s): iptables -A INPUT -s xxx.xxx.0.0/16 -p tcp --destination-port http -j DROP Тоже самое, но для конкретного IP (xxx.xxx.xxx.xxx) iptables -A INPUT -s xxx.xxx.xxx.xxx -p tcp --destination-port http -j DROP iptables -A INPUT -d xxx.xxx.xxx.xxx -p tcp --destination-port http -j DROP Блокировка по всем протоколам и портам, в направления -s и -d: iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP iptables -A INPUT -d xxx.xxx.xxx.xxx -j DROP Если установлен файрвол APF, можно блокировать с его помощью: apf -d xxx.xxx.xxx.xxx Где xxx.xxx.xxx.xxx IP атакующего. Данный вариант предусматривает выявление атаки на Вебсервер, ежели атака идет на другой ваш порт то соответственно в данном примере его нужно будет изменить с 80 на тот который вы собираетесь мониторить. | |
|
Комментарии (0)