[an error occurred while processing this directive]
SYN атака - это одна из наиболее распространенных атак типа "отказ в обслуживании". Такие атаки имеют своей целью помешать нормальной работе хоста или некоторого сервиса. В случае удачно проведенной SYN атаки можно сделать неработоспособным какой-либо сервис, основанный на TCP протоколе.
Чтобы разобраться в механизме этой атаки, нужно понять принцип работы процесса установления соединения для TCP протокола.
Процесс установления соединения TCP протокола проходит в 3 этапа:
Все полученные сервером запросы о соединениях хранятся в специальной очереди, имеющей заранее определенный размер, зависящий от операционной системы. Они хранятся там до тех пор, пока сервер не получит от клиента информацию об установленном соединении. Если сервер получает пакет с запросом о соединении и очередь заполнена, этот пакет отбрасывается.
SYN атака заключается в отправке определенному серверу большого количества пакетов с запросами о соединении. Эти пакеты посылаются с несуществующим адресом источника. Вымышленный адрес источника принадлежит несуществующему хосту ( в этой ситуации часто прибегают к зарезервированным адресам, подробно описанным в главе "Трансляция сетевых адресов"). Сервер после получения этих пакетов, посылает ответный пакет и ждет подтверждения от клиента. Поскольку адрес источника пакетов не существует, сервер никогда не получит подтверждения.
Дальше случится следующее: спустя некоторое время в данном сервере очередь для хранения запросов об установлении соединеия окончательно заполнится. Начиная с этого момента, все запросы на установление соединений будут отбрасываться, а сервис окажется бездействующим. Такое бездействие будет продолжаться в течение нескольких секунд, пока сервер, обнаружив, что подтверждение соединения не приходит слишком долго, не удалит эти ожидающие решения соединения из очереди. Однако, если атакующий настойчиво продолжает посылать подобные пакеты, сервис будет оставаться бездействующим столько времени, сколько захочет нарушитель.
Не все хосты чуствительны к SYN атакам. Современные реализации TCP протоколов обладают собственным механизмом защиты от таких атак.
Межсетевой экран Aker имеет механизм, назначение которого - препятствовать проведению SYN атак. Принцип его действия заключается в следующем:
Применение описанной процедуры для какого-либо сервера позволяет межсетевому экрану препятствовать заполнению очереди запросов на соединение, поскольку все соединения будут устанавливаться сразу после того, как ответные пакеты сервера достигнут межсетевого экрана и будут удалены из очереди; следовательно, SYN атака не свожет быть реализована.
Важно подчеркнуть, что действие механизма защиты основано на контроле времени задержки ответа клиента. Если установленный тайм-аут слишком короткий, то могут получать отказы правильные соединения. Если тайм-аут слишком длинный, сервер в случае атаки будет хранить информацию о большом количестве установленных соединений, что может привести к еще более серьезным проблемам.
Для получения доступа к окну защиты от SYN атак необходимо выполнить следующие действия:
Окно настройки параметров защиты от SYN атак
Значения полей в окне:
Активизировать защиту от SYN атак: Эта опция активизирует механизм защиты от SYN атак (когда защита от SYN атак отключена, все старые настройки продолжают сохраняться, но их нельзя изменить).
Тайм-аут соединения: Эта опция определяет максимальное время ( за единицу измерения принято 500 ms), в течение которого межсетевой экран ожидает подтверждения клиента об установлении соединений. По истечении этого времени серверам будет послан пакет для удаления соединения.
Наиболее подходящее значение времени для этого поля может быть различным для каждой конфигурации, тем не менее, его рекомендуемые значения лежат в области от 3 до 10, что соответствует интервалу времени между 1,5 и 5 секундами.
Список защищаемых объектов
Список защищаемых объектов определяет хосты, сети или наборы, которые будут защищены межсетевым экраном. В верхнем списке собраны все зарегистрированные в системе хосты, сети и наборы, а в нижнем списке - подлежащие защите объекты.
Для включения нового элемента в список для защиты, нужно сделать следующее:
Чтобы удалить объект из списка для защиты, следует выполнить следующие действия:
Все серверы для любого TCP сервиса, которые доступны для внешних хостов, следует поместить в список защищаемях объектов. Однако, адрес межсетевого экрана не должен фигурировать в этом списке, так как операционная система FreeBSD нечувствительна к SYN атакам.
Интерфейс командной строки для защиты от SYN Flood прост в использовании и обладает теми же возможностями, что и графический интерфейс.
Путь к программе:/etc/firewall/fwflood
Синтаксис:
fwflood [activate | deactivate | show | help] fwflood [add | remove] <name> fwflood timeout <value>
Program help:
Aker Firewall - Version 3.01 fwflood - Настраивает параметры защиты от SYN атак Использование: fwflood [activate | deactivate | show | help] fwflood [add | remove] <name> fwflood timeout <value> active = активизирует защиту от SYN атак deactivate = деактивизирует защиту от SYN атак show = показывает активную конфигурацию add = добавляет новый объект для защиты remove = удаляет из списка защищаемых объект timeout = определяет значение тайм-аута для установления соединения help = показывает данное сообщение Для команд добавления/удаления: name = имя защищаемого или удаляемого объекта из списка Для команды временной интервал: value = максимальный тайм-аут в единицах 500ms
Пример 1: (Просмотр конфигурации)
#/etc/firewall/fwflood show Configuration parameters: --------------------------------- SYN Flood protection: activated Timeout : 6 (x 500 ms) List of entities to be protected: --------------------------------- Aker (Network) Mail Server (Host) NT_01 (Host)
Пример 2: (Деактивизация механизма защиты от SYN атак и просмотр конфигурации)
#/etc/firewall/fwflood deactivate #/etc/firewall/fwflood show Configuration parameters: --------------------------------- SYN Flood protection: deactivated Timeout : 6 (x 500 ms) List of entities to be protected: --------------------------------- Aker (Network) Mail Server (Host) NT_01 (Host)
Пример 3: (Удаление хоста NT_01 из списка защищаемых объектов и просмотр конфигурации)
#/etc/firewall/fwflood remove NT_01 #/etc/firewall/fwflood show Configuration parameters: --------------------------------- SYN Flood protection: deactivated Timeout : 6 (x 500 ms) List of entities to be protected: --------------------------------- Aker (Network) Mail Server (Host)
Пример 4: (добавление хоста Server_01 в список защищаемых объектов и просмотр конфигурации)
#/etc/firewall/fwflood add Server_01 #/etc/firewall/fwflood show Configuration parameters: --------------------------------- SYN Flood protection: deactivated Timeout : 6 (x 500 ms) List of entities to be protected: --------------------------------- Aker (Network) Mail Server (Host) Server_01 (Host)