Cisco IOS XE CVE-2023-20198

Cisco IOS XE CVE-2023-20198

Раз уж в последние несколько дней ходит шум вокруг уязвимости Cisco IOS XE CVE-2023-20198, то позволю и себе высказаться на эту тему. Не буду пересказывать первоисточники, переводя на русский, хотя краткую выжимку рекомендаций дам.

Когда возникает подобная новость об уязвимости, в первую очередь у ИБшника и владельца зоопарка систем возникает вопрос: а что же у меня под угрозой?

Список платформ, работающих на Cisco IOS XE, можно найти по  ссылке .

Как понять, что ваша платформа уязвима?

name='more'>

Если веб-сервер был включен - значит, уязвима. Из хороших новостей: по умолчанию веб-сервер для управления оборудованием Cisco отключен, и сетевики не очень любят его использовать, что сужает масштаб бедствия. Проверить, включен ли веб-сервер, можно так:

# show running-config | include ip http server|secure|active
ip http server
ip http secure-server

Если видим такие строки - система уязвима. Хоть просто server, хоть secure-server.

Кто прочитал  первоисточник  - увидит там те же команды, но от себя я добавлю, что интерфейсы управления оборудованием Cisco имеют техническую возможность быть защищенными с помощью ACL. В этом случае администрировать сетевое оборудование можно только с разрешенных IP-адресов и подсетей. 

Гипотетически, наличие в конфиге примененного ACL на http server должно делать его недоступным для неразрешенных сетей. Но неправильно составленный ACL либо сбой циски может свести на нет такую защиту. Поэтому использовать нужно, но постоянно мониторить, работает ли. 

В конфиге эта строка выглядит приблизительно так (номер/имя ACL может отличаться). Как составлять ACL, я уж писать здесь не буду:

# show running-config | include ip http access
ip http access-class 15

Еще вендор утверждает, что наличие вот таких комбинаций делает сервер неуязвимым к описанной CVE:

# show running-config | include ip http server|secure|active
ip http server
ip http active-session-modules none

# show running-config | include ip http server|secure|active
ip http secure-server
ip http secure-active-session-modules none

Ну и самое интересное: как понять, что систему скомпрометировали?

  1. Анализ логов. Любой неизвестный локальный юзер говорит о том, что его создали нелегитимно. Увидеть, что он работает через веб-интерфейс, можно в таких логах:
%SYS-5-CONFIG_P: Configured programmatically by process SEP_webui_wsma_http from console as user on line
%SEC_LOGIN-5-WEBLOGIN_SUCCESS: Login Success [user: user] [Source: source_IP_address] at 03:42:13 UTC Wed Oct 11 2023

Зафиксированные Cisco Talos имена пользователей, которых создают скриптами через эксплоиты:

cisco_tac_admin 
 cisco_support

Также в IoC команды Cisco Talos попали следующие IP-адреса:

5.149.249.74 
 154.53.56.231 

Непонятное имя файла filename тоже ничего хорошего не предвещает:

%WEBUI-6-INSTALL_OPERATION_INFO: User: username, Install Operation: ADD filename
  1. Пройтись по IP-адресам своего активного сетевого оборудования командой curl. Если ответ будет в виде HEX-числа - значит, скомпрометировали. Но Cisco Talos  предполагает , что такой ответ будет только в случае, если веб-сервер был перезагружен после внедрения кода («импланта»):
curl -k -X POST "https://systemip/webui/logoutconfirm.html?logon_hash=1"
1a80b7389ccd0a5dab

Алгоритм действий от вендора:

Если же вы обнаружили компрометацию и подсадку «импланта» - Cisco Talos утверждает, что он исчезает после перезагрузки. Но внесенные изменения в конфигурацию, в том числе и созданные пользователи, после перезагрузки сами не удалятся - это ваша задача.

Надеюсь, что вы проверили свое оборудование и обнаружили, что у вас все безопасно настроено. Удачи.

Alt text

Ваша приватность умирает красиво, но мы можем спасти её.

Присоединяйтесь к нам!

Андрей Дугин

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