DDoS Mitigation

DDoS Mitigation

Разработили сме няколко механизма (In-line Classification & QoS, DDoS Packet Stamp и Blackholing), които да подпомагат Участниците в Публичния пиъринг при евентуални Volumetric DDoS атаки към техните мрежи.

1. In-line Classification & QoS

Основната ни цел е да намалим до възможния минимум, вероятността, в следствие на DDoS атака да бъде загубен полезен трафик.

Техническата реализация e следната:
На вход: Classification
Всеки пакет, който влиза в мрежата на BIX.BG се анализира в реално време, на база множество сложни правила и в случай, че изглежда като някоя от познатите ни към момента DDoS атаки, се премества в специална опашка (DDoS Queue).

На изход: QoS
На изхода на всеки един порт са настроени с различни приоритети няколко опашки, като принципът е следния: приоритетно се обслужва мултикаст трафика (ако има такъв), след него е полезния пиъринг трафик и накрая e DDoS опашката. Резултатът, е че:

  • когато няма DDoS атака (или има малка) и капацитета на порта е достатъчно голям, за да поеме целия трафик, се обслужват всички опашки и няма загуба, на каквито и да са пакети;
  • при голяма DDoS атака, когато трафика, който се опитва да излезе през порта стане по-голям от капацитета на самия порт (т.е. загубата на пакети е неизбежна), мултикаст трафика и полезния пиъринг се обслужват без загуби (понеже са с приоритет), а от DDoS опашката се обслужва само част от трафика (колкото свободен капацитет в порта е останал).

Основните предимства на този подход са:

  • работи постоянно и при евентуална атака механизма се задейства незабавно – т.е. няма никакво загубено време за разпознаване, прерутиране и т.н.;
  • работи напълно идентично за всички Участници в публичния пиъринг, без значение на каква скорост са свързани.

Недостатъците са:

  • не може с абсолютна сигурност да гарантира разпознаване на всички видове атаки - основно нови типове атаки (Zero-day DDoS Attack);
  • има минимална вероятност някакъв полезен трафик да бъде класифициран в DDoS Queue, но това реално е без значение когато няма атака към Участника и порта му е в състояние да обслужи целия трафик.

2. DDoS Packet Stamp

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

В тази връзка всички пакети, които са били разпознати на фазата на Classification като DDoS, се маркират на изхода към Участниците съгласно IEEE P802.1p с Priority Code Point (PCP) = 1.

НЕ препоръчваме на Участниците да филтрират целият маркиран трафик, защото е възможно да има и полезен трафик, класифициран като DDoS.

Удачен подход според нас например е:

  • да се натрупа статистика за обема на DDoS трафика за по-дълъг период от време, като се отчете максималната стойност при регулярен трафик (без атаки);
  • по възможност още на първото устройство, на което е терминирана връзката към BIX.BG, да се сложи десетократно по-голямо ограничение за маркирания трафик;
  • систематично да се следи дали има дропове на пакети при регулярен трафик, и ако се налага да се коригира стойността на ограничението.

3. Blackholing (BGP community 65535:666)

Възможност за блокиране на трафика към опреден префикс (IP адрес или мрежа), като сигнализацията е чрез BGP4 анонс през вече изградените сесии с Route Servers (RS). Функционалността се отнася само за трафик по VLAN за Публичен пиъринг.
RS приемат префикси маркирани с BLACKHOLE (BH) community 65535:666, като ограниченията за дължините на префиксите са:

  • IPv4: /25 и по-големи (до /32);
  • IPv6: /49 и по-големи (до /128).

Route Servers не преанонсират префикси маркирани с BH (без значение от дължината им) на другите Участници, като за да сработи механизма е достатъчен анонс само на единия от RS-ите.

В рамките на 2 секунди след получаване на валиден BH анонс, BIX.BG блокира на изход към Участника (от гледна точка на Участника е негов вход) целия трафик с Destination IP адрес/и получения по BGP префикс. В случай че Участника има повече от една свързаности за Публичен пиъринг блокирането ще бъде приложено за всичките му свързаности.

Обръщаме внимание че блокирането на трафика се осъществява в мрежата на BIX.BG, на изход в посока мрежата на Участника, което има следните принципни разлики спрямо класическите реализации в повечето IXP (блокиране на вход, чрез манипулиране на маршрутизацията към BH префикса):

  • Участници, които не искат да използват тази възможност няма нужда да променят нищо в настройките си;
  • Участници, които използват Blackholing не зависят от готовността на останалите да приемат BH анонсите им;
  • Няма никакъв риск от блокиране на трафик в следствие на BH анонс получен от друг Участник (в повечето имплементации блокирането е на вход и когато два участника имат право да анонсират една и съща мрежа съществува реален риск например единия да анонсира /32 с BH, в резултат на което да спре трафика с Destination същия /32 и към другия участник);
  • Blackholing функционира без значение дали за маршрутизирането между тях Участниците използват Route Servers или са изградили частна BGP сесия.