Йоханнес Ульрих (Johannes Ullrich) из SANS Technology Institute описывает потенциальную опасность, которую представляет собой интерфейс IPMI (Intelligent Platform Management Interface).
Компания Intel придумала интерфейс IPMI для удалённого управления серверами, в том числе для перезагрузки сервера, если операционная система не отвечает. За последние годы IPMI претерпел ряд ревизий и различных реализаций, так что набор поддерживаемых функций на конкретном сервере зависит от производителя материнской платы и версии прошивки. Но есть некоторые общие функции для всех реализаций IPMI.
- IPMI активен всегда, когда сервер подключён к источнику электропитания, независимо от того, включён сам сервер или нет;
- IPMI реализован в виде отдельной микросхемы на материнской плате, для работы ему не требуется CPU, RAM или другие компоненты;
- IPMI может использовать существующую сетевую карту и не нуждается в отдельной сетевой плате.
Если операционная система поддерживает IPMI, то с помощью специального серверного ПО можно подключиться к нему и получить информацию с различных сенсоров. Среди таких программ — OpenIPMI и FreeIPMI.
IPMI версии 1.0 работал через серийный порт, а с версии 1.5 стало возможным запускать окно терминала через IP, версия 2.0 содержит поддержку блейдов, vLan и дополнительные функции из современных сетевых стандартов. В последних реализациях IPMI представляет полнофункциональный сервис для удалённого управления, включая такие функции как смену прошивки на сервере.
Разумеется, многие системные администраторы не соблюдают меры безопасности, в том числе не закрывают доступ по HTTP и не меняют пароль по умолчанию для IPMI, о чём и рассказывает Йоханнес Ульрих.