Бе­зопас­ность телеком­муника­цион­ных устрой­ств — воп­рос острый, осо­бен­но в пос­леднее вре­мя. Ата­ки на инфраструк­туры про­вай­деров про­исхо­дят все чаще. В этой статье я рас­ска­жу, как мож­но защитить сетевое обо­рудо­вание от потен­циаль­ного втор­жения.

Это «VIP-ремикс» моей статьи Save Me, в которой я про­демонс­три­ровал спо­собы защиты локаль­ной сети от спу­финг‑атак. В этот раз я рас­ширю обзор механиз­мов безопас­ности обо­рудо­вания и опи­шу новые тех­ники защиты.

Все коман­ды я буду демонс­три­ровать на Cisco IOS. Одна­ко сами механиз­мы безопас­ности реали­зова­ны у всех вен­доров, отли­чия лишь в иерар­хии рас­положе­ния ком­понен­тов и син­такси­се.

 

Безопасность коммутационной матрицы CAM

CAM (Content Addressable Memory) — это ассо­циатив­ная память ком­мутато­ра, внут­ри которой хра­нит­ся таб­лица MAC-адре­сов и свя­зан­ных с ними пор­тов. Это нес­ложный механизм, одна­ко уже очень дав­но сущес­тву­ет хулиган­ский век­тор DoS-ата­ки, при которой ата­кующий перепол­няет CAM-таб­лицу с помощью рас­сылки Ethernet-кад­ров с ран­домизи­рующи­мися MAC-адре­сами источни­ка, что переби­вает ком­мутаци­онную мат­рицу. Очень извес­тный при­ем, но не упо­мянуть о нем я не могу.

За­щитить CAM-таб­лицы сво­их ком­мутато­ров очень прос­то, дос­таточ­но исполь­зовать Port Security. В нашем слу­чае эта нас­трой­ка под­ходит для огра­ниче­ния количес­тва MAC-адре­сов за пор­том ком­мутато­ра. Допус­тим, если нас­тро­им огра­ниче­ние в 20 MAC-адре­сов на пор­те, а ата­кующий нач­нет в эфи­ре флуд (каким‑нибудь macof), то к пор­ту будут уже при­менять­ся огра­ниче­ния — в зависи­мос­ти от нас­тро­енной полити­ки.

Вот при­мер кон­фигура­ции, при которой ста­вит­ся огра­ниче­ние в два MAC-адре­са, а при наруше­нии это­го огра­ниче­ния порт будет вык­лючен.

SaveMe(config)# interface range gX/X
SaveMe(config-if)# switchport port-security maximum <value>
SaveMe(config-if)# switchport port-security violation shutdown

При такой кон­фигура­ции в момент наруше­ния полити­ки MAC-адре­сов порт будет переве­ден в сос­тояние err-disabled. Что­бы нас­тро­ить авто­мати­чес­кое вос­ста­нов­ление пор­та из это­го сос­тояния, понадо­бит­ся еще одна коман­да:

SaveMe(config)# errdisable recovery interval 120
SaveMe(config)# errdisable recovery cause psecure-violation
 

Защита DHCP-сервера от атак истощения

DHCP Exhaustion — это сетевая ата­ка, поз­воля­ющая выз­вать у DHCP-сер­вера отказ в обслу­жива­нии. Ата­кующий выпол­няет рас­сылку лож­ных сооб­щений DHCPDISCOVER с ран­домны­ми MAC-адре­сами источни­ка, вынуж­дая DHCP-сер­вер отве­чать на каж­дый такой DISCOVER и выдавать ему адрес.

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

DHCP Snooping так­же поз­воля­ет нас­тро­ить Limit Rate: это параметр, отве­чающий за огра­ниче­ние количес­тва DHCP-сооб­щений на пор­те ком­мутато­ра. Обыч­но этот Limit Rate нас­тра­ивает­ся имен­но на пор­тах дос­тупа, куда под­клю­чают­ся конеч­ные стан­ции. Сами инже­неры Cisco рекомен­дуют исполь­зовать огра­ниче­ние не более 100 пакетов в секун­ду, одна­ко тут уже сто­ит отталки­вать­ся от осо­бен­ностей сво­ей инфраструк­туры и под­бирать зна­чение вруч­ную. Делай это акку­рат­но, что­бы слу­чай­но не сре­зать легитим­ный тра­фик.

SaveMe(config)# interface range f0/X-XX
SaveMe(config-if)# ip dhcp snooping limit rate <count>

Так­же сто­ит вклю­чить опцию про­вер­ки MAC-адре­са в кад­рах внут­ри DHCP-пакетов:

SaveMe(config)# ip dhcp snooping verify mac-address

Ес­ли на пор­те ока­жет­ся боль­ше DHCP-мес­седжей, он прос­то упа­дет в сос­тояние ERR-DISABLED, будет заб­локиро­ван на логичес­ком уров­не и адми­нис­тра­тору при­дет­ся самому под­нимать его из это­го сос­тояния. Одна­ко Cisco IOS пред­лага­ет авто­мати­чес­кое вос­ста­нов­ление работы пор­та, если его заб­локиро­вал какой‑нибудь механизм защиты. Вот при­мер коман­ды для авто­мати­чес­кого вос­ста­нов­ления пор­та пос­ле сра­баты­вания Limit Rate при DHCP Snooping:

SaveMe(config)# errdisable recovery cause dhcp-rate-limit

Еще обыч­но нас­тра­ивают тай­мер и зада­ют вре­мя, через которое порт вер­нется из сос­тояния ERR-DISABLED. Тут отталки­вай­ся от инфраструк­туры и сво­его видения:

SaveMe(config)# errdisable recovery interval <seconds>
 

Домены отказоустойчивости HSRP & GLBP

Это проп­риетар­ные про­токо­лы Cisco, пред­назна­чен­ные для резер­вирова­ния шлю­зов. Домены HSRP/GLBP могут под­вер­гнуть­ся ата­кам спу­фин­га, и ты к ним дол­жен быть готов. Есть два метода защиты.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.


  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    1 Комментарий
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии