Атаки на системы ipmi/bmc · 2014. 12. 8. · •bmc tcp: 3900, 5900, 5901, 3668,...

35
Атаки на системы IPMI/BMC

Upload: others

Post on 15-Feb-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

  • Атаки на системы IPMI/BMC

  • Немного обо мне

    • Шильненков Валентин• Пентестер >1 года в @ptsecurity

    • В сфере ИБ >5 лет

    • Исследователь

  • С чем мы имеем дело

    • IPMI (Intelligent Platform Management Interface)

    • BMC (Baseboard Management Controller)

  • История исследований IPMI/BMC

    • Dan Farmer• IPMI: Freight Train To Hell

    • [ http://fish2.com/ipmi/old/itrain.pdf ]

    • Sold Down the River • [ http://fish2.com/ipmi/river.pdf ]

    • Rapid7• A Penetration Tester's Guide to IPMI and BMCs

    • [ https://community.rapid7.com/community/metasploit/blog/2013/07/02/a-penetration-testers-guide-to-ipmi ]

  • История исследований IPMI/BMC (2)

    • CVE-2013-4805: IPMI Authentication Bypass via Cipher 0

    • CVE-2013-4786: IPMI 2.0 RAKP Authentication Remote Password Hash Retrieval

    • ???: IPMI Anonymous Authentication/Null user

    • CVE-2004-2600: IPMI NONE Authentication

    • CVE-2013-3621, CVE-2013-3623, CVE-2013-3622: Supermicro buffer overflow in CGI

    • CVE-2013-3619: Supermicro Static Encryption Keys

  • Сценарий атаки

    • Находим IPMI

    • Используем • Cipher Zero

    • Anonymous user

    • NONE authentication

    • Нет уязвимостей реализации? Не проблема )• Получаем хеши и ломаем их

    • Получаем доступ к менеджменту сервера

  • Как и где их найти

    • Сканируем • Тулы

    • Ищем в инете• Shodan.io

    • Scans.io

  • Сканирование

    • Инструменты• Nmap (seclist.org/nmap-dev/2014/q3/96)

    • ipmi-version.nse

    • Metasploit (www.metasploit.com)• ipmi_version

    • Freeipmi (www.gnu.org/software/freeipmi/)• ipmiping• rmcpping

    • ipmicd (github.com/nixerr/ipmicd)

    • Что искать• IPMI UDP: 623• BMC TCP: 3900, 5900, 5901, 3668, 3670, 3671, 3669, 2068, 8192, 623, 8889, 3172,

    5120, 5121, 5123, 5555, 5556, 5988, 7578, 11626, 8021, 8022, 6481, 17988, 17990

  • Nmap: ipmi-version.nse

  • Metasploit: ipmi_version

  • Freeipmi: rmcpping/ipmiping

  • ipmicd

  • Статистика по Shodan.io + scans.io

    0

    1000

    2000

    3000

    4000

    5000

    6000

    ILOM HP iLO IMM iRMC iDRAC

    Доступные IPMI/BMC в Интернете (HTTP)

    sonar shodan.io

  • Эксплуатация систем

    • Tools • ipmitool

    • NONE Authentication

    • Cipher Zero

    • Metasploit• ipmi_cipherzero

    • ipmi_dumphasher

    • Nmap• ipmi-cipher-zero.nse

    • ipmicd• dump hashes

  • Metasploit: ipmi_cipher_zero

  • Nmap: ipmi-cipher-zero.nse

  • ipmitool: Cipher Zero

  • Metasploit: ipmi_dumphashes

  • ipmitool: NONE Authentication

  • ipmicd

    • Написана на С – быстрая (в будущем)

    • Админы смогут писать под нее свои экслоиты )

    • Исходники - https://github.com/nixerr/ipmicd

    • Мультиплатформенность: поддерживается Linux и Windows

    • Реализовано:• Получение версии IPMI (пинг)

    • Получение хеша пользователя

    • Пример• ./ipmicd –v 1 10.0.0.0/24

  • ipmicd – dumping hashes

  • Мы внутри, что же тут есть?

    • Что у нас есть• Мы всех нашли• It’s admin time!!

    • Наши возможности• Данные температуры устройств• Вольтаж процессоров• Аппаратные сбои• Журналы авторизации• KVM до основной ОС• ОС самого IPMI/BMC

    • Что делать дальше?

  • KVM до основной ОС

    • Пару слов о KVM• Где его найти

    • Какой софт использовать

    • Проблемы развития• Нужна авторизация для KVM

    • Сломанный хеш

    • Добавить пользователя

    • Нужна авторизация для основной ОС

  • KVM до основной ОС - Решение

    • Мы можем подключить удаленно CD• Удобно для удаленной установки ОС

    • Мы можем загрузиться с него • Из наших IPMI/BMC доступ к BIOS

    • Далее загружаемся с него и запускаем нагрузку

    • Есть небольшая тонкость )• Основная ОС при это естественно не функционирует

  • KVM до основной ОС - Нагрузка

    • Быстрая и автоматизированная• Минимизация простоя при перезагрузках

    • Понимающая разные ОС для пост эксплуатации• Сдампить хеши

    • Сетевые данные

    • Данные приложений

    • Пример - run winenum

    • Забираем данные• Еще одна проблема

  • KVM до основной ОС – Забираем данные

    • Интрузивный метод• Добавить пользователя/ключи (линукс-юникс)• Подменить менеджмент сервисы• Установить RAT ;)

    • Пассивный метод• Получить сетевые настройки по DHCP• Выставить сетевые настройки перед началом эксплуатации• Печать на экране

    • Опять проблема• Разные сети• Доступность

    • ICMP, DNS tunneling

  • KVM до основной ОС – Inception

    • А можно ли все это провернуть еще быстрее?• Виртуализация основной ОС

    • Статистика использования ОС• habrahabr.ru/post/133783/

    • Windows Server• Debian• CentOS

    • Что нас ждет помимо гигантских трудозатрат на подготовку образа?

    • Тормоза?• Нет, Xen наше все

    • Но это все пока Roadmap

  • Итого: Live CD

    • Собранная ОС на линуксе

    • Монтирование файловой системы основной ОС

    • Инструменты для постэксплуатации• samdump2 - Дампит пароли

    • Можно добавить volatility

    • И другие Forensic tools

    • Github.com/nixerr/livecd

  • ОС IPMI/BMC

    • Что можно с ней сделать• Закрепление

    • Вредоносное ПО

    • Туннелирование

    • Как • Уязвимости в прошивках

    • Shellshock

    • Upload custom firmware

  • HP iLO Tricks: Взлом хешей

    • Пароль по умолчанию в HP iLO для Administrator генерируется при производстве• Словарь используемый при генерации

    • Uppercase alpha + digits

    • Длинна • 8 символов

    • Как правило, администраторы видят такой пароль и не задумываются о его смене =)

    • Как ломать хеши• John the ripper: --format=RAKP• Hashcat: -m 7300 (IPMI2 RAKP HMAC-SHA1)

  • HP iLO Tricks: IPMI/BMC для IPMI/BMC

    • HP BladeSystem Onboard Administrator

  • Обнаруженные нами уязвимости

    • HP iLO• CSRF

    • XSS

    • Buffer overflow in SSH server

    • Cisco ICM• Command execution/OS commanding

    • Ждем патчей производителей …

  • Перспективы исследования

    • Больше уязвимостей• Уязвимости в ПО IPMI/BMC

    • Уязвимости в драйверах ОС для взаимодействия с IPMI/BMC

    • Вектора развития атаки• Недокументированные каналы связи BMC с основным сервером

  • Releases

    • Мы научили находить и тестировать

    • Утилита ipmicd для интересных ситуаций• github.com/nixerr/ipmicd

    • Набор livecd для экспериментов• github.com/nixerr/livecd

    • Рассказали о проблемах и перспективах ресерчей

  • Спасибо за внимание!