fbpx
23.5 C
София

DDoS атаките през 2019 в детайли Експертен анализ и съвети

Най-четени

Калин Карабойчев
Калин Карабойчевhttps://www.kaldata.com/
Калин Карабойчев е управител на Kaldata.com - най-големият български IT портал. Повече от 15 години се занимава активно с разработка и популяризация на услуги в българския интернет.

Много се говори напоследък за DDoS атаки и как да се защитим от тях, но рядко можем да видим реалния мащаб на проблема. Затова и в Еволинк АД като експерти по мрежови технологии и информационна сигурност, направихме разбор на тенденциите, които се наблюдават в областта на разпределените мрежови атаки тип DDoS през изминалата година. По-долу ще видите детайлен технически анализ на някои комплексни и трудни за предотвратяване атаки, а в заключение са обобщени съвети за конкретни мерки за превенция и защита на корпоративните мрежи от DDoS.

Статистика и тенденции

Разполагайки с богата статистика за типа и естеството на DDoS атаките, направихме най-общо групиране на реално регистрираните от Еволинк DDoS атаки за 12 месеца – от ноември 2018 г., до октомври 2019 г. Групирали сме атаките според техния брой, според големината на атакуващия трафик и според броя на атакуващите пакети. Всяко от сеченията е представено за тримесечен период, за да могат да се проследят и тенденции в хронологичен порядък.

Групирането по типове атаки е на база десет от най-често срещаните категории. Представената статистика има за цел да илюстрира богатата динамика в разпределението на DDoS атаките, както и огромния обем зловреден трафик, който те причиняват. Тази статистика ни показва, че чрез филтрация на различни типове трафик, реално не можем да постигнем пълна защита.

Първо тримесечие (ноември 2018 – януари 2019)

Общият брой на атаките за този период е бил 4664, общото количество злонамерен трафик – 1.668 TB, а общият брой на пакети, измерени в Т-пакети – 1.4863.

Тип атака Брой атаки Процент от общия брой
1 ACK Flood 2101 45.0%
2 HTTPS Flood 1096 23.5%
3 Filter Attack 433 9.3%
4 DNS Query Flood 365 7.8%
5 UDP Flood 227 4.9%
6 Private IP 164 3.5%
7 HTTP Flood 68 1.5%
8 CLDAP 34 0.7%
9 SYN Flood 33 0.7%
10 UDP Fragment Flood 24 0.5%

 

Тип атака Трафик на атаката (KB) Процент от общия брой
1 UDP Flood 1341427472 79.4%
2 IP Bandwidth Overflow 194558297 11.5%
3 CLDAP 58542326 3.5%
4 DNS Query Flood 21751182 1.3%
5 HTTPS Flood 16492153 1.0%
6 HTTP Flood 16129617 1.0%
7 UDP Fragment Flood 15010573 0.9%
8  UDP Fragment Abnormal 10294896 0.6%
9 SSDP_Amplification_Attack 5915563 0.4%
10 DNS Reply Flood 4695616 0.3%

 

Тип атака Брой пакети от атаката Процент от общия брой
1 UDP Flood 927053440 58.1%
2 DNS Query Flood 194746240 12.2%
3 HTTPS Flood 133455104 8.4%
4  IP Bandwidth Overflow 130569571 8.2%
5 HTTP Flood 110615859 6.9%
6 CLDAP 39010176 2.4%
7 SSDP_Amplification_Attack 16508288 1.0%
8 UDP Fragment Flood 12388224 0.8%
9 UDP Fragment Abnormal 11085056 0.7%
10 SYN Flood 6673536 0.4%

 

Второ тримесечие (февруари 2019 – април 2019)

Общият брой на атаките за този период е бил 13 554, общото количество злонамерен трафик – 1.94 TB, а общият брой на пакети, измерени в Т-пакети – 2.07.

Тип атака Брой атаки Процент от общия брой
1 Packet Length Filter 6526 48.1%
2 ACK Flood 3057 22.6%
3 Filter Attack 1124 8.3%
4 HTTPS Flood 941 6.9%
5 DNS Size Abnormal 739 5.5%
6 Private IP 435 3.2%
7 DNS Query Flood 243 1.8%
8 UDP Flood 133 1.0%
9 FIN/RST Flood 80 0.6%
10 HTTP Flood 65 0.5%

 

Тип атака Трафик на атаката (KB) Процент от общия брой
1 UDP Flood 1186598872 59.3%
2 UDP Fragment Flood 294147379 14.7%
3 DNS Reply Flood 207193111 10.4%
4 CLDAP 71936632 3.6%
5 QUIC 60329215 3.0%
6 UDP Fragment Abnormal 54974611 2.7%
7 HTTPS Flood 30754169 1.5%
8 DNS Size Abnormal 21586672 1.1%
9 NTP Amplification 15884731 0.8%
10 DNS Query Flood 14434434 0.7%

 

Тип атака Брой пакети от атаката Процент от общия брой
1 UDP Flood 817308416 37.7%
2 HTTPS Flood 350565376 16.2%
3 UDP Fragment Flood 203012096 9.4%
4 SYN Flood 157567104 7.3%
5 DNS Reply Flood 140070272 6.5%
6 FIN/RST Flood 139293440 6.4%
7 DNS Query Flood 129278848 6.0%
8 CLDAP 47905536 2.2%
9 UDP Fragment Abnormal 41096320 1.9%
10 QUIC 40319488 1.9%

 

Трето тримесечие (май 2019 – юли 2019)

Общият брой на атаките за този период е бил 69 529, общото количество злонамерен трафик – 4.1 TB, а общият брой на пакети, измерени в Т-пакети – 7.79.

Тип атака Брой атаки Процент от общия брой
1 D_Length 34309 49.3%
2 DNS Size Abnormal 23613 34.0%
3 ACK Flood 3836 5.5%
4 HTTPS Flood 2809 4.0%
5 Filter Attack 1777 2.6%
6 Private IP 1095 1.6%
7 FIN/RST Flood 458 0.7%
8  IP Length 402 0.6%
9 HTTP Flood 305 0.4%
10 UDP Flood 260 0.4%

 

Тип атака Трафик на атаката (KB) Процент от общия брой
1 CLDAP 2538544509 58.2%
2 UDP Fragment Abnormal 649887350 14.9%
3 QUIC 319244817 7.3%
4 FIN/RST Flood 189895017 4.4%
5 UDP Flood 108199778 2.5%
6 ACK Flood 83973086 1.9%
7 DNS Size Abnormal 81752657 1.9%
8 UDP Fragment Flood 58441197 1.3%
9 HTTPS Flood 58244317 1.3%
10 HTTP Flood 55778506 1.3%

 

Тип атака Брой пакети от атаката Процент от общия брой
1 FIN/RST Flood 2356763904 28.7%
2 CLDAP 1693330688 20.6%
3 ACK Flood 1020098176 12.4%
4 HTTPS Flood 619644032 7.5%
5 Other Abnormal 520355840 6.3%
6 QUIC 496791040 6.0%
7 UDP Fragment Abnormal 464935040 5.7%
8 HTTP Flood 297436672 3.6%
9 UDP Flood 214685056 2.6%
10 D_Length 143557120 1.7%

 

Четвърто тримесечие (август 2019 – октомври 2019)

Общият брой на атаките за този период е бил 133 378, общото количество злонамерен трафик – 1.118 TB, а общият брой на пакети, измерени в Т-пакети – 5.2.

Тип атака Брой атаки Процент от общия брой
1 D_Length 86880 65.1%
2 DNS Size Abnormal 29312 22.0%
3 HTTPS Flood 4717 3.5%
4 ACK Flood 3480 2.6%
5 Filter Attack 3443 2.6%
6 HTTP Flood 1734 1.3%
7 SYN Flood 1273 1.0%
8 FIN/RST Flood 1187 0.9%
9 Private IP 999 0.7%
10 UDP Flood 77 0.1%

 

Тип атака Трафик на атаката (KB) Процент от общия брой
1 DNS Size Abnormal 212926678 17.9%
2  UDP Abnormal 189274153 15.9%
3 HTTP Flood 166542343 14.0%
4 FIN/RST Flood 124499339 10.5%
5 UDP Flood 123482676 10.4%
6 CLDAP 97128928 8.2%
7 UDP Fragment Abnormal 83082796 7.0%
8 QUIC 63530201 5.3%
9 HTTPS Flood 57418585 4.8%
10 D_Length 18489009 1.6%

 

Тип атака Брой пакети от атаката Процент от общия брой
1 UDP Flood 1670480128 30.9%
2 FIN/RST Flood 1536034176 28.4%
3 HTTP Flood 699726188 12.9%
4 HTTPS Flood 612374400 11.3%
5 D_Length 177999488 3.3%
6 UDP Abnormal 175509376 3.2%
7 DNS Size Abnormal 150610432 2.8%
8 QUIC 71598848 1.3%
9 CLDAP 64825600 1.2%
10  UDP Fragment Abnormal 55522560 1.0%

 

Следната графика представя визуално разпределението на регистрираните от Еволинк DDoS атаки за едногодишен период:

Един допълнителен показател, по който често групираме DDoS атаките освен по брой, големина на трафика и брой на пакетите, е тяхната продължителност. Нашата статистика за последната година показва следните параметри за средна продължителност на DDoS атаките (данните са групирани само за по-големи атаки с обеми над 100 000 пакета):

 

Времеви интервал на атаките Общо количeство Процент от общия брой
Атаки под 10 мин. 13 909 86.0%
Атаки между 10 и 30 мин. 1 737 10.7%
Атаки между 30 и 60 мин. 328 2.0%
Атаки над 60 мин. 193 1.2%

 

Таблицата ясно показва преобладаващо мнозинство на атаките с кратка продължителност, но това e подвеждаща констатация. В повечето случаи на DDoS атака, ние регистрираме постоянно променящи се вектори и всъщност една масирана атака се реализира чрез множество атаки, които преминават от един тип в друг и поради тази причина са отчетени като отделни събития от мониторинг системите. Атаките не само променят типа си, за да затруднят евентуалното им филтриране, но често пъти променят и своята дестинация, като целят други хостове по пътя на обекта на атака или в съседство с него, които може да не са предпазени, но да доведат до срив в инфраструктурата и по този начин отново да саботират целта.

Сравнението на статистика за броя атаки на годишен период спрямо предходни години показва постоянна тенденция за увеличение. Според публични анализи на други водещи международни  компании в областта на информационната сигурност за периода 2017-2018 г. всяка пета компания е била подложена на DDoS атака поне веднъж. Прогнозите за предстоящата 2020 г. е всяка трета компания да бъде подложена на този вид електронен тероризъм.

От показаните данни ясно се вижда увеличаване както на броя на дистрибутираните атаки, така и на количеството на пакетите и обема на трафика. Направените наблюдения са базирани само на системите за мониторинг в мрежата на Еволинк, където обектите са юридически лица и държавни организации с най-широк спектър профил на дейност. Интензитетът на DDoS атаки към дадена организация зависи от много фактори – популярността на организацията, броя потребители, които обслужва дадена онлайн услуга или конкурентната среда, в която оперира. Фактор за атака може да бъде и бизнес цикъла на организацията, например при планирани и широко анонсирани промоции на онлайн магазини. Рекламата неизбежно привлича и зложелатели, които биха искали да навредят точно в момента, в който дадена компания цели да извлече най-големи дивиденти. Неслучайно в представената статистика периодите не си съответстват един с друг по стойности.

Комплексни атаки

Спомняме си времето, когато DDoS атака само по един протокол можеше да има значителни последствия, като например Ping of Death. Такъв тип атаки можеха лесно да се филтрират с ограничаване на ICMP трафика в мрежата на Интернет доставчика. В днешно време DDoS атаките са в повечето случаи серия от различни типове атаки с различни протоколи, интензивност и цели. Нещата се усложняват допълнително с прилагането на така наречените Amplification DDoS атаки. Това са типове атаки, при които с относително малки манипулирани заявки към легитимни сървъри в Интернет може да се предизвика лавина от реципрочни пакети към обекта на атаката. Използват се уязвимости в стандартните интернет протоколи, които да умножат многократно нежелания трафик, който се стоварва върху атакувания обект. Кратка извадка от www.us-cert.gov показва фактора на умножение на трафика за няколко популярни интернет протокола, които се използват за Amplification DDoS атаки:

Колкото по-голям е амплификационният фактор, толкова по-разрушителна е съответната DDoS атака. Със сигурност можем да твърдим, че една атака ще бъде толкова силна и успешна, колкото е планирал нейния „дизайнер“. Една от обичайните първи стъпки при проектирането на атаките е сканиране на атакуваната мрежа за отворени портове чрез NMAP или друг метод за наблюдение на комуникацията между два или повече крайни хоста. Когато се цели разрушителен ефект, често пъти се прилагат някои от посочените по-горе протоколи. В допълнение обаче при първоначалното сканиране, създателите на атаката опитват да открият възможно най-много слабости във възможно най-много съпътстващи устройства по пътя, включващи защитни стени и рутери. Впоследствие се прилагат атаки с разнороден брой пакети, различен интензитет, поредност и честота, насочени както към атакувания сървър, така и към прилежащите мрежови устройства.

Анализ на реална DDoS атака

Ето как изглежда една реална DDoS атака, погледната през системите за мониторинг и защита на Еволинк и допълнителен детайлен анализ на IP комуникацията:

Един от елементите на атаката, който разглеждаме по-детайлно, е регистрираният SYN Flood. В детайлния анализ на трафика по-долу се вижда, че той е директно насочен към порт 80. Този порт в 99% процента от случаите е отворен, тъй като е стандартният порт, на който отговарят web сървърите.

 

За опитен мрежов специалист правят впечатление две стойности в тази извадка. Първата е параметърът TSecr=0. Той показва, че в тази комуникация не е имало предхождащ ACK пакет от атакувания хост, който изисква TCP протокола. Следователно уверено можем да класифицираме този трафик като целенасочен зловреден трафик. За отбелязване е и стойността на MSS, която гравитира в максимално допустимите стойности между 1400 и 1460.

По-долу пък е представен анализ на параметрите, зададени в един сегмент.

Множителят на зададената стойност на сегмента показва отново много високи стойности от 65 535 x 4 096. Получената стойност може да бъде видяна в ACK в отговор от засегнатата страна. Така изградената атака няма за цел да натовари хардуерните ресурси (сървъра) на жертвата, а да запълни Интернет канала до този сървър. По този начин се блокира достъпът за всички други легитимни заявки и сървъра става откъснат от Глобалната мрежа.

Друг съществен вектор на разглежданата атака е DNS Reply Flood. Това е специфичен тип атака от групата на рефлекторните DDoS атаки. Тя се реализира като се изпращат DNS заявки към легитимни DNS сървъри в Интернет, но в заявките е подменен IP адресът на изпращача с IP адреса на обекта на атаката. DNS сървърите съответно изпращат отговори до посочения IP адрес и за жертвата изглежда, че е затрупан с трафик от съвсем реални и легитимни хостове.

Илюстрация на такъв тип трафик:

Така изглежда IP комуникацията за атакувания IP адрес. Едно от подозрителните неща в тази комуникация е, че се получават само пакети от тип „отговор на заявка“ – rеsponse от DNS сървъри.

Вторият елемент, идентифициращ атака, е параметърът тип ANY във всички отговори от DNS сървърите, поставен с цел да се реализира максимално натоварване на комуникационния канал. Инициаторът на атаката е поставил параметъра за случайно генерирани заявки.

В допълнение атакуващият е приложил още един елемент, водещ до претоварване на мрежовите връзки. В хедъра (IP packet header) на пакетите е поставен флаг с указание, че пакетът е фрагментиран и е серия от пакети, които ще последват първия. По този начин се подава указание към атакуваното устройство да приеме последващите заявки.

Друг вектор на комплексната атака е отбелязан като Single IP address bandwidth overflow. Тук атакуващият експлоатира хипотезата, че в мрежата на жертвата се прилага политика за разпределение на общия Интернет капацитет поравно между всички адреси в мрежата. Например в мрежа с 254 крайни хоста, която има общ капацитет от 512Mbps, не е рядка практика да се прилага разпределение на капацитета. Чрез така наречения IP shaping администраторите на мрежата поделят по равно капацитета, така че всеки хост би получил около 2Mbps. В конкретния случай атакуващият е използвал протокол CLDAP (Connection-less Lightweight Directory Access Protocol), който дава възможност за голяма мултипликация на рефлекторната атака и бързо препълване на Интернет канала на жертвата при наличие на IP shaping за поделяне на капацитета в крайната мрежа.

Пореден вектор на разглежданата комплексна атака е HTTP Flood, който се причислява към атаките на Layer 7, т.е. атаки на приложно ниво, а не на протоколно ниво, както по-горе разглежданите.

Извадката от комуникацията ни показва, че се използват множество заявки от тип GET. Чрез този GET flood не се натоварват съществено процесорните ресурси на потърпевшата страна и атаката би могла да се сметне за безобидна. Реалната цел на тази атака е да резервира максимално количество сесии към атакуван web сървър и по този начин да се изчерпи техния капацитет, което ще направи сървъра недостъпен за легитимните си потребители. В конкретния случай чрез множество GET заявки е извличано изображение от web сървъра, което за различни браузъри изглежда така:

Firefox:   image/webp,*/*

Chrome:   image/webp,image/apng,image/*,*/*;q=0.8

В конкретната атака го регистрираме в следната извадка от комуникацията:

Като обобщение на анализа на атаката се налага изводът, че чрез нея се е целяло да се запълни целия наличен Интернет капацитет на жертвата, като по този начин се попречи на легитимния трафик. Приложени са няколко различни метода на атака, които да подсигурят успеха й. Приложени са атаки тип flood, за да се запълнят комуникационните канали. В допълнение е направен опит да се запълнят максимално възможния брой TCP сесии на атакувания сървър. Финално е използвана и хипотезата за препълване на капацитета на отделен IP адрес в мрежата, ако в нея се прилагат вътрешни правила за контрол на трафика.

Препоръки за защита

Представените до момента детайлни извадки от трафика и IP комуникацията са разглеждани след реалния край на атаката. Изключително трудно е да се правят такива технически анализи в реално време, затова в случай на DDoS атака трябва да се действа незабавно и напълно автоматизирано. Това естествено се случва през специализирани хардуерни и облачни платформи, които са способни да правят автоматизиран и детайлен анализ с производителност десетки милиони пакети в секунда. Ръчният анализ е необходим като постоянен последващ процес за подобряване на автоматизираните защити и залагане на нови правила и филтри в тях.

Даже при отсъствието на специализирани платформи за защита има някои мерки за сигурност, които организациите могат да прилагат за превенция от DDoS атаки. Важно е да се отбележи, че всяка организация има съществено предимство пред източниците на атака, тъй като тя много по-добре от всеки друг познава своята инфраструктура и своите хардуерни и софтуерни ресурси.

Добра практика е прилагането на IP access-lists на граничните мрежови устройства, които да оформят общите граници на комуникация. Подходящи такива са:

  • Забрана на входящи заявки от описаните по RFC 1918 частни IP адреси
  • Забрана на достъпа от DNS и NTP сървъри, които не са стриктно проверени и предварително одобрени
  • Забрана на IP достъпа до всички ресурси от непроверено IP адресно пространство според препоръките на IETF в RFC 2827

Много добра практика е и създаването на правила за разделяне на ресурсите и прилагане на Quality of service на базата на изградена сесия или на протоколно ниво.

Трябва да се има предвид, че при масивна DDoS атака всяко устройство на пътя между източника и крайната дестинация на атаката е потенциално слабо звено. То може да се претовари и предизвика прекъсване на услугата още преди самата DDoS атака да е достигнала своята дестинация. Така атаката става успешна, макар и чрез индиректно саботиране на своята цел. За превенция в такива случаи е най-удачно защитата да се изнесе извън мрежата на организацията – към Интернет доставчика.


Коментирайте статията в нашите Форуми. За да научите първи най-важното, харесайте страницата ни във Facebook, и ни последвайте в Telegram и Viber или изтеглете приложението на Kaldata.com за Android, iOS и Huawei!

Нови ревюта

Подобни новини