Сетевая безопасность: IOS Firewall — Content-Base Access-Control (CBAC)

В предыдущей заметке мы познакомились с рефлексивными списками доступа Reflexive ACL, позволяющими реализовать базовые функции межсетевого экрана с отслеживанием состояний сессий — Stateful Firewall.

Дальнейшим развитием этой технологии стал CBAC, который представляет собой уже полноценный межсетевой экран и поддерживает инспекцию протоколов прикладного уровня.

Идея CBAC состоит в инспекции информации в проходящем через маршрутизатор трафике, специфичной для каждого из поддерживаемых протоколов и разрешение ответного трафика в списке доступа ACL, работающем в противоположном направлении.

CBAC

Согласитесь, это очень похоже на Reflexive ACL, но только в CBAC выполняется более глубокая инспекция, затрагивающая не только общие протоколы TCP/UDP/ICMP, но и протоколы прикладного уровня, такие как FTP, HTTP, ESMTP, DNS и многие другие.

CBAC может работать как в маршрутизируемом режиме (routed), так и в прозрачном (transparent) режиме бриджа. А также с протоколами IPv4 и IPv6, но для IPv6 есть определенные ограничения (поддерживается только FTP).

Настройка CBAC состоит из двух частей:

  • Создание правил инспекции требуемых протоколов и применение их на интерфейсе в направлении начального потока пакетов. Обычно это поток пакетов их доверенной сети в не-доверенную. Например, из локальной сети LAN в Интернет.
  • Создание списка доступа ACL и применение его в направлении, противоположном начальному потоку пакетов. Как правило, это поток пакетов из не-доверенной сети в доверенную, например, из Интернет в LAN.

Тут тоже прослеживается аналогия с рефлексивными списками доступа. Но, в отличии от них, в список доступа ACL не добавляются динамические правила.

Вместо этого, на пути следования пакетов через маршрутизатор вставляется специальное правило обхода списка доступа ACL для ответного трафика. И он пройдет через маршрутизатор, даже если в самом ACL и стоит для него запрет.

Привила инспекции и список доступа ACL могут быть как на одном и том же интерфейсе (направление действия in/out), так и на двух различных (направление действия in/in).

Движок инспекции протоколов CBAC может оповещать о нарушениях в работы инспектируемых протоколов и попытках атак.

CBAC также позволяет вести простейший подсчет трафика — количество переданных и принятых байт, длительность сессий. Можно включить регистрацию такой информации в syslog.

По умолчанию, CBAC не работает с трафиком, генерируемым самим маршрутизатором и трафиком, адресованным к нему. Но это можно включить с помощью ключевого слова router-traffic в правилах инспекции.

В приведенном примере производится инспекция трафика из локальной сети LAN в Интернет, включая общие протоколы транспортного уровня TCP/UDP/ICMP и протоколы прикладного уровня HTTP/DNS/FTP/ESMTP.

Также инспектируется не только транзитный трафик, но и TCP/UDP/ICMP к/от самого маршрутизатора.

Список доступа INBOUND_ACL запрещает все входящие соединения. Но механизм CBAC пропустит все ответные входящие соединения, инициируемые из локальной сети.

Более того, для сессий FTP в активном режиме будет автоматически открыт порт передачи данных, даже несмотря на то, что он не был известен заранее.

Правило инспекции с названием CBAC применяется на внешнем интерфейсе GigabitEthernet0/0 в исходящем направлении, а список доступа INBOUND_ACL на том же интерфейсе, но уже во входящем направлении.

Пример конфигурации:

R1:
ip inspect name CBAC udp router-traffic
ip inspect name CBAC tcp router-traffic
ip inspect name CBAC icmp router-traffic
ip inspect name CBAC http
ip inspect name CBAC dns
ip inspect name CBAC ftp
ip inspect name CBAC esmtp
!
ip access-list extended INBOUND_ACL
 deny ip any any
!
interface GigabitEthernet0/0
 ip inspect CBAC out
 ip access-group INBOUND_ACL in

Подводя итоги, хочу сказать, что в принципе CBAC можно рассматривать в качестве полноценного межсетевого экрана.

Но есть один маленький нюанс, он более не развивается. Дальнейшие разработки CBAC остановлены и теперь весь его новый функционал и возможности представлены в технологии-приемнике Zone- Based Policy Firewall (ZBPF).

Более подробно это будет разбираться в практическом курсе по настройке современных межсетевых экранов на базе маршрутизаторов с Cisco IOS – Zone-Base Policy Firewall.

Курс представляет собой рабочую тетрадь Workbook, где даются все необходимые теоретические основы для изучения и практические задания к лабораторным работам.

В конце приводится детальный разбор заданий и способов их решений, а также диагностика и методы поиска неисправностей.

Для практики на время прохождения курса предоставляется дистанционный доступ к лаборатории проекта LearnCisco.Ru.

Курс будет доступен уже в начале марта.

Чтобы получить максимально льготные условия, переходите по этой ссылке и записывайтесь в «ранний список»!

В следующей заметке я расскажу об опасности фрагментированных IP пакетов и как с их помощью можно обойти списки доступа ACL и проникнуть в защищаемую сеть!

Чтобы ничего не пропустить, подписывайтесь на рассылку >>

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.