Практически на всех серверных платах установлены контроллеры BMC (base management controller), отслеживающие ряд параметров системы и позволяющие управлять ей без необходимости физического присутствия. Но контроллер BMC сам по себе является компьютером и, следовательно, его программное и аппаратное обеспечение может содержать уязвимости, ставящие под потенциальный удар злоумышленников всю систему. Как оказалось, подобным грешит Emulex Pilot 3, применяемый в ряде продуктов Intel.
Emulex Pilot 3 — комплексное решение, полностью отвечающее стандартам IPMI 2.0 и DCMI. В его основе лежит процессорное 32-битное ядро с архитектурой ARM9, работающее на частоте 400 МГц. Ему помогают сопроцессоры RISC Second Service и 8051, оба работающие на частоте 200 МГц. Для реализации аппаратной функции KVM в составе имеется также 2D-видеоядро с собственным выделенным фрейм-буфером, поддерживающее разрешения до 1920x1200, чего для задач удалённого управления вполне достаточно.
Как оказалось, прошивка Emulex Pilot 3 не лишена уязвимостей, причём таких, что по шкале CVSS им был присвоен рейтинг 9,6 из 10, что означает статус «критических». Уязвимость связана с некорректной реализацией механизмов аутентификации в версиях прошивок Emulex до 1.59, позволяющих обойти сам процесс аутентификации полностью и получить доступ к KVM-консоли сервера. Единственное требование к атакующему — он должен находиться в том же сетевом сегменте, что и уязвимый сервер.
Самой серьёзной уязвимости присвоен номер CVE-2020-8708, но существуют и другие, связанные с этими же устройствами — CVE-2020-8707 (8,3 балла по шкале CVSS) и менее опасная CVE-2020-8706 (4,7 балла). Исследователи уверены, что проблема за номером 8708 связана с самой архитектурой Emulex Pilot 3; отмечается даже, что работать с BMC посредством этой уязвимости может быть удобнее, нежели используя официальный Java-клиент.
Компания Intel сообщила что в целом устранила 22 уязвимости. В основном, ей оказались подвержены системные платы серии S2600 для Xeon E5 (LGA2011-3), использующиеся не только в серверах. На текущий момент список плат таков:
- Intel S2600WT;
- Intel S2600CW;
- Intel S2600KP;
- Intel S2600TP;
- Intel S2600WF;
- Intel S2600ST;
- Intel S2600BP;
- Intel S1200SP.
Среди готовых серверных систем Intel под угрозой R1000WT/WF, R2000WT/WF, R1000SP, LSVRP и LR1304SP. Затронуты модули HNS2600KP/TP/BP. Более детальная информация содержится на сайте Intel. Для устранения уязвимостей следует обновить прошивку BMC до версии 1.59.
Пока речь идёт о системах только производства Intel, но прошивка для Pilot 3 создана компанией AMI, так что с аналогичными уязвимостями теоретически могут столкнуться и владельцы систем производителей, отличных от Intel. Сама Intel рекомендует также ознакомиться с новой информацией относительно уязвимостей, могущих встречаться в других её продуктах.