Flood и DDoS атаки: защита от хакеров в MU Online

Автор NZK, 2011 Янв. 17, 19:43

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] mu onlineзащитаddosfloodsyn атаки

NZK

Способы защиты от флуда и DDoS атак.

Черные дыры.

net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1

Это превращает машину в черную дыру при попытке подключиться к портам, которые не слушают. Nmap по настоящему не любит это.


Защита очереди сокета от SYN атак.

Основной из самых популярных атак остается SYN флуд, при которой очередь сокета атакуемого хоста переполняется некорректными попытками соединений. Для защиты от таких атак некоторые из UNIX поддерживают отдельные очереди для входящих запросов на соединение. Одна очередь для полуоткрытых сокетов (SYN получен, SYN|ACK послан), другая очередь для полностью открытых сокетов, ждущих вызова accept() от программы. Эти две очереди должны быть увеличены, чтобы атаки малой и средней интенсивности почти не влияли на стабильность и доступность сервера.

kern.ipc.somaxconn=1024


Редиректы (Перенаправления)

Атакующий может использовать IP redirect для изменения таблицы марщрутизации на удаленном хосте. В хорошо разработанной сети редиректы на конечные станции не должны требоваться. Оба - отправка и принятие редиректов должны быть отключены.

net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=1
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0


Настройка стека IP в системах UNIX на оптимальную производительность:

На размер буфера приема и передачи TCP напрямую влияет параметр размера TCP окна. Увеличенный размер окна позволит более эффективно передавать данные, особенно при интенсивной передаче, такой как FTP и HTTP. Значение по умолчанию не является оптимальным и должно быть увеличено до 32768 байт. Это значение не должно быть более 64Кб, если вы не знаете об ограничениях RFC1323 и RFC2018, и если нет поддержки с обеих сторон.
FreeBSD:
sysctl -w net.inet.tcp.sendspace=32768
sysctl -w net.inet.tcp.recvspace=32768


Очистка ARP:

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

FreeBSD:
sysctl -w net.link.ether.inet.max_age=1200


Маршрутизация отправителя:

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

FreeBSD:
sysctl -w net.inet.ip.sourceroute=0
sysctl -w net.inet.ip.accept_sourceroute=0


Установка TIME_WAIT

На загруженном web сервере многие сокеты могут задерживаться в состоянии TIME_WAIT. Это вызвано неправильно написанными клиентскими программами, которые неправильно закрывают сокеты. Это так же может быть использовано для DDoS атак.
Нет рекомендаций по настройке.


Ответ на широковещательный ECHO.

Эти атаки работают с помощью отправки сообщения ICMP 8 0 (запрос ECHO) на широковещательный адрес с фальшивого адреса. Некоторые стеки IP ответят по умолчанию на такие сообщения. Это должно быть отключено. Более того, если хост является фаерволом или раутером, то он не должен пропускать проямые широковещательные запрсы.

FreeBSD:
sysctl -w net.inet.icmp.bmcastecho=0


Другие пробы с помощью широковещания:

Существуют 2 вида проб. Запрос маски адреса может быть использован для определения размера блока сети и установки диапазона для дальнейших проб. Широковещательный запрос временного штампа (timestamp) - еще одно средство выявления хостов и определения их операционных систем (fingerprinting)

FreeBSD:
sysctl -w net.inet.icmp.maskrepl=0


Добавление:
Так как от флуда сложно уберечься по-настоящему, можно только ограничить его влияние, то можно дать следующие рекомендации:
При настройке фаервола отключите все, что не нужно конкретно для работы. Скажем если у вас WEB сервер, отключите доступ ко всему кроме портов доступа по HTTP, будь то ICMP, UDP или еще что-нибудь. Если вы используете Apache, то настройте KeepAliveTimeout для уменьшения времени ожидания в режиме KeepAlive, подберите наиболее оптимальные значения для следующих директив:
MaxKeepAliveRequests
MaxClients
MaxRequestsPerChild
MaxSpareServers
MinSpareServers

Желаю удачи в настройке вашей сети на оптимальную производительность!




Credits:skintwin

netpartizan

#1
Скрипт писал для себя: https://www.esthus.in/w.php
База айпишек ботнета, который я так понимаю и мешает жить.
вывод ипстрана"код страны"диапазон (для виндовых фаерволлов)
Также выводится CIDR восновном используемый никсовыми системами, типо iptables (отображение только в расширеном режиме нажав на страну)

Также написал маленький баш скрипт на примере iptables, который банит список https://www.esthus.in/banip.txt


#!/bin/bash

# Путь
IPT=/sbin/iptables
WGET=/usr/bin/wget
EGREP=/bin/egrep

IPLIST="badip"
$IPT -N $IPLIST


$WGET -O /root/banip.txt [url=https://www.esthus.in/banip.txt]https://www.esthus.in/banip.txt[/url]
BADIPS=$(egrep -v "^#|^$" /root/banip.txt)

for ipblock in $BADIPS
do
$IPT -A $IPLIST -s $ipblock -j DROP
done
exit 0

Не советую блокать все иптаблом, лучше использовать дополнение ipset

Hose

Цитата: netpartizan от 2011 Янв. 17, 20:39  Скрипт писал для себя: https://www.esthus.in/w.php
База айпишек ботнета, который я так понимаю и мешает жить.
вывод ипстрана"код страны"диапазон (для виндовых фаерволлов)
Также выводится CIDR восновном используемый никсовыми системами, типо iptables (отображение только в расширеном режиме нажав на страну)

Также написал маленький баш скрипт на примере iptables, который банит список https://www.esthus.in/banip.txt


#!/bin/bash

# Путь
IPT=/sbin/iptables
WGET=/usr/bin/wget
EGREP=/bin/egrep

IPLIST="badip"
$IPT -N $IPLIST


$WGET -O /root/banip.txt [url=https://www.esthus.in/banip.txt]https://www.esthus.in/banip.txt[/url]
BADIPS=$(egrep -v "^#|^$" /root/banip.txt)

for ipblock in $BADIPS
do
$IPT -A $IPLIST -s $ipblock -j DROP
done
exit 0

Не советую блокать все иптаблом, лучше использовать дополнение ipset

а куда этот твой скрип пихать ? :)

netpartizan

Цитата: Hose от 2011 Янв. 17, 18:46  а куда этот твой скрип пихать ? :)
Это для nix систем.


пс: Также прикрепляю тспдамп

17753 packets captured
17863 packets received by filter
104 packets dropped by kernel

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

POCOMAXA

Проблема всего вышеизложенного в том, что все описанное выше применимо только к *nix системам, что для серверов MU Online не является  особо актуальным, но применимо на хостинге для сайта. Но опять таки, от ддос атак на windows можна застраховаться грамтно настроенным фаерволом, но при массированной ддос атаке не поможет не выше описанное, ни фаервол.

Похожие темы (5)