SNMP-эксплоит EXTRABACON для Cisco - диагностика, заплатки и лечение

SNMP-эксплоит EXTRABACON для Cisco - диагностика, заплатки и лечение
Наверное, в последнее время о продаваемых эксплоитах им. АНБ не говорил только ленивый. Но когда циска подтвердила, что таки да, 2 из них реально рабочие - стало совсем интересно. Конечно, об этом было и в новостях сесуритулаба , и на других ресурсах.
В цискином блоге есть статья о Shadow Broker'ских эксплоитах, вносящая ясность о том, стоит ли бояться, кому стоит бояться, чего бояться и как бояться. Похоже, моя заметка будет наполовину содрана с нее, но да простят меня мои читатели (все 5 или аж 6) за отсутствие количества авторских изюминок до стадии кекса. 
Ну и, конечно, отдельное спасибо инженеру Максиму Зимовцу из Cisco за оперативный анализ, в каких случаях и кому надо бояться.

Итак, EXTRABACON - эксплоит, вызывающий на уязвимых устройствах переполнение буфера путем отправки специально сформированного пакета SNMP. Перечень уязвимых устройств можно найти в Cisco Security Advisory по CVE-2016-6366 . Из самых популярных это ASA, FWSM, PIX, ASA-SM и остальные firewall'ы. При этом, все версии SNMP (1, 2c, 3) уязвимы. Также уязвимы все версии ПО указанных продуктов.
Вроде, достаточно страшно.
Но для того, чтобы эту уязвимость проэксплуатировать, у атакующего должны сойтись звезды таким образом:
  1. SNMP на firewall должен быть включен;
  2. Известен IP-адрес интерфейса firewall, на котором разрешено управление устройством по SNMP;
  3. Известно или угадано SNMP community (v1, v2c) либо логин-пароль-алгоритмы (v3);
  4. Известен IP-адрес, которому разрешено общение по SNMP с firewall;
  5. Получилось заспуфить этот IP-адрес и добраться до интерфейса с активированным SNMP. 
  6. Уязвим только IPv4-enable interface (так себе утешение в нашей стране).
Теперь не так страшно. Но, тем не менее, проверить свои ASA и прочие Cisco vulnerable firewall'ы по этим шести пунктам (п. 6 - блокирующий) обязан каждый их владелец. 

Сначала нужно проверить конфигурацию SNMP:

# show run snmp-server

выдаст приблизительно следующее:

snmp-server host mgmt 192.0.2.1 community *****
snmp-server host mgmt 192.0.2.2 community *****
snmp-server community *****

Это значит, что на ASA включен SNMP (п.1), разрешено общение по SNMP с хостами 192.0.2.1 и 192.0.2.2 (п.4) при обращении на интерфейс mgmt (п.2) по IPv4-адресу (п.6). 
SNMP community даже из конфига не вынять, надо знать либо угадать (п.3).
Возможность спуфинга определяется наличием на пути пакета от злоумышленника до ASA настроек uRPF и ACL на активном сетевом оборудовании (п.5).
Вроде, проверили - все в порядке, бояться нечего. 
Если нашли, что ASA подвержена уязвимости - переконфигурируйте community и snmp-server host (если SNMP используется) либо отключите SNMP (если не требуется) командой no snmp-server.
На L3-интерфейсах, терминирующих подсети ПК и серверов,  необходимо настроить uRPF-проверку, чтобы исключить возможность спуфинга доверенных серверов:

L3_access(config-if)# ip verify unicast source reachable-via rx

Но, на всякий случай (сколько там еще неопубликованных эксплоитов?) стоит провести дополнительные проверки своей ASA:
  • Опрос по SNMP всех интерфейсов ASA с известным community:
~$ snmpwalk -c community_name -v 2c asa_iface_ip_address 1 

либо для v3 с логином-паролем (алгоритмы могут отличаться - как настроили):

~$ snmpwalk -v 3 -A SNMP_Password -X Priv_Password -a SHA -x AES -u snmpv3user -l authPriv asa_iface_ip_address 1
  • Опрос теми же командами по SNMP с IP-адресов, отличающихся от разрешенных в snmp-server host.

И если ASA не отзывается - тогда все ОК. По крайней мере, бесплатная версия EXTRABACON вам не страшна.

Но, все-таки, стоит проверить свою ASA на целостность и корректность ПО в соответствии с инструкцией от производителя ASA Integrity Assurance .

Естественно, все вышеописанные действия являются исключительно заплаткой, потому что версия ПО остается уязвимой. Поэтому, как лекарство после заплатки, ждем обновления от циски и ставим.
Alt text

Домашний Wi-Fi – ваша крепость или картонный домик?

Узнайте, как построить неприступную стену

Андрей Дугин

Практическая информационная безопасность и защита информации | Information Security and Cyber Defense in Deed