Безопасность и защита DHCP от атак

Защита DHCP от атак

В предыдущей статье мы рассмотрели техники атак на DHCP. Те­перь поговорим о тех­нологиях безопас­ности, пре­дот­вра­щающих ата­ки на DHCP.

Еще по теме: Истощение и подмена DHCP-сервера

Защита DHCP от атак

Защиту DHCP условно мож­но поделить на два век­тора: защита от DHCP Starvation и защиту от DHCP Spoofing.

Защита DHCP

В боль­шинс­тве сво­ем предотвращение атак на DHCP-про­токол берет на себя тех­нология DHCP Snooping, а в качес­тве обя­затель­ного допол­нения к ней сто­ит исполь­зовать Port Security. Обе тех­нологии защиты DHCP при­меня­ются на ком­мутато­рах.

Trusted- и Untrusted-порты

За­быть о вне­зап­ном появ­лении в сети под­дель­ного сер­вера DHCP поможет кон­цепция доверен­ных и недове­рен­ных пор­тов. Доверен­ный порт раз­реша­ет пересыл­ку DHCP-сооб­щений от сер­вера. Под­дель­ный DHCP-сер­вер не смо­жет пред­ложить кли­ентам свои лож­ные парамет­ры отправ­кой таких сооб­щений, если будет находить­ся за ненадеж­ным пор­том.

До­верен­ные пор­ты — это те, которые нап­рямую под­клю­чены к DHCP-сер­веру или которые «смот­рят» в его сто­рону. Соот­ветс­твен­но, недове­рен­ные — это все осталь­ные. В нашей лабора­тор­ной сети доверен­ным пор­том будет толь­ко один — G0/1.

Trusted- и Untrusted-порты

Пос­ле вклю­чения DHCP Snooping все пор­ты по умол­чанию ста­новят­ся недове­рен­ными. Поэто­му нуж­но явно ука­зать ком­мутато­ру доверен­ный порт. Но перед этим гло­баль­но вклю­чим DHCP Snooping и ука­жем, в каком VLAN она будет работать. Кон­фигура­ция ком­мутато­ра у меня по умол­чанию и все пор­ты при­над­лежат пер­вому VLAN.

Защита DHCP

В качес­тве тес­та вык­лючим наш DHCP-сер­вер, отка­жем­ся от выдан­ного им адре­са и попыта­емся получить IP-адрес от под­дель­ного DHCP-сер­вера.

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

Защититься от атак DHCP

А все потому, что ком­мутатор дро­пает сооб­щения DHCPOFFER на ненадеж­ном пор­ту, из‑за чего кли­ент и не видит лож­ное пред­ложение.

Защититься от атак DHCP

Limit Rate

Еще одна очень полез­ная фун­кция DHCP Snooping — огра­ниче­ние на отправ­ку DHCP-сооб­щений. Это огра­ниче­ние допус­кает отправ­ку через порт ком­мутато­ра опре­делен­ного количес­тва DHCP-тра­фика в секун­ду.

Что­бы задей­ство­вать эту воз­можность, выберем весь диапа­зон ненадеж­ных пор­тов и уста­новим огра­ниче­ние в десять пакетов в секун­ду. Cisco рекомен­дует исполь­зовать не более 100 пакетов в секун­ду, но для нашего тес­тового стен­да хва­тит и десяти. Важ­но не уре­зать безобид­ный тра­фик от кли­ентов.

Защита DHCP Limit Rate

Сно­ва вре­мя экспе­римен­тов: запус­тим DoS-рас­сылку сооб­щений DHCPDISCOVER и пос­мотрим, что будет про­исхо­дить. Дол­го ждать не при­ходит­ся: мгно­вен­но при­лета­ет кон­соль­ный лог и уве­дом­ляет нас, что на пор­те F0/2 было получе­но десять DHCP-пакетов и порт перево­дит­ся в сос­тояние err-disable. Порт F0/2 упал. Далее тре­бует­ся вме­шатель­ство адми­нис­тра­тора, что­бы вос­ста­новить работос­пособ­ность пор­та.

Защита DHCP Limit Rate

Limit Rate полезен тем, что не дает хакеру выпол­нить отказ в обслу­жива­нии или быс­тро «выж­рать» пул адре­сов, отправ­ляя боль­шое количес­тво DHCP-зап­росов.

Verify MAC-Address

Фун­кция про­вер­ки MAC-адре­са по умол­чанию активна при вклю­чен­ном DHCP Snooping. Но если по каким‑то при­чинам она неак­тивна, то вот син­таксис для вклю­чения.

Защита DHCP Snooping Verify MAC-Address

Я акценти­ровал вни­мание на поле CHADDR заголов­ка DHCP и MAC-адре­са источни­ка Ethernet-заголов­ка и говорил, что при нор­маль­ном вза­имо­дей­ствии кли­ента и сер­вера зна­чения в этих полях иден­тичны. При вклю­чен­ной фун­кции Verify MAC-Address ком­мутатор про­веря­ет эти два поля и, если MAC-адре­са раз­личны, дро­пает их.

Кста­ти, для про­вер­ки MAC-адре­са исполь­зуют­ся ресур­сы цен­траль­ного про­цес­сора мар­шру­тиза­тора, что, конеч­но же, в разы мед­леннее, чем при обра­бот­ке пакетов ASIC-мик­росхе­мами. При нор­маль­ной работе сети ощу­тимо это никак не ска­зыва­ется, но давайте смо­дели­руем такую ситу­ацию: была запуще­на ата­ка на исто­щение DHCP, при которой генери­рует­ся огромное количес­тво пакетов DHCPDISCOVER. Каж­дый из них будет про­верять­ся про­цес­сором ком­мутато­ра на соот­ветс­твие MAC-адре­сов.

Безопасность DHCP Snooping Verify MAC-Address

В течение минуты пос­ле начала ата­ки цен­траль­ный про­цес­сор ком­мутато­ра был заг­ружен на 95% из‑за огромно­го количес­тва пакетов DHCP, которые он дол­жен обра­ботать. Имен­но для пре­дот­вра­щения таких ситу­аций и сто­ит при­менять фун­кцию Limit Rate — порт прос­то уйдет в down, ког­да допус­тимое количес­тво пакетов в секун­ду будет пре­выше­но.

Port Security

Пос­ледняя фун­кция защиты ком­мутато­ра, о которой я хочу рас­ска­зать. Она не отно­сит­ся к тех­нологии DHCP Snooping, но игра­ет боль­шую роль в защите сети от атак на DHCP-про­токол.

Port Security поз­воля­ет ука­зать MAC-адре­са хос­тов, которым раз­решено переда­вать дан­ные через порт. Для про­вер­ки исполь­зует­ся MAC-адрес источни­ка в Ethernet-заголов­ке, и в резуль­тате будет при­нято решение о про­пус­ке через порт.

Нас­тро­им все ненадеж­ные пор­ты на динами­чес­кое выучи­вание толь­ко одно­го MAC-адре­са с сох­ранени­ем их в текущую кон­фигура­цию ком­мутато­ра. Режим реаги­рова­ния на наруше­ние пра­вил безопас­ности ука­жем shutdown — отклю­чение пор­та. Но перед этим пор­ты нуж­но перевес­ти в режим Access.

Безопасность DHCP Port Security

Ес­ли же сно­ва запус­тить флуд сооб­щени­ями DHCPDISCOVER, где в каж­дом Ethernet-кад­ре зна­чение MAC-адре­са источни­ка будет уни­каль­ным, то порт мгно­вен­но перей­дет в режим err-disable (пря­мо как при Limit Rate), так как будет наруше­но соз­данное нами пра­вило запоми­нания толь­ко одно­го раз­решен­ного MAC-адре­са на пор­те ком­мутато­ра.

Безопасность DHCP Port Security

Мож­но пос­мотреть таб­лицу, которую ведет ком­мутатор, где отоб­ражено соот­ветс­твие заучен­ных MAC-адре­сов на каж­дом интерфей­се.

Безопасность DHCP Port Security

Ис­тощить DHCP-сер­вер, изме­няя MAC-адрес сетевой пла­ты, не пред­став­ляет тру­да для хакера. Да, дос­таточ­но дол­го, но резуль­татив­но. А при вклю­чен­ной защите пор­та на ком­мутато­ре такая так­тика будет обре­чена на про­вал.

Опи­сан­ные в статье тех­нологии защиты сети от атак на про­токол DHCP по отдель­нос­ти не ста­новят­ся неп­реодо­лимой сте­ной для ата­кующе­го. Поэто­му имен­но их ком­плексное при­мене­ние даст дол­жную защиту DHCP.

ПОЛЕЗНЫЕ ССЫЛКИ:

ВКонтакте
OK
Telegram
WhatsApp
Viber

Один комментарий

  1. h

    Отличная статья. Правда мало написано про Verify MAC-Address.

    При включенной опции Verify MAC-Address коммутатор проверяет в проходящем через него пакете DHCP Request поле chaddr (Client Hardware Address) с mac-адресом источника кадра. Если они отличаются, то коммутатор отбрасывает такой пакет. Сначала не понял, от какой атаки может защитить эта опция, т.к. в кадре не запрещено указывать любой mac-адрес источника и любые данные.

    Эта опция по сути спасает от компьютера с вредоносным ПО, подключенного к порту. Любому прогеру не составляет труда написать программу, которая формирует DHCP пакеты и отправляет в сеть, но присвоить отправляемым кадрам разный mac-адрес может составить большую проблему. Для этого нужно программно уметь менять mac-адрес сетевого адаптера. Вот здесь хакеру придется попыхтеть. В сети вроде есть рабочий программный способ смены mac-адреса, но сам не интересовался и не проверял.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *