Syn наводнение что это
Немного о типах DDoS-атак и методах защиты
Согласно проведенным исследованиям, масштабы DDoS-атак выросли примерно в 50 раз за последние несколько лет. При этом злоумышленники «метят» как в локальные инфраструктуры, так и публичные облачные площадки, на которых сосредотачиваются решения клиентов.
«Успешно реализованные атаки имеют непосредственное влияние на бизнес клиентов и носят деструктивные последствия», – комментирует Даррен Ансти (Darren Anstee), представитель компании Arbor Networks, поставляющей решения для обеспечения безопасности в сетях.
При этом частота атак также увеличивается. В конце 2014 года их число составляло 83 тыс., а в первом квартале 2015 года цифра увеличилась до 126 тыс. Поэтому в нашем сегодняшнем материале мы бы хотели рассмотреть различные виды DDoS-атак, а также способы защиты от них.
/ Flickr / Kenny Louie / CC
DoS атака (Denial of Service – отказ в обслуживании) представляет собой бомбардировку серверов жертвы отдельными пакетами с подложным обратным адресом. Сбой в этом случае является результатом переполнения (забивания трафиком) арендуемой клиентом полосы либо повышенного расхода ресурсов на атакуемой системе.
Злоумышленники при этом маскируют обратный адрес, чтобы исключить возможность блокировки по IP. Если атака является распределённой и выполняется одновременно с большого количества компьютеров, говорят о DDoS-атаке. Давайте взглянем на несколько распространённых типов.
TCP SYN Flood
Цель атаки SYN Flood – вызвать перерасход ресурсов системы. На каждый входящий SYN-пакет система резервирует определенные ресурсы в памяти, генерирует ответ SYN+ACK, содержащий криптографическую информацию, осуществляет поиск в таблицах сессий и т. д. – то есть затрачивает процессорное время. Отказ в обслуживании наступает при потоке SYN Flood от 100 до 500 тыс. пакетов за секунду. А злоумышленник, имея хотя бы гигабитный канал, получает возможность направить поток до 1,5 млн пакетов в секунду.
Защита от типа атак SYN Flood осуществляется средствами DPI-систем, которые способны анализировать и контролировать проходящий через них трафик. Например, такой функционал предоставляет решение СКАТ от VAS Experts. Система сперва обнаруживает атаку по превышению заданного порога неподтвержденных клиентом SYN-запросов, а затем самостоятельно, вместо защищаемого сайта, на них отвечает. TCP-сессия организуется с защищаемых сайтов после подтверждения запроса клиентом.
Fragmented UDP Flood
Эта атака осуществляется фрагментированными UDP-пакетами небольшого размера, на анализ и сборку которых платформе приходится выделять ресурсы. Защиту от такого типа флуда тоже предоставляют системы глубокого анализа трафика, отбрасывая неактуальные для подзащитного сайта протоколы или ограничивая их по полосе. Например, для веб-сайтов рабочими протоколами являются HTTP, HTTPS – в этом случае неактуальные протоколы можно попросту исключить или ограничить по полосе.
Атака с использованием ботнета
Злоумышленники обычно стараются заполонить полосу жертвы большим количеством пакетов или соединений, перегружая сетевое оборудование. Такие объемные атаки проводятся с использованием множества скомпрометированных систем, являющихся частью боднет.
В этом примере (изображение выше), злоумышленник контролирует несколько «машин-зомби» для проведения атак. «Зомби» общаются с главной машиной по защищенному скрытому каналу, причем управление часто осуществляется по IRC, P2P-сетям и даже с помощью Twitter.
При проведении атаки такого типа пользователю нет нужды скрывать IP-адрес каждой машины, и благодаря большому числу участвующих в атаке компьютеров, такие действия ведут к значительной нагрузке на сайт. Причем обычно злоумышленники выбирают наиболее ресурсоемкие запросы.
Для защиты от ботнет-атак применяются различные поведенческие стратегии, задача которых – выявлять неожиданные отклонения и всплески трафика. Еще один вариант, который предлагает компания VAS Experts, – использование теста Тьюринга (странички с CAPTCHA).
В этом случае к работе с сайтом допускаются только те пользователи, которые удачно прошли проверку на «человечность». При этом страничка с капчей располагается на отдельном сервере, способном справиться с потоком запросов ботнета любого размера.
Также хотелось бы упомянуть об атаках, которые появились относительно недавно. Речь идет об атаках на IoT-устройства с целью их «захвата» и включения в ботнет для осуществления DDoS-атак.
Согласно отчету компании Symantec, 2015 год побил рекорды по числу атак на IoT, а в интернете появилось восемь новых семейств вредоносных программ. Атаки участились по ряду причин. Во-первых, многие умные устройства постоянно доступны из Сети, но при этом не обладают надежными средствами защиты – не позволяет вычислительная мощность. Более того, пользователи зачастую не обновляют программное обеспечение, только повышая риск взлома.
Злоумышленники используют простую тактику: сканируют все доступные IP-адреса и ищут открытые порты Telnet или SSH. Когда такие адреса найдены, они пытаются выполнить вход с помощью стандартного набора логинов и паролей. Если доступ к оборудованию получен, на него загружается файл скрипта (.sh), который подкачивает тело бота, запускает его и закрывает доступ к устройству, блокируя порты Telnet и внося изменения в iptables, чтобы исключить возможность перехвата системы другим червем.
Чтобы минимизировать риск или избежать взлома IoT-устройств, необходимо выполнить простых действий: отключить неиспользуемые сетевые функции устройства, отключить Telnet-доступ и обратиться к SSH, по возможности перейти на проводное соединение вместо Wi-Fi, а также регулярно проводить обновление программного обеспечения.
Smurf-атаки
Атакующий посылает поддельный пакет IСМР Echo по адресу широковещательной рассылки. При этом адрес источника пакета заменяется адресом жертвы, чтобы «подставить» целевую систему. Поскольку пакет Еcho послан по широковещательному адресу, все машины усиливающей сети возвращают жертве свои ответы. Послав один пакет IСМР в сеть из 100 систем, атакующий инициирует усиление DDoS-атаки в сто раз.
Чтобы предотвратить эффект усиления, специалисты по сетевой безопасности советуют запретить операции прямой широковещательной рассылки на всех граничных маршрутизаторах. Также дополнительно стоит установить в ОС режим «тихого» отбрасывания широковещательных эхо-пакетов IСМР.
DNS-атака с усилением
Атака с усилением – это наиболее распространенная DDoS-атака, использующая рекурсивные сервера имен. Она похожа на Smurf-атаку, только в этом случае злоумышленник посылает небольшие запросы на DNS resolver, как бы заставляя его отправлять ответы на подмененный адрес.
Что касается конкретного примера, то в феврале 2007 года был проведен ряд атак на корневые DNS-серверы, от работы которых напрямую зависит нормальное функционирование всей Сети. Популярные практики защиты от этого типа атак можно найти на сайте Cisco.
TCP Reset
TCP Reset выполняется путем манипуляций с RST-пакетами при TCP-соединении. RST-пакет – это заголовок, который сигнализирует о том, что необходимо переподключение. Обычно это используется в том случае, если была обнаружена какая-либо ошибка или требуется остановить загрузку данных. Злоумышленник может прерывать TCP-соединение, постоянно пересылая RST-пакет с валидными значениями, что делает невозможным установление соединение между источником и приемником.
Предотвратить этот тип атаки можно – необходимо мониторить каждый передаваемый пакет и следить, что последовательность цифр поступает в нужном порядке. С этим справляются системы глубокого анализа трафика.
Сейчас основной целью взлома устройств является организация DDoS-атак или причинение ущерба путем ограничения доступа пользователей к сайту в интернете. Поэтому сами операторы связи, интернет-провайдеры и другие компании, в том числе VAS Experts, также предлагают и организуют решения по защите от DDoS – мониторинг трафика в реальном времени для отслеживания аномалий и всплесков загруженности полосы, функцию Carrier Grade NAT, которая позволяет «спрятать» устройство абонента от злоумышленников, закрыв к нему доступ из интернета, а также другие интеллектуальные и даже самообучающиеся системы.
Дополнительное чтение по теме DPI (Deep packet inspection):
Что такое атака SYN flood и как она работает?
SYN flood (полуоткрытая атака) — это тип атаки «отказ в обслуживании» (DDoS), целью которой является сделать сервер недоступным для законного трафика, потребляя все доступные ресурсы сервера. Повторно отправляя пакеты SYN, злоумышленник может перегрузить все доступные порты на целевом сервере, в результате чего целевое устройство будет вяло реагировать на допустимый трафик или не реагировать вовсе.
Как работает атака SYN флуд
Атаки SYN flood работают, используя процесс квитирования TCP-подключения. В нормальных условиях TCP-подключение показывает три различных процесса для установления соединения.
Чтобы создать отказ в обслуживании, злоумышленник использует тот факт, что после получения исходного пакета SYN сервер ответит одним или несколькими пакетами SYN/ACK и дождется последнего шага в квитировании. Вот как это работает:
В сети, когда сервер оставляет соединение открытым, но машина на другой стороне — связи нет, соединение является полуоткрытым. В этом типе DDoS-атаки целевой сервер постоянно оставляет открытыми соединения и ждет каждого соединения для тайм-аута, прежде чем порты становятся доступными снова. В результате такой тип атаки можно считать «полуоткрытой атакой».
Потоп SYN может проходить тремя различными способами:
На видео: Понятное объяснение syn flood атаки в шуточной форме.
Как смягчается атака SYN flood
Уязвимость SYN флуд была известна в течение длительного времени, и был использован ряд путей смягчения. Несколько подходов включают:
Как Cloudflare смягчает атаки SYN Flood
Cloudflare частично смягчает этот тип атаки, стоя между целевым сервером и потоком SYN. При выполнении первоначального запроса SYN Cloudflare обрабатывает процесс квитирования в облаке, удерживая соединение с целевым сервером до завершения квитирования TCP. Эта стратегия берет стоимость ресурса поддержания соединений с фиктивными пакетами SYN от целевого сервера и помещает его в Сеть Anycast Cloudflare.
Методы защиты от Syn нападений
Наводнение SYN, возможно, наиболее эффективное пакетное нападение, пожирающее самое большое количество программных ресурсов при наименьших усилиях. Оно фальсифицирует TCP-подключения по вымышленным IP-адресам, на которые атакуемая машина не способна ответить.
Для того чтобы полностью изучить эффективность существующих методов борьбы с этой проблемой, эксперт компании TechMavens Росс Оливер провел эталонные тесты нескольких устройств, расположенных приблизительно в одинаковом ценовом диапазоне, используя самодельный комплект для моделирования SYN-атаки на них. Он сообщил о полученных результатах на симпозиуме защиты USENIX на прошлой неделе в Вашингтоне.
Для своих тестов он использовал распространенный сервер (Apache Red Hat 7.1) который, при отсутствии защиты, не мог обрабатывать новые подключения и “глухо зависал” при интенсивности атаки всего 100 SYN/sec.
Самые плохие показатели оказались у межсетевой защиты Cisco PIX и Checkpoint’s Firewall-1, оборудованных модулем SYNDefender. Комплект Cisco вообще не показал никакого преимущества своего использования и выходил из строя при тех же 100 SYN/sec. Защита Firewall-1 показала лишь незначительно лучшие результаты, ломаясь (то есть, отказываясь от новых подключений) при каких-то 500 SYN/sec, которые легко могут быть получены при использовании двух или трех слабых источников SYN-атак.
Справедливо обратить внимание на то, что пользователи ожидают от межсетевой защиты хоть какой-то пользы, в этом случае непонятно, почему комплект Cisco выставлен на продажу для защиты от наводнений SYN, поскольку бесполезность этого комплекта после тестов становится очевидной.
Защита Netscreen-100 компании Netscreen справлялась лучше, разрушаясь только после 14,000 SYN/sec, что приблизительно соответствует атаке 28 мощных источников, при этом цена такой защиты соответствует двум предыдущим описанным моделям.
Только Top Layer AppSafe показала наилучшие результаты, не показывая никаких признаков сбоя даже при максимальной интенсивности атаки 22,000 SYN/sec, которой Оливер смог достичь на своих испытаниях. Цена такой защиты оказалась приблизительно один доллар на SYN во время максимально серьезной атаки, что кажется для нас довольно экономичным решением.
Журналисты поинтересовались у представителей Top Layer, какое, по их данным, максимальное значение интенсивности SYN-атаки, способено выдержать AppSafe. Деннис Англин, руководитель отдела маркетинга, объяснил, что в зависимости от настроек оборудования, цифры очень варьируются, и в настоящее время компания проводит эталонное тестирование для получения зафиксированного максимального значения. Фильтр способен отличить “нормальный”, “подозрительный” и “вредный” трафик согласно настройкам, определяемым самим пользователем, и может быть сконфигурирован для блокирования вредных IP, время же повторного вызова можно конфигурировать от 15 секунд до нескольких недель.
Syn-наводнение
Delphi site: daily Delphi-news, documentation, articles, review, interview, computer humor.
В современных атаках SYN-наводнение заключается в простой отправке на сервер сотен или тысяч пакетов в секунду. Это приводит к растрате или ресурсов сервера, или даже сетевых ресурсов при достаточной интенсивности трафика.
При организации наводнения SYN-пакетами злоумышленник не старается провести полную процедуру установки TCP-соединения. Его целью является превысить допустимый предел числа одновременно устанавливаемых соединений для определенной службы. В 1994 году стеки TCP/IP были не в состоянии установить никаких новых соединений для атакованной службы до тех пор, пока число запросов на соединение не станет меньше установленного предела. До момента превышения установленного предела сервер на каждый получаемый SYN-пакет отвечает пакетом с установленными флагами SYN и АСК. Запросы остаются в очереди (которая обычно составляет от 5 до 10 одновременно устанавливаемых соединений). В современных стеках очереди стали больше, и максимальное количество одновременно устанавливаемых соединений составляет от 100 до 1000.
SYN-наводнения пять лет спустя
Для каждого соединения запускается таймер, устанавливающий предел времени, в течение которого система ожидает установки соединения. Песочные часы на рис. 15.1 символизируют таймер, который устанавливается приблизительно на одну минуту. По истечению этого срока освобождается память, выделенная для хранения информации о соединении, и очередь для службы уменьшается на единицу. После достижения предельного количества одновременно устанавливаемых соединений для того, чтобы очередь оставалась заполненной, и система не могла установить новых соединений, на порт должны приходить около 10 новых SYN-пакетов в минуту.
Поскольку единственная цель данной атаки заключается в обеспечении условий отказа в обслуживании, то злоумышленнику нет смысла использовать свой настоящий 1Р-адрес. TCP-соединение не устанавливается, а только заполняется очередь. Злоумышленнику совсем не нужны ответные пакеты с установленными флагами SYN и АСК, и он уж точно не хочет быть обнаруженным. Поэтому IP-адрес отправителя, как правило, подменяется. Следующий IP-заголовок взят из реального кода атаки для SYN-наводнения. Обратите внимание на адреса dadd и sadd, использующиеся соответственно в качестве адресов получателя и отправителя.
/* Введите информацию IP-заголовка */
packet.ip.version = 4; /* Версия. 4 бит */
packet.ip.ihl=5; /* Длина заголовка. 4 бит */
packet.ip.tos=0; /* Тип обслуживания. 8 бит */
packet.ip.tot_len =htons(40); /* Общая длина. 16 бит */
packet.ip.id=getpid(); /* Идентификатор. 16 бит */
packet.ip.frag_off=0; /* Смещение фрагмента. 13 бит */
packet.ip.ttl=255; /* Поле TTL. 8 бит */
packet.ip,protocol=IPPROTO_TCP; /* Протокол. 8 бит */
packet.ip.check=0; /* Контрольная сумма заголовка */
packet.ip.saddr=sadd; /* IP-адрес отправителя */
packet.ip.daddr=dadd; /* IP-адрес получателя */
Рис. 15.1. Начало атаки
В этом методе применяется даже подпрограмма исправления ошибок, как мы увидим в следующем фрагменте кода. С ее помощью гарантируется, что выбранный для подмены адрес является маршрутизируемым, но принадлежит неактивному хосту. Когда нарушитель вводит адрес, программа атаки тестирует его (обратите внимание на строку slickping). Ведь если адрес принадлежит активному хосту, то в ответ на получение пакета с установленными флагами SYN и АСК будет возвращен пакет с флагом RESET. Атакуемая система, получив этот пакет (с флагом RESET), освобождает память и уменьшает число ожидаемых соединений в очереди, т.е. атака становится неэффективной. Итак, хакерам нужны специальные пакеты с подложными IP-адресами, которые будут использоваться при той или иной атаке. Очень часто разработчики программного обеспечения, позволяющего автоматическое создание пакетов для атаки, допускают небольшие погрешности или упрощают себе задачу, благодаря чему эти пакеты получают уникальный признак, или сигнатуру. Эта сигнатура позволяет выявить подобные пакеты в трафике. При обнаружении специально подготовленного пакета можно не сомневаться в последующей атаке.
case 3: if(!optflags [1])<
fprintf(stderr,»Сначала введите адрес хоста\п»);
/* ICMP-сокет для доступа к протоколам нижнего уровня */ if((sock2 = socket(AF_INET,SOCK_RAW,IPPROTO_ICMP)) «);
fgets(tmp,MENUBUF,stdin) ; if (! (icmpAmt=atoi(tmp)))break;
Этот метод может использоваться в атаках отказа в обслуживании. Атакуемая система бомбардируется SYN-пакетами до тех пор, пока не потеряет возможность устанавливать новые соединения. В этом состоянии хакер может держать систему до тех пор, пока он не даст команду на прекращение отправки SYN-пакетов. Цель атаки Митника заключалась в блокировании одной стороны TCP-соединения, чтобы переключить это соединение с доверительными отношениями на свой хост.
Выявление доверительных отношений
Как Митник узнал, какую систему нужно заблокировать? Как он убедился в существовании доверительных отношений между двумя хостами? Многим тщательно подготовленным атакам предшествует предварительный сбор информации, или разведывательное зондирование (recon probes). Рассмотрим пример зондирования, приведенного в сообщении Цитому, которое было зарегистрировано с помощью tcpdump- анализатора пакетов, созданного в лаборатории Лоренса Ливермора (Lawrence Livermore) Министерства энергетики США.
“Атака с подменой IP-адреса отправителя началась примерно в 14:09:32 по тихоокеанскому времени 25.12.94. Первые пакеты поступили от toad.com” (информация из журналов регистрации пакетов).
Каждая из приведенных команд finger, showmount и rpcinfo предназначена для сбора информации о системе UNIX. Если вы работаете в UNIX и давно не пользовались этими командами, то, возможно, стоит изменить имена хостов вашей сети на target, server и x-terminal и посмотреть, какая информация будет выдана в результате приведенных выше команд.
[root@toad /tmp]# finger @some.host.net [some.host.net]
Login Name TTY Idle When Where
chap Bill Chapman X1568 pts/6 3:11 Tue 17:26 picard
chap Bill Chapman X1568 console 8:39 Mon 14:44 :0
/usr/local export-hosts /home export-hosts
100000 3 udp 111 rpcbind
100 000 2 udp 111 rpcbind
100003 2 udp 2049 nfs
100024 1 udp 774 status
100024 1 tcp 776 status
100021 1 tcp 782 nlockmgr
100021 1 udp 784 nlockmgr
100005 1 tcp 1024 mountd
100005 1 udp 1025 mountd
100001 1 udp 1027 rstatd
100001 2 Udp 1027 rstatd
100008 1 udp 1028 walld
100002 1 udp 1029 rusersd
100011 1 udp 103 0 rquotad
10 0012 1 udp 1031 sprayd
10 0026 1 udp 1032 bootparam
Исследование сетевых трассировок
Во время атаки Митника ни один из перечисленных портов заблокирован не был. Поэтому хакер (toad, сот) получил информацию, которой он воспользовался на следующем этапе своей атаки. Вот цитата из отчета Цутому:
terminal. Обратите внимание на то, что в полученных SYN-пакетах начальные порядковые номера увеличиваются на 1 для каждого нового соединения. Это означает, что они не были сгенерированы системным стеком TCP/IP. В ответ на каждый пакет с флагами SYN и АСК отправляется RST-пакет, и в результате очередь соединений на х- terminal не заполняется”.
При анализе следующей трассировки tcpdump обратите внимание на то, что пакеты сгруппированы по три: SYN-пакет от apollo к x-terminal, SYN/ACK-пакет (второй этап процедуры установки TCP-соединения) и пакет с флагом RESET для предотвращения наводнения SYN-пакетами хоста x-terminal.
Русские Блоги
Синс наводнения и метод защиты
Во-первых, почему SYN наводнение приведет к вреду
Это должно быть опробовано из реализации стопки протокола TCP / IP операционной системы. Когда порт TCP открыт, порт находится в состоянии листинга, сохраняйте мониторинг сообщения SYN, отправленные в порт, после того, как клиент отправил сообщение SYN, вам необходимо назначить TCB для запроса (управление передачей) (блок управления передачей, Обычно TCB требует как минимум 280 байтов, и TCB является еще более 1300 байтами в некоторых операционных системах, и возвращает команду SAN ACK, а затем поворачивается к синхронизации, что является полуоткрытым, а некоторые операции. Система Может открыть до 512 полуоткрытых соединений (таких как ядро Linux2.4.420) на реализацию носка. Этот процесс показан ниже:
Как видно из вышеуказанного процесса, если на серверный порт отправляется большое количество пакета SYN, вы можете открыть большое количество полуоткрытых соединений, назначить TCB, потреблять большое количество ресурсов сервера и сделать нормальное Запросы на соединение не могут быть соответствующими. Потребление ресурсов инициатора нападения незначительна.
Во-вторых, как защитить наводнение SYN
Давайте посмотрим, какой зазор Syn Proplet, как показано ниже:
1.Direct Attack Атакующий инициирует атаку с использованием фиксированного исходного адреса, этот метод сводит к минимуму расход злоумышленника
2.Spoofing Attack Атаки запустили атаку с использованием исходного адреса изменений, этот метод требует от атаки постоянно изменять исходный адрес, на самом деле не потребляет
3.Distributed Direct Attack Такая атака в основном использует сеть зомби для атаки атации фиксированного источника.
Как видно из вышеуказанной картинки (слева), брандмауэр инициирует запрос SYN на внутренний сервер после подтверждения достоверности соединения, и все недействительные соединения не могут достичь внутреннего сервера справа. Способ проверки эффективности соединения в брандмауэре может быть другими технологиями, такими как SYN Cookie или SYN наводнения.
Одной из точек зрения, чтобы предотвратить необходимость обратить внимание на этот путь, заключается в том, что брандмауэр нуждается в прокси-сервере для пакетов данных, которые происходят для всего эффективного соединения, как показано ниже:
Поскольку последовательный номер, используемый в пакете SYN ACK, используется вместо номера последовательности, используемого в пакете SYN ACK, серийный номер C ‘, который имеет значение | C-C’ |, через каждое соответствующее сообщение о модификации серийного номера Когда используется брандмауэр.
Технология безопасной сброса TCP:
Это также способ Firewall Agent, и его рабочий процесс показан ниже:
Этот метод немедленно выдает безопасный пакет команд сброса после проверки подключения, что делает клиент подключаться, а брандмауэр SYN пакета, который появляется непосредственно релизы. Таким образом, брандмауэр не должен модифицировать серийный номер пакетов данных через брандмауэр. Это требует, чтобы стек протокола TCP клиента поддерживать соответствующие соглашения в RFC 793, и потому что клиент нуждается в двух процессах рукопожатия, время подключения будет расширено.
Рекомендации
1.Traffic Anomaly Detector and Guard (Riverhead Networks) FAQ
2. Принцип Cookie Syn и его реализация в ядре Linux
3.Defenses Against TCP SYN Flooding Attacks