Ipmi доступ из локальной сети компьютеров. Квантор - системный интегратор. Инструкция по работе с web-интерфейсом в старых версиях прошивок IPMI

Всем привет сегодня расскажу что такое IPMI порт управления, как его системный инженер может использовать у себя на работе в повседневные будни, упрощая себе жизнь просто до безобразия.

IPMI ( Intelligent Platform Management Interface) – это интерфейс для удаленного мониторинга и управления физическим состоянием сервера. IPMI является аналогом известных разработок IP-KVM, iLo ,.

Возможности IPMI

  • удаленное включение, выключение и перезагрузка сервера;
  • мониторинг температуры, напряжения и системы охлаждения;
  • удаленное подключение к серверу носителя информации (например, для установки ОС и ПО);
  • управление аккаунтами и правами пользователей (имеется поддержка LDAP и );
  • управление портами доступа и защита доступа SSL - сертификатом;
  • настройка уведомлений о работе сервера.

Как работает контроллер BMC

Давайте посмотрим схему работы BMC контроллера. И так Baseboard Management Controller это интерфейс для удаленного управления и мониторинга состояния сервера. По сути Baseboard Management Controller это однокристальная система, как ее правильно называть System-on-a-Chip, SoC. У BMC есть встроенное графическое ядро, которое обращается и взаимодействует с основными компонентами материнской платы серверного железа, через всевозможные интерфейсы, нужные для работы стандарта IPMI. Чем хорош IPMI, так это, то что он не зависит от операционной системы хостового сервера. Лично я использую IPMI, для прошивки BIOS у серверов и установки серверной операционной системы.


Так же IPMI может работать за NAT, например в цодах, людям дают возможность управлять так своим сервером, полезно если он завис. Для NAT потребуется открыть вот такие порты:

  • TCP 80: HTTP
  • TCP 443: HTTPS
  • TCP 5900, 5901: графическая консоль
  • TCP 5120, 5123 - трафик Virtual Media
  • UDP 623: IPMI

Как выглядит на серверах IPMI-порт

Приведу пример того, как на физическом сервере SuperMicro выглядит данный порт управления . Я выделил его стрелкой, чаще всего он располагается над портами USB.

Далее вам необходимо все сконфигурировать, как настроить IPMI на серверах Supermicro в BIOS или через утилиту ipmicfg , я уже рассказывал, на этом я не останавливаюсь.

Пароль по умолчанию на IPMI

Стандартным логином и паролем для IPMI будет ADMIN / ADMIN, именно большими буквами.

Перед вами появится страница со сводной информации о системе, которую вы можете себе лицезреть на картинке, она дает вам обзор системы, IP-адреса, номера версии прошивки, версии BIOS, а также предварительного просмотра удаленной консоли. Тут же вы вообще можете включить сервер, если он не работает. Я много раз пользовался IPMI интерфейсом, чтобы включить сервер, после того, как его случайно погасили.

На экране информации об оборудовании вы можете просмотреть различные компоненты оборудования, чтобы увидеть спецификации и т. д.

С помощью раздела Configuration вы можете выполнить целый ряд задач, включая оповещения, аутентификацию RADIUS, сетевую конфигурацию (для самого IPMI), настройку SMTP для предупреждений, контроль доступа по IP, системные журналы и т. д.

Раздел удаленного управления (Remote ControL) является одной из наиболее интересных вещей, так как, скорее всего, вам будет интересно иметь удаленный доступ к серверу, если вы в первую очередь заходите на IPMI.

В разделе дистанционного управления (Remote Control), меню управления питанием позволяет:

  • выполнить сброс
  • немедленное отключение питания
  • постепенное отключение питания
  • включение или отключение питания и все это очень удобно, если вы пытаетесь удаленно устранить неполадки или отключить или снова включить сервер.

Меню Launch SOL позволяет запустить консоль SOL.

Virtual Media - это тоже потрясающая функция. Вы можете подключить виртуальный носитель через общий ресурс Windows и представить его, как если бы он был воткнут непосредственно в сервер. Единственным у IPMI есть и недостаток, ограничение в 4,7 ГБ, что может быть недостаточно для некоторых новых серверных ОС. VL-копия Windows Server 2012 R2 весит 5,1 ГБ, но кажется это решается обновлением прошивки.

Для запуска консоли удаленного управления в IPMI (Remote Console), кликните по превью изображению, у вас должен скачаться java файл. Браузер может на него ругаться, нажмите "Keep", чтобы подтвердить загрузку.

Введение

Большая часть серверов Firstdedic оборудована модулем IPMI, но многие пользователи не обращают на эту опцию внимания.

IPMI это аббревиатура, которая расшифровывается как Intelligent Platform Management Interface и переводится на русский язык как “интеллектуальный интерфейс управления платформой”.

Что представляет из себя данное устройство. Это модуль, который находится непосредственно внутри сервера и наружу доступен дополнительный Ethernet-разъем.

В случае потери управления над сервером, есть возможность зайти по указанному адресу и, авторизовавшись, выполнить действия для устранения проблем или получения информации о возникшей неполадки.

В основном, этот модуль используется для мониторинга и управления некоторыми функциям, встроенными в серверное аппаратное обеспечение, как то: слежение на температурными датчиками, датчиками напряжения, состояние блока питания, скорость вращение вентиляторов, журналирование, подключение образов и т.п. Следует обратить внимание, что эти функции доступны независимо от процессора, операционной системы или BIOS. Управление доступно даже при выключенном сервере.

К сожалению, автоматизировать предоставление доступа к IPMI на данный момент не удалось, поэтому доступ можно получить по запросу в техническую поддержку.

По запросу выдается IP-адрес, где располагается интерфейс, а так же авторизационные данные. Доступ предоставляется не полный, ограниченный учетной записью уровня Operator.

Доступ к IPMI может быть осуществлен как через браузер, так и с помощью приложения IPMIView. В первом случае потребуется предустановленная Java и плагин к браузеру, во втором — ОС Windows или MacOS, или предостановленная Java для мультиплатформенной версии IPMI View.

Доступ с помощью браузера

После авторизации открывается основная страница, где вы можете получить доступ к IP-KVM (своего рода виртуальный монитор, передающий видео-изображение с сервера к подключенному клиенту. Бывает очень полезным при ошибке в настройке сети, установке ОС, либо при блокировке IP-адресов на уровне дата-центра), а так же увидеть текущее состояние сервера, включить, выключить и аппаратно перезагрузить сервер (кнопки Power On, Power Down и Reset соответственно в области Power Control via IPMI).

При нажатии на кнопку “Refresh Preview Image” будет обновляться предварительный просмотр виртуального монитора. А при нажатии на сам черный экран будет открыт JAVA-клиент IP-KVM и вы получите доступ к интерфейсу вашей операционной системы уже непосредственно с помощью клавиатуры и мыши. Но для его работы потребуется установленная JAVA и плагин к браузеру

Во вкладке Server Health основного меню есть возможность посмотреть состояние сервера, получить информацию о скорости вращения вентиляторов, температуре и напряжении

Доступ с помощью десктопного приложения

Помимо браузерной версии существует и десктопная — IPMI View, которая существует в версиях для Windows, MacOS и Java. Последняя является мультиплатформенной.

Все последние версии IPMI View, а так же документация, доступны на официальном ftp-сервере производителя — ftp://ftp.supermicro.com/utility/IPMIView/ .

В отличие от браузерной версии, которая скачивается и запускается только по факту использования, IPMI View устанавливается на ПК и при работе просто подключается к требуемому серверу.

Первоначально требуется добавить в настройки приложения все ваши серверы с помощью кнопки “Add a new system” (File → New → System)

Где в поле IPMI address: требуется добавить тот IP, который вы получили при запросе доступа к IPMI у технической поддержки.

Для подключения к интерфейсу IPMI, после его добавления в IPMI Domain, следует просто выполнить двойное нажатие по сохраненной системе.

После нажатия на кнопку “Login” и успешной авторизации окно входа в интерфейс управления платформой несколько изменится: Появится информация о версии используемого IPMI, и в самом низу вкладки с доступными операциями.

При переходе на некоторые вкладки будет заметно, как приложение запрашивает информацию с IPMI и выводит в более доступном для восприятия виде.

К примеру, вкладка Sensors выведет данные в графическом виде, что несколько более наглядно, чем просто цифры, как в браузерном варианте.

Вкладка IPM Device предоставит доступ к получению информации о состоянии сервера, и управление ею: выключение, включение, перезагрузка и сброс (Power Down, Power Up, Power Cycle, Reset соответственно).

Для закрытия текущей сессии и отключения от IPMI следует выбрать пункт меню Session → Close .

Все сервера, предлагаемые нами в аренду, оснащены контроллером IPMI (Intelligent Platform Management Interface), позволяющим осуществлять включение, выключение, удаленное подключение (KVM) с возможностью монтирования ISO-образов, а также обеспечивающим доступ к информации о текущем состоянии сервера.

При помощи IPMI после выдачи сервера вы сможете произвести установку операционной системы и первоначальную настройку сервера. Так как IPMI-контроллер подключён отдельным кабелем и имеет собственный IP-адрес, даже в случае потери доступа к ОС Вы всегда сможете управлять сервером удаленно без необходимости прямого физического доступа.

Как установить ОС?

Для установки операционной системы Вам потребуется подключиться к IPMI сервера одним из удобных для вас способов: через Web-интерфейс или при помощи программы IPMIView. В статье будут описаны оба варианта, однако мы рекомендуем использовать второй способ.

Web-интерфейс

Для подключения через web-интерфейс необходимо в адресной строке вашего браузера ввести адрес IPMI и авторизоваться. Адрес и реквизиты для авторизации вы можете найти в письме с доступом к серверу или в вашем личном кабинете. Далее потребуется перейти во вкладку Remote Control -> Console Redirection и нажать кнопку Launch Console .


В разделе Device 1 выберите ISO File в выпадающем списке Logical Drive Type и укажите путь до образа на вашем диске при помощи кнопки Open Image , после чего подключите образ кнопкой Plug In .


После подключения образа перезагрузите ваш сервер в разделе Power Control ->


Некоторые серверы позволяют подключить до трёх устройств при помощи вкладок Device 2 или Device 3 в разделе Virtual Media -> Virtual Storage . Это может быть полезно, если при установке потребуется установить дополнительные драйвера.

Если вы планируете установить на сервер ОС Windows, комбинацию клавиш Ctrl+Alt+Del можно передать в разделе Macro - Macro .

Инструкция по работе с web-интерфейсом в старых версиях прошивок IPMI

IPMIView

Для использования программы Supermicro IPMIView необходимо скачать её с официального сайта , указав свои данные, либо напрямую с ftp-сервера: https://www.supermicro.com/wftp/utility/IPMIView/

После установки и запуска программы необходимо добавить ваш сервер в разделе File - New - System .

В качестве System Name укажите имя вашего сервера, а в графу IP address впишите адрес IPMI , который вы можете найти в письме с доступом к серверу или в вашем личном кабинете. Убедитесь, что в графе адреса отсутствуют пробелы в конце строки и нажмите OK .

В списке слева дважды нажмите на имя добавленного сервера, после чего вы увидите окно авторизации. Заполните его при помощи реквизитов из письма или личного кабинета и нажмите Login . В случае успешного подключения вы увидите надпись Connected , а в самом низу окна появятся дополнительные вкладки для управления сервером.


Для удалённого управления сервером перейдите в разде KVM Console и нажмите кнопку Launch KVM Console .


Дальнейшие действия аналогичны работе через

При помощи программы IPMIView вы также можете перезагрузить, включить или выключить ваш сервер во вкладке IPMI Device .


Для того чтобы сетевым администраторам максимизировать время безотказной работы серверов, существует множество технологий и продуктов. Поэтому необходимо было, чтобы стандарты управления были едиными для всех. На сегодняшний день стандарт IPMI (интерфейс интеллектуального управления платформой) является одним из важнейших открытых стандартов и присутствует во всех платформах Supermicro.

Большинство материнских плат Supermicro соддержат специальный слот, поддерживающий IPMI карты стандарта 2.0 (IPMI over LAN). Технология IPMI дает возможность удаленно управлять и восстанавливать сервер независимо от его статуса и состояния. Связь с удаленной консолью управления обеспечивается при помощи встроенного сетевого контроллера, используя дополнительную полосу пропускания. Это аппаратное решение, не зависящее от операционной системы. IPMI 2.0 - это быстрый и недорогой способ удаленного управления, контроля, диагностики и восстановления сервера.

Так как IPMI полностью независим от операционной системы, мониторинг, управление, диагностику и восстановление систем можно проводить даже в том случае когда ОС "зависла" или сервер отключен. В технологии IPMI реализованы функции выведения уведомлений о необходимости восстановления компонентов - это дает возможность следить за состоянием системы и реагировать на возможные аппаратные проблемы до их проявления. Вероятность подобных проблем также снижает функция мониторинга аппаратных средств. Кроме того можно отслеживать вмешательства в аппаратную часть сервера, если настроить систему IPMI на выявление открытий корпуса. Безопасность работы персонала обеспечивает использование многоуровневых прав и паролей совместно с технологиями идентификации и линейного шифрования. Некоторые модули IPMI 2.0 поддерживают KVM-over-Lan. Это дает возможность удаленно зайти в операционную систему на сервере и произвести необходимые манипуляции по ее настройке, либо по установке и удалению необходимых программ.

IPMI отличается простотой в эксплуатации, поскольку обычно он поставляется уже интегрированным в сервер или отдельное устройство. И что самое важное - он не требует финансовых трат. И позволяет осуществлять управление системой в те моменты, когда программные средства бессильны - например, при "зависании" ОС. Таким образом, технология IPMI и существующие средства и методы управления прекрасно дополняют друг друга. И для эффективного управления сервером необходимо использовать как программные так и аппаратные ресурсы. -

Преимущества технологии IPMI

  • Удаленное управление блоками питания, вентиляторами, напряжением и температурой независимо от типа и состояния центрального процессора и операционной системы
  • Ведение журнала регистрации текущих событий
  • Поддержка DOS, BIOS setup, Windows 2003, Linux
  • Управление кнопками на корпусе: Reset; Power down; Power up
  • Защита паролем

Altusen IP9001 и модули IPMI: встраиваемые средства для удаленного управления компьютером

Модули удаленного управления, среди которых наибольшую известность получили KVM-переключатели, как правило, выполнены в виде внешних конструктивов. Но есть и другой класс устройств, также предназначенный для осуществления дистанционных манипуляций с серверным оборудованием, встраиваемый непосредственно в контролируемый объект. Каждый системный администратор не представляет своей деятельности без использования удаленного доступа к подопечным серверам, причем в двух вариантах: удаленного контроля состояния оборудования и дистанционного выполнения административных функций. Обычно эти задачи решаются посредством доступа к текстовой консоли или рабочему столу графической оболочки. Организовать удаленное управление возможно разными способами, самыми распространенными из которых являются программные средства. Практически каждый производитель серверов и систем хранения данных поставляет в комплекте ПО для удаленного мониторинга состояния, оповещения о критических ситуациях и администрирования оборудования.

Не последнее место занимают встроенные средства дистанционного доступа, предоставляемые ОС, не считая отдельных продуктов третьих фирм. Но иногда программные средства оказываются бессильными помочь в устранении неполадок без прямого доступа к серверу. Это бывает, например, при аппаратном сбое, и исправить ситуацию может только "холодный" рестарт или даже необходимость выключения/включения питания. В таких случаях на помощь приходит специализированное аппаратно-программное решение, представляющее собой специальный контроллер, устанавливаемый на материнскую плату. Его питание обеспечивается от дежурного источника или вообще автономно. К нему есть доступ через сетевой интерфейс, кроме того, может быть еще один канал - через автономный СOM-порт или модем.Такой контроллер имеет доступ к сенсорам на материнской плате, а также может осуществлять аппаратный сброс и включение/выключение питания. Управление этими функциями выполняется с рабочей станции администратора, на которой устанавливается клиент, взаимодействующий с контроллерами и допускающий мониторинг/управление группой серверов, оборудованных такими модулями.>

Altusen IP9001 Контроллер IP9001 - по сути, "компьютер в компьютере". Такое решение обеспечивает полную аппаратную независимость от управляемого сервера Доступ к дистанционному узлу осуществляется посредством Web-интерфейса и позволяет производить любые операции с обслуживаемым компьютером вплоть до включения/выключения и аппаратного сброса Устройство представляет собой PCI-контроллер для дистанционного управления по протоколу TCP/IP, рассчитанный на установку в любой компьютер, оснащенный соответствующим интерфейсом. По сути, IP9001 - самостоятельная ЭВМ с собственным процессором IBM PowerPC 405GPr - 400-мегагерцевой версией уже известного 405GP, выпускающегося с тактовыми частотами 266 и 300 MHz. Этот процессор включает в себя интегрированный PCI-интерфейс, контроллеры SDRAM и Ethernet. Помимо обязательных ОЗУ и ПЗУ на плате присутствует собственный графический контроллер ATI Rage XL, а для подключения к сети на ней предусмотрен Ethernet-порт RJ-45. Заслуживает внимания и возможность работы через телефонную сеть при помощи дополнительного модемного модуля (разъем RJ-11) - она выручит при отсутствии доступа к управляемому узлу посредством локальной сети. Кроме перечисленного выше, модуль дистанционного управления оснащен приличным набором периферийных интерфейсов, среди которых - RS-232 и хаб USB 2.0. Питание устройства осуществляется двумя путями - через шину PCI и внешний источник, предназначенный для обеспечения независимости от управляемого компьютера. Управление с удаленной консоли предоставляет оператору весь спектр возможностей, доступных непосредственно с самого сервера, в том числе работу в режиме Remote Console, мониторинг напряжения и температуры системы, включение/выключение, перезагрузку. Поддержка виртуального диска, CD и флоппи-дисковода позволяет устанавливать обновления, ПО и загружать ОС с носителя, физически находящегося на удаленной рабочей станции. Программное обеспечение допускает поддержку 64 учетных записей с разграничением прав доступа к управлению для каждого оператора. Работа устройства рассчитана на использование операционных систем Windows 2000/2003/XP, Red Hat версий 8.0 и выше. IPMI (Intelligent Platform Management Interface).

Еще одна разновидность встраиваемых устройств, предназначенных исключительно для серверных платформ, базируется на наборе спецификаций IPMI, разработанных группой компаний-производителей серверного оборудования Intel, HP, NEC и Dell для средств удаленного мониторинга/управления. В него вошли три спецификации: Intelligent Platform Management Interface; Intelligent Platform Management Bus (IPMB) и Intelligent Chassis Management Bus (ICMB). IPMB - спецификация внутреннего интерфейса расширенного мониторинга/управления в пределах одной системы, ICMB определяет спецификации внешнего интерфейса между IPMI-совместимыми системами.

Расширители IPMI, несмотря на небольшие габариты, обеспечивают полный контроль над сервером После выхода в 1998 г. версии 1.0 была выпущена 1.5, а в настоящее время актуальна спецификация 2.0. Этот стандарт поддержал уже 171 производитель оборудования, и список продолжает расти. Версия 1.5 была утверждена в I квартале 2001 г. Она уже включала следующие возможности: средства мониторинга температур, напряжений, скорости вращения вентиляторов, датчики вскрытия корпуса; управление сбросом и питанием; ведение журнала событий; сторожевую схему (WatchDog Timer); доступ и оповещение через COM-порт и локальную сеть; специализированные шины для мониторинга. Версия 2.0 была принята в феврале 2004 г. В ней предусмотрен ряд дополнительных возможностей, таких как Serial Over LAN, шифрование пакетов, внутренние и внешние протоколы, усовершенствованы средства защиты от несанкционированного доступа, добавлены расширения для мониторинга модульных структур (blade-серверов) и средства для создания виртуальных (management only) сетей. Средствами IPMI оснащались серверные материнские платы на платформе Intel 7500 для Xeon Prestonia с шиной 400 MHz. Это был модуль SMC-0001, совместимый с IPMI-1.5, выполненный как небольшая платка со специализированным процессором и своим COM-портом в конструктиве, аналогичном модулям памяти SO-DIMM.Практически на все платы на платформе Intel 7520/7525/7320, а также Intel 7221 для Pentium 4 устанавливается модуль AOC-IPMI20-E, уже совместимый с IPMI 2.0.

Архитектура IPMI версии 2.0. На сегодняшний день это основной стандарт, принятый разработчиками серверных систем

На серверных платформах 7230 для Pentium D и 1U-платформах серии 6014P для Xeon появился новый конструктив для IPMI-карт. Он имеет разъем, похожий на PCI-Х х16, только с "перевернутым" ключом. Эти платы (AOC-1UIPMI-B и AOC-LPIPMI-LANG) функционально аналогичны AOC-IPMI20-E, но оснащены дополнительной гигабитовой сетевой картой Intel 82541PI. Модуль AOC-LPIPMI-LANG предназначен для установки в обычный или 2U-корпус, а AOC-1UIPMI-B - в 1U-корпус и не оборудован сетевой картой (она опционально доступна в виде отдельного модуля AOC-1UIPMI-LANG). По умолчанию AOC-IPMI20-E использует первый сетевой контроллер, имеющийся на материнской плате, а AOC-1UIPMI-B и AOC-LPIPMI-LANG - свой дополнительный, если он установлен. При инсталляции в модуле IPMI сначала программируется Firmware, соответствующее материнской плате, а затем устанавливается IP-адрес. В операционной системе эта же сетевая карта может параллельно использоваться для других нужд с IP-адресом, отличным от установленного для IPMI. Как правило, последнему из соображений безопасности рекомендуется выделять отдельную сеть. Для мониторинга/управления систем с IPMI-адаптерами применяется специальная утилита IPMIView20, которая распознает адаптеры всех версий. Она позволяет находить IPMI-адаптеры в заданном диапазоне адресов, и группировать обнаруженные системы по определенному признаку. Для получения доступа к конкретному серверу необходимо пройти парольную аутентификацию, причем в IPMI 2.0 используется контроль по паролю и шифрование, а также многоуровневое разграничение прав доступа.ПО для управления серверами через IPMI предоставляет оператору не только набор базовых функций, но и данные мониторинга в удобной графической форме Основные возможности мониторинга/управления, предоставляемые адаптерами IPMI, стандартые: ведение журнала системных событий, слежение за температурой, напряжениями, скоростями вращения вентиляторов, другими датчиками. Имеется возможность перезагрузки, включения/выключения и Cycle - последовательного выключения, а затем включения питания. Все эти функции доступны в двух режимах: Graceful Power Control - корректное выполнение shutdown операционной системы через установленный на ней агент (GPC-агент имеется только для Windows и Linux), и Chassis Power Control - аппаратный сброс/выключение питания.Доступ к текстовой консоли осуществляется посредством ее переназначения на COM-порт и реализации SOL-redirection (Serial Over LAN). Последняя позволяет получить доступ к текстовой консоли удаленного сервера, и поменять удаленно, например, настройки BIOS. Таким же образом можно получить доступ к загрузочному меню Windows или к текстовой консоли Linux/UNIX.

Послесловие

Устройства, описанные в обзоре, созданы для выполнения одной и той же задачи - максимально упростить обслуживание удаленных систем. Главное различие между ними - сфера применения. Если Altusen IP9001 подходит для любой системы, то установка модулей IPMI ограничена исключительно серверными платформами. Сегодня многие компании-разработчики стремятся включать подобные модули в состав своих систем. Так, 15 июня ATEN International Co. Ltd. объявила, что ее новое микропрограммное решение IPMI официально выбрано Micro-Star International Co. Ltd. (MSI) для своей серверной линейки продукции. MSI внедрит микропрограммное решение ATEN в линейку AMD-серверов, чтобы предоставить клиентам необходимые функции управления серверами.Отдельно стоит отметить, что Supermicro готовит для платформы Bensley новые средства мониторинга/управления AOC-SIMLP IPMI 2.0, которые будут иметь встроенные возможности KVM Over LAN средствами IPMI.

Абсолютное большинство современных серверов имею IPMI/BMC интерфейс для управления сервером удаленно. Данный инструмент представляет собой доступ к виртуальной клавиатуре и экрану сервера посредством протокола TCP/IP. Сегодня мы коснемся истории исследования безопасности IPMI, рассмотрим векторы для проведения атак и их дальнейшего развития с использованием IPMI.

IPMI - это набор спецификаций, регламентирующих, как общаться и что предоставлять.
Все вендоры стараются придерживаться этих спецификаций.
ВМС - это обертка из железа для работы IPMI. Представляет собой одноплатный компьютер (system on а chip) с щупальцами в сенсорах основного. Каждый вендор сам выбирает, что за железо использовать и как его объединять, что естественно. Все наши примеры мы будем рассматривать на lntegrated Lights Out (iLO) от Hewlett-Packard (НР). НР iLO - это какраз связка BMC/IPMI. У других вендоров свои названия, реализации в железе и софте. Но, как правило, это одноплатный компьютер с процессором ARM и Linux на борту.
Основная функция подобных устройств - сделать жизнь админов более простой и удобной: пропадает необходимость бежать к серверу и жать кнопку Reset /ставить новую систему/ смотреть, почему он не грузится. Теперь можно подключиться к IPMl/BMC и сделать все это удаленно. К тому же появляется возможность получать информацию со всевозможных датчиков температуры,
напряжения и так далее, что также довольно удобно.


УПРАВЛЕНИЕ

Интерфейсов управления несколько:
- веб - интерфейс (зависит от вендора) ;
- IPMI over LAN (UDP 623);
- из установленной системы на сервере (при условии, что установлены драйверы от производителя). Используемый софт: WMI под виндой, OpenlPMI, IPMltool под Linux.

С веб-интерфейсом все понятно. Каждый вендор сам решает, как он выглядит и как его реализовать. Второй и третий интерфейсы похожи, но различается среда передачи. В случае IPMI over LAN, как можно догадаться, команды передаются через сеть на порт UDP 623. Из установленной системы команды для IPMI передаются посредством файла устройства, обычно это /dev/ipm iO, которое появляется после установки драйвера. Стандартная утилита для взаимодействия с IPMI - это IPMltool под GNU/Linux, как наиболее простая в обращении.

ЧТО ПЕНТЕСТЕРУ IPMl/BMC

Несмотря на то что отчет об уязвимостях IPMl/BMC был опубликован еще летом 2013 года, в настоящее время остается очень много уязвимых систем. Очень часто IPMl/BMC любой масти можно найти через поисковик . Естественно, не стоит держать подобные системы снаружи. В основном они встречаются при проведении внутренних пентестов. Один из самых простых векторов развития атаки с использованием таких систем - «угон» сервера с помощью IPMI/BMC.

Заимев административный доступ к IPMl/BMC (как будет показано далее, это совсем несложно), можно подключиться через VirtualConsole (aka KVM) и, к примеру, сбросить пароль root’a или с помощью LiveCD сдампить хеш и локальных пользователей, если это Windows. При прокачанном скилле удачи можно даже поймать консоль, из которой root забыл разлогиниться (очень часто такое встречается на виртуальных машинах). В свою очередь, IPMI можно использовать и как возможность вернуть доступ к серверу после полной переустановки системы.
Доступ к IPMI/ВМС средствами операционной системы при наличии максимальных привилегий возможен без использования пароля, то есть авторизация вообще не нужна. В этом случае злоумышленник просто создает административный аккаунтов IPMl/BMC. При потере доступа к серверу он заходит на IPMl/BMC и возвращает честно заработанное добро. Вообще, связь IPMl/BMC с основным компьютером до сих пор досконально не изучена. Это непаханое поле для поиска багов и фич. Учитывая количество вендоров, которые реализуют это в своих серверах, можно говорить о «богатом внутреннем мире».

ПУБЛИЧНЫЕ ИССЛЕДОВАНИЯ

Впервые на безопасность IPMI и ВМС обратил внимание Дэн Фармер (DanFarmer). С его полным отчетом, носящим говорящее название «Грузовой поезд в ад» . Мы рассмотрим наиболее интересные с точки зрения взлома моменты.
Руководствуясь исследованием Дэна, уязвимости IPMl/BMC можно разделить на две большие категории:

· кастомные баги от производителей (например, уязвимости веб-интерфейса);
· уязвимости протокола IPMI.

На самом деле Дэн накопал много интересного, об этом ниже.

NULL authentication

Описание
Уязвимость позволяет обойти аутентификацию. Присутствует только в IPMI 1.5. Эксплуатация дает возможность управлять устройством, просто активировав опцию отключения аутентификации. Привилегии различаются у разных вендоров, но обычно бывают максимальными.

Вендоры
- НР
- Dell
- Supermicro.

Условия
Открытый порт UDP 623, IPMI 1.5, логин существующего юзера.

Ipmtiool -А NONE -Н targetIP bmc guid

IPMI Authentication Bypass via Cipher 0

Описание
Уязвимость позволяет обойти аутентификацию. Бага появилась с IPM I верси ей
2.0. В этой ревизии решили добавить шифрования. Для эксплуатации надо
знать логин валидной учетной записи, а вот пароль знать не обязательно -
можно указать любой.

Вендоры
- НР
- Dell
- Supermicro.

Условия

Открытый порт UDP 623, IPMI 2.0, логин существующего юзера.

Metasploit - auxiliary/scanner/ipmi/ipmi_cipher_zero ipmitool -I lanplus -C 0 -Н targetIP -u Administrator -Р anypasswordhere user list

IPMI 2.0 RAKP Authentication Remote Password Hash Retrieval

Описание
Уязвимость позволяет неавторизированному юзеру получить захешированные пароли пользователей для последующего брута. Бага появилась в спецификации IPMI версии 2.0

Вендоры
- НР
- Dell;
- Supermicro.

УСЛОВИЯ

Открытый порт UDP 623, IPMI 2.0 и валидные user-logins.

Metasploit - auxiliary/scanner/ipmi/ipmi_dumphashes http://fish2.com/ipmi/tools/rak-the-ripper.pl

IPMI Anonymous Authentication / Null user

Описание
Кто-то называет это null user, кто-то - anonymous authentication. Кто-то разделяет эти две уязвимости, кто-то нет. По умолчанию существует null user / anonymous - «» (пустая строка). Если говорят null user, то пароль у него тоже пустой. Если говорят anonymous authentication, то пасс у него admin и во всем виновато IPMI Chips with ATEN-Software.
Дэн в своем исследовании считает это как две разные уязвимости. А в доке от Rapid7 об null user уже ни слова.

Вендоры:

НР
Dell
Supermicro (используют IPMI Chips with ATEN-Software).

Условия

Открытый порт UDP 623.

Metasploit - auxiliary/scanner/ipmi/ipmi_dumphashes ipmitool -I lanplus -Н targetIP -U "" -Р "" user list

Supermicro IPMI UPnP Vulnerabllity

Описание
В Supermicro присутствует сервис UPnP SSDP на порту UDP 1900. Он уязвим к переполнению буфера.

Вендоры
Supermicro.

Условия
Открытый порт 1900.

Metasploit exploit/multi/upnp/libupnp _ssdp_overflow metasploit auxiliary/scanner/upnp/ssdp_msearch

Supermicro IPMI Clear-text Passwords

Описание
Спецификация IPMI 2.0 подразумевает, что где-то должны храниться пароли в открытом виде. В Supermicro они находятся в файлах /nv/PSBlock или /nv/PSStore, в зависимости от firmware.
Помимо этого, в реализациях ВМС на Nuvoton WPCM450 на ТСР-порту 49152 висит сервис, который позволяет читать содержимое файлов в директории /nv, например PSBlock, server.pem и так далее.

Вендоры
· Supermicro.

Условия
Shell-дocтyп

Cat /nv/PSBlock echo (GET /PSBlock" 1 nc targetIP 49152

По поводу уязвимостей «NULL authentication / IPMI Authentication Bypass via Cipher О», «IPMI 2.0 RAKP Authentication Remote Password Hash Retrieval», «IPMI Anonymous Authentication» - обо всем этом написано в спецификации IPMI.
Исследователи досконально изучили ее, сделав при этом упор на механизмы аутентификации и шифрования. Уязвимость, связанная с произвольным выполнением кода в UРnР-сервисе в прошивке Supermicro (Supermicro IPMI UPnP Vulnerability), относится к CVE-2012-5958 (BoF в libupnp). Остальные же затронутые нами уязвимости найдены с помощью анализа прошивки Supermicro для материнских плат Supermicro Х9, причем упор делался именно на анализ кода, отвечающего за веб.

HANDS-ON LAB

Давай разберем стандартную схему эксплуатирования уязвимостей IPMI.
С помощью модуля ipmi_version, доступного в известном фреймворке Metasploit, можно просканировать периметр сети. Если ты уже находишься во внутреннем сегменте и устанавливать/использовать Metasploit нет возможности, то можно обойтись простенькой утилитой ipmiping или rmcpping.
Как только удалось обнаружить открытые IPMI, в первую очередь следует проверить их на уязвимость «Authentication Bypass via Cipher О» (смотри выше). Если она присутствует, то можно обойтись без дампа хешей пользо вателей и просто сбросить пароль администратору или добавить своего. Важно: для использования этой уязвимости необходимо знание логи на учетной записи, в нашем случае у учетной записи должны присутствовать административные привилегии. Для начала рассмотрим случай с дампом хеша пользователя и посл едующим его брутфорсом.

С помощью модуля Metasploit’a ipmi_dumphashes мы имеем возможность собрать хеши пользователей. Важно: без знания логина пользователя не получится добыть его хеш. В опциях ipmi_dumphashes можно указать путь до файла с логинами, например в том случае, если админы создали для себя учетные записи. Файл, который используется по умолчанию, содержит дефолтные логины всех вендоров. Брут хешей поддерживают как oclHashcat , так и John the Ripper с jumbо -патчами (community edition). Джона следует брать с гитхаба, так как на официальном сайте устаревшая версия без поддержки нужного нам формата. Последняя версия oclHashcat , на данный момент 1.30, поддерживает все из коробки.

Если у тебя в руках оказался хеш от НР ilO4, то тебе повезло. Дело в том, что при конфигурировании на заводе пароль по умолчанию для учетной записи Administrator устанавливают длиной восемь символов - uppercase + numeric. На моих скромных мощностях поиск подобного значения занимает около получаса.

В случае наличия уязвимости cipher О можно обойтись без брутфорса хешей и сбросить пароль. Для этого нам понадобится утили та IPMitool. Сборка под GNU/Linux не вызывает вопросов. А вот под Windows придется устроить пляски с бубном в Cygwin . Последовательност ь действий для добавленияадминистратора такая:

1. Смотрим, какие пользователи присутствуют, и используем следующий свободный ID.

Ipmitool -I lanplus -с 0 -H 1.1.1.1 -U Administrator -Р anypasswordhere user list

2. Устанавливаем логин нашего пользователя.

Ipmitool -I lanplus -С 0 -Н 1.1.1.1 -U Administrator -P anypasswordhere user set name hacкer

3. Задаем для него пароль.

Ipmitool -I lanplus -С 0 -Н 1.1.1.1 -U Administrator -P anypasswordhere user set password hackerpass

4. Делаем его администратором.

Ipmitool -I lanplus -С 0 -Н 1.1.1.1 -U Administrator -Р anypasswordhere user priv 4

5. Активируем толь ко что созданную учетную запись.

Ipmitool -I lanplus -C 0 -H 1.1.1.1 -U Administrator -Р anypasswordhere user еnаble

После того как хеши взломаны, пароли сброшены или же добавлен новый администратор, у тебя появляется возможность зайти через веб-интерфейс, по SSH на SMASH или подключиться к удаленному рабочему столу, а -ля KVM.
Особую ценность представляет переключатель KVM, так как реализует доступ непосредственно к самой консоли, тем самым позволяя получить доступ в BIOS, установить операционную систему и тому подобное. За реализацию переключателя KVM отвечает каждый вендор сам. Например, в НР
ilO4 для этого используются порты ТСР 17988 и 17990. У Dell iDRAC7 это порт ТСР 5900. Cisco ICM порт ТСР 2068.

Стоит упомянут ь такую вещь, как НР BladeSystem Onboard Administrator. НР BladeSystem представляет собой шасси, к которому подключаются блейд-серверы. Так вот, это шасси позволяет управлять централизованно блейд-серверами с помощью IPMI. При этом авторизация на «Подчиннные» IPMI происходит с помощью механизма SSO. Все, что тебе требуется, - это получить хеш пользователя с административными привилегиями и с помощью веб-интерфейса подключиться на интересующий тебя сервер.

Еще одна интересная особенность, найденная в НР il04, - это возможность подключиться к серверу по KVM прямо из SMASH (читай: SSH) с помощью команды TEXTCONS. Это весьма полезно, когда закрыты порты 80, 443, 17990. Для этого понадобятся права администратора, но какая разница?
Стать администратором не так сложно. Персонально для тебя, читатель, я подготовил программу ipmicd на С под Windows/Linux. Она позволяет сканировать диапазон адресов на наличие IPMl/BMC, а также дампит хеши (аналог ipmi_dumphashes из Metasploit’a). Программы созданы на тот случай, когда использовать Metasploit не самая удачная идея, например IPMl/BMC находятся где-то далеко, куда Metasploit не пробросишь.

Утилита доступна на GitHub. Очень проста в использовании:

1. Параметр -р используется, когда необходимо провести сканирование определенного диапазона.
2. Параметр -d указывает необходимость получить захешированный пароль.
3. Параметр -v N указывает степень логирования при работе 0..5. При N = 1 программа выдает фингерпринты.

Комбинируя различные параметры, можно влиять на поведение программы. Например, при использовании вместе опций -d и -р программа будет пробовать получить хеши только с тех систем, которые отвечают на IРМl- пинги. При использовании только опции -d будет пытаться получить хеши со всех адресов, что обычно происходит нереально медленно. Если что-то вызывает сомнения, то можно использовать опцию -v 5 - программа будет выводить в удобном формате получаемые сообщения. Для компилирования под Linux понадобится тол ько GCC - gcc ipmicd.c -static -о ipmicd . В случае использования на Windows компилировать следует с помощью MinGW gcc ipmicd.c -mno-ms-bitfields -lws2_32 -DMINGW .

ЗАКЛЮЧЕНИЕ

Пара слов о высоком: изучение возможностей и реализаций разными вендорами IPMl/BMC только начинается. Сюда можно включить не только веб -интерфейсили SMASH, но и драйверы для операционных систем, позволяющие взаимодействовать с технологиями удаленного управления сервером IPMI/ВМС из установленной системы. Внутренние сервисы, реализующие обмен информацией в IPMl/BMC. Под прицел может попасть даже «железная» реализация самого ВМС и как именно он управляет основным сервером. Администраторам же я рекомендую проверить все свои системы на наличие в них публичных уязвимостей и по возможности устранить эти уязвимости. Самая же главная рекомендация, которую я бы хотел дать читателем - уделяйте максимум внимания настройкам оборудования которым вы управляете.