The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Уязвимость в прошивках BMC-контроллеров, затрагивающая серверы многих производителей

18.07.2019 11:30

Компания Eclypsium выявила две уязвимости в прошивках BMC-контроллера, поставляемого в серверах Lenovo ThinkServer, позволяющие локальному пользователю подменить прошивку или выполнить произвольный код на стороне чипа BMC.

Дальнейший разбор показал, что данные проблемы затрагивают и прошивки BMC-контроллеров, применяемые в серверных платформах Gigabyte Enterprise Servers, которые также используются в серверах таких компаний, как Acer, AMAX, Bigtera, Ciara, Penguin Computing и sysGen. В проблемных BMC-контроллерах применялись уязвимые прошивки MergePoint EMS, разработанные сторонним поставщиком Avocent (в настоящее время является подразделением компании Vertiv).

Первая уязвимость вызвана отсутствием криптографической верификации загружаемых обновлений прошивки (используется только проверка контрольной суммы CRC32, вопреки рекомендации NIST использовать цифровые подписи), что позволяет атакующему, имеющему локальный доступ к системе, подменить прошивку BMC. Проблема, например, может быть использована для глубокой интеграции руткита, остающегося активным после переустановки операционной системы и блокирующего дальнейшие обновления прошивки (для устранения руткита потребуется применение программатора для перезаписи SPI flash).

Вторая уязвимость присутствует в коде обновления прошивки и позволяет осуществить подстановку своих команд, которые будут выполнены в BMC c наивысшим уровнем привилегий. Для атаки достаточно изменить значение параметра RemoteFirmwareImageFilePath в файле конфигурации bmcfwu.cfg, через который определяется путь к образу обновляемой прошивки. Во время очередного обновления, которое можно инициировать командой в IPMI, данный параметр будет обработан BMC и использован в составе вызова popen() как часть строки для /bin/sh. Так как строка для формирования shell-команды создаётся с применением вызова snprintf() без должной чистки спецсимволов, атакующие могут подставить свой код для выполнения. Для эксплуатации уязвимости требуется наличие прав, позволяющих отправить через IPMI команду контроллеру BMC (при наличии права администратора на сервере можно отправить команду IPMI без дополнительной аутентификации).

Компании Gigabyte и Lenovo были оповещены о проблемах ещё в июле 2018 года и успели выпустить обновления до публичного раскрытия сведений. Компания Lenovo выпустила обновления прошивок 15 ноября 2018 года для серверов ThinkServer RD340, TD340, RD440, RD540 и RD640, но устранила в них только уязвимость, позволяющую осуществить подстановку команд, так как во время создания линейки серверов на базе MergePoint EMS в 2014 году верификация прошивок по цифровой подписи ещё не была широко распространена и изначально не заявлялась.

8 мая этого года компания Gigabyte выпустила обновления прошивок для материнских плат с контроллером ASPEED AST2500, но как и Lenovo устранила только уязвимость, связанную с подстановкой команд. Уязвимые платы на базе ASPEED AST2400 пока остаются без обновления. Gigabyte также заявил о переходе на использование прошивок MegaRAC SP-X от компании AMI. В том числе новые прошивки на базе MegaRAC SP-X будут предложены для систем, ранее поставлявшихся с прошивками MergePoint EMS. Решение принято после заявления Vertiv о прекращении поддержки платформы MergePoint EMS. При этом об обновлении прошивок на серверах, выпускаемых компаниями Acer, AMAX, Bigtera, Ciara, Penguin Computing и sysGen на базе плат Gigabyte и оснащённых уязвимыми прошивками MergePoint EMS пока ничего не сообщается.

Напомним, что BMC представляет собой устанавливаемый в серверах специализированный контроллер, имеющий свой CPU, память, хранилище и интерфейсы опроса датчиков, который предоставляет низкоуровневый интерфейс для мониторинга и управления серверным оборудованием. При помощи BMC независимо от работающей на сервере операционной системы можно отслеживать состояние датчиков, управлять питанием, прошивками и дисками, организовать удалённую загрузку по сети, обеспечить работу консоли удалённого доступа и т.п.

  1. Главная ссылка к новости (https://eclypsium.com/2019/07/...)
  2. OpenNews: Манипуляции с BMC позволяют контролировать серверы IBM Cloud после смены арендатора
  3. OpenNews: Атака с использованием вредоносных устройств с интерфейсом Thunderbolt
  4. OpenNews: Серия уязвимостей в BMC-контроллерах серверов Huawei
  5. OpenNews: OpenBMC, стек для создания BMC-прошивок, перешёл под крыло Linux Foundation
  6. OpenNews: Intel развивает открытую прошивку ModernFW и гипервизор на языке Rust
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/51118-bmc
Ключевые слова: bmc, gigabyte, lenovo
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (49) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Michael Shigorin (ok), 12:46, 18/07/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +16 +/
    Проприетарщина + встройщина = проблемщина...
     
     
  • 2.2, Аноним (2), 13:06, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    предлагаете везде ставить внешний KVM? К сожалению он не обладает достаточным уровнем интеграции поэтому не является полным аналогом. Подключение дисков будет с бубном если будет, мониторинг и диагностика железа как в ILO будет недоступно.
     
     
  • 3.8, пох. (?), 13:57, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    зато получи паутину кабелей, бесконечно отваливающиеся видеоразъемы, невозможность удаленно ткнуть в reset, глюки самого kvm'а (обычно целый пучок) и ресет уже его самого...

    зато все из соплей и палок, а не вот это вот ваше проприетарное-закрытое !

     
     
  • 4.13, Анонимно (?), 16:00, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    При этом ну казалось бы отдельный vlan для BMC и доступ в него только по VPN избавит от части головняка. Делайте хотя бы это.
     
     
  • 5.21, имя (?), 18:28, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > При этом ну казалось бы отдельный vlan для BMC и доступ в
    > него только по VPN избавит от части головняка. Делайте хотя бы
    > это.

    Это если у тебя не дешман-железо с совмещёнными портами для mgmt и обычной сети.

     
     
  • 6.26, Аноним (26), 23:33, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Так уже даже супермикро давно не делает.
     
     
  • 7.41, InuYasha (?), 12:54, 20/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    "даже" у HP такое бывает. Но по факту - гораздо веселее когда один порт имеет два назначения - lan и/или bmc. Особенно круто когда тебе нужно два/четыре/все сетевых порта, а на одном из них неотключаемый bmc висит.
     
     
  • 8.46, fgbgk (?), 20:46, 21/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    бмс во влан Даже есть интерфейсы в бонд объединить и на коммутаторе LCAP , то ... текст свёрнут, показать
     
     
  • 9.47, InuYasha (?), 22:40, 21/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Да я тоже думал насчёт вланов, но понял, что кроме свитча его никто не ограничи... текст свёрнут, показать
     
  • 5.27, пох. (?), 23:39, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    это тебе не поможет, если ты их сдаешь в аренду и вынужден предоставлять доступ к консолям через эту хрень - собственно, именно в этом месте оно и опасно.
     
  • 5.35, тигарэтоя (?), 13:51, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ну... есть железо, у которого не было обнаружено крутилки "выключить shared ipmi". dedicated порт, естественно, сконфигурен на static IP, отдельный vlan и прочие радости, а вот на LAN есть DHCP, и адрес выдается ipmi'ю на другом канале. так что тут всё сложнее чем кажется
     
     
  • 6.39, пох. (?), 19:43, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    это у кого оно так криво? Если супермикра - можете конкретный partnumber, чтоб не вляпаться? Нормальные так себя не вели.

     
  • 2.3, Аноним (3), 13:16, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Будто бы у Эльбруса всё не так.
     
     
  • 3.4, A.Stahl (ok), 13:26, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Эльбрус-то тут каким боком?
     
     
  • 4.6, Аноним (-), 13:35, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +14 +/
    Проприетарщина, встройщина, проблемщина. Распильщина еще...
     
     
  • 5.7, пох. (?), 13:55, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    зато никакого iLO в помине нет - бегай, админчег, подключай консоли, или уговори начальство купить тебе ipkvm, управляемые розетки, сам как хочешь так и собирай все это в инфраструктуру, чтобы не вручную по табличке выяснять, как дернуть питание серверу, не откликающемуся на команды (ресет вообще никак не нажать, ага) и смотри не перепутай!

     
     
  • 6.16, Anon_noXX (?), 17:47, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Как-то пох сломался, несите нового. В проприетарщине дежурной смены нет, да. Она(п-на) сама ребутится при необходимости :) Необходимое число раз %)
     
     
  • 7.30, пох. (?), 23:57, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > В проприетарщине дежурной смены нет, да.

    встроенной в сервер - точно нет. А ребутится и питание вкл-выкл - при необходимости, вполне себе через iLO или ucs management. Это даже примитивные внешние модули кривых супермикр умели, в которых не было kvm.

    Или ты предпочитаешь радость человеческого общения? "Але, у нас тут проблема - перезагрузите мне сервер 16 стойка 23 ряд A6, на клавиатуру он уже не отвечает!" "Алле, у нас теперь ДВЕ проблемы - перезагрузите мне сервер 16 стойка 23 ряд A6, и ОТ...СЬ от сервера 17, он ни в чем не виноват, не надо его перезагружать еще раз!"

    ipmi'и, кстати, иногда позволяют помигать синим светодиодиком. Правда, не помогает, непроснутые сменные дежурные все равно умудряются ткнуться в соседнюю коробку, или вообще стойки перепутать.
    Так что проще без них.

     
     
  • 8.34, forum reader (?), 13:48, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    о мой любимый nl leaseweb ты тоже вынужден пользоваться их услугами ... текст свёрнут, показать
     
     
  • 9.36, тигарэтоя (?), 13:55, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    такое возможно не только в лизвебе в 1 русском хостере как-то давненько было п... текст свёрнут, показать
     
     
  • 10.37, forum reader (?), 14:19, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    я могу дать о русских хостерах только положительные отзывы Есть правда один мин... текст свёрнут, показать
     
  • 10.40, пох. (?), 23:13, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ну вот у хетзнера - именно такое - невозможно Потому что ресет ребут осуществля... текст свёрнут, показать
     
  • 6.20, Michael Shigorin (ok), 18:17, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > зато никакого iLO в помине нет

    iLO нет вместе с HP, а BMC-платка с армом на серверных матерях вполне бывает.

     
     
  • 7.33, пох. (?), 11:13, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    то есть в скрепном сделаноунасе - управление на уровне базового железа отдано какому-то arm? А, ну хотя, да, это ж китайский arm, нам же ж велено недружить только с невероятным противником, а с вероятным-то все ок, и втыкаем мы все эти кабели - в свитчи прекрасного huawei?

     
  • 3.12, Аноним (12), 15:13, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Конечно не так. У эльбруса нет ipmi
     
  • 2.5, Аноним (5), 13:32, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Сейчас все новые ноуты, процы и тп. уже по дефолту несут в себе зонды и потенц. бэкдуры и никакие открытые ос тут не спасут. Так что покупайте старые железки и перепрошивайте их всякими либребутами, коребутами и тп.
     
     
  • 3.11, IRASoldier_registered (ok), 15:01, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • –8 +/
    >Так что покупайте старые железки и перепрошивайте их всякими либребутами

    А ещё надо в глухую тайгу уехать, вырыть землянку и спасаться, ибо последние времена настаютЪ, а всё это ваше IT душевредно и от антихриста, да.

     
     
  • 4.15, Аноним (15), 17:46, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > в глухую тайгу уехать, вырыть землянку и спасаться

    Уже давно не шутка, кстати

     
     
  • 5.22, IRASoldier_registered (ok), 18:39, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Ну, я и не сомневался, что существует фрик-ЦА, для которой это - не шутка.
     
     
  • 6.42, InuYasha (?), 13:02, 20/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если что, то ЦА этого сайта - не фрики, катающиеся на bluetooth-самокате с двумя айфонами, умными часами, беспроводными наушниками, gps и NFC. Возможно, вы ошиблись сайтом.
     
     
  • 7.45, IRASoldier_registered (ok), 12:34, 21/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Если что, то ЦА этого сайта - не фрики, катающиеся на bluetooth-самокате
    > с двумя айфонами, умными часами, беспроводными наушниками, gps и NFC. Возможно,
    > вы ошиблись сайтом.

    Ну если внезапно на этом сайте основная аудитория или хотя бы немалая её часть это луддиты-неудачники, которые ненавидят новые технологии, то тем более я не ошибся сайтом: это идеальная кормовая тролль-база и годный источник жира.

     
  • 4.31, пох. (?), 00:01, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    лицензию на охот-участок оформил? Порубочный билет на потолок (хотя бы) в своей землянке - получил в лесничестве? Тайга, братец, она нынче ВСЯ чья-то, нет уже такой тайги в которую можно просто уехать.

    И от нашествия "диких" нефритодобытчиков при этом ты ни разу не застрахован.

     
     
  • 5.32, IRASoldier_registered (ok), 09:42, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > лицензию на охот-участок оформил? (...)

    Ты это не мне объясняй, человече, а всяким сектантам :-)


     
  • 3.19, Michael Shigorin (ok), 18:11, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Сейчас все новые ноуты, процы и тп. уже по дефолту несут в
    > себе зонды и потенц. бэкдуры

    Тревожусь за свой Эльбрус-8С, как думаете, что у него с дефолтом?!  Вот такой:[CODE]Architecture:        e2k
    Byte Order:          Little Endian
    CPU(s):              8
    On-line CPU(s) list: 0-7
    Thread(s) per core:  1
    Core(s) per socket:  8
    Socket(s):           1
    NUMA node(s):        1
    Vendor ID:           MBE8C-PC v.2
    CPU family:          4
    Model:               2
    Model name:          E8C
    CPU MHz:             1299.914875
    BogoMIPS:            2601.08
    L1d cache:           64K
    L1i cache:           128K
    L2 cache:            512K
    L3 cache:            16384K
    NUMA node0 CPU(s):   0-7[/CODE]

     
     
  • 4.24, Anon_noXX (?), 23:24, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Фи, тут про init до CPU, а ты про бабку
     
  • 4.38, Онанимус (?), 15:14, 19/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >BogoMIPS:            2601.08

    Маловато как-то ( На моем стареньком ноуте и то: 4988.16.

     
     
  • 5.44, Michael Shigorin (ok), 16:14, 20/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >>BogoMIPS:            2601.08
    > Маловато как-то ( На моем стареньком ноуте и то: 4988.16.

    Примерно после 486 обычно "делим на два, получаем частоту", к собственно MIPS (миллионам инструкций в секунду") не имело отношения никогда, на что и намекает префикс. :)

     
     
  • 6.49, Аноним (49), 16:32, 22/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Ждем отечественных BogoMB, BogoGB, BogoTB..
     
  • 2.14, Anon_noXX (?), 17:43, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Да-да-да, облака ни при чем. Ваш сервер в опасТности, нуно обновление до облако 3.1.
     

  • 1.9, Аноним (9), 14:34, 18/07/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    А что плохого в том, что железка не зативоизированна?
     
     
  • 2.10, пох. (?), 15:00, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а чего хорошего - тебе хочется попробовать свои силы в написании прошивок, или все же - взять и пользоваться без лишних страданий?

    Вот второе и есть.

    А плохого например то, что машинки иногда сдаются в аренду целиком - и вместе с доступами к этим модулям в том числе. И после съезда предыдущего арендатора - следующий рискует получить нежданный "подарок".
    Ну и покупая бу подешево - будешь теперь особо бдителен.

     
     
  • 3.17, Anon_noXX (?), 17:51, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А, не, пох не сломался, это ник сперли, разумные вещи говорит.
     
  • 3.18, YetAnotherOnanym (ok), 18:06, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А вы согласитесь снимать квартиру у домохозяина, который оставляет на вас уборку за прежним жильцом?
     
     
  • 4.28, пох. (?), 23:42, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    какую нахрен уборку? Тут стены надо ковырять, на предмет наличия в них замурованных жучков.
    Проще взорвать тот дом к хренам.

     
  • 3.23, Аноним (23), 19:14, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Так нужно перепрошивку разрешать путём нажатия физической кнопки. И никакие кульхацкеры не страшны. А не тивоизировать железку.
     
     
  • 4.25, Anon_noXX (?), 23:28, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Точно, согласен, я обеими руками за. Кто будет телепорты оплачивать?
     
     
  • 5.29, пох. (?), 23:45, 18/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    а у тебя пальцев-то на рук...щупальцах - сколько? (вспоминая cisco ucs director, у которого версии прошивок под конкретную группу серверов (не, никто не обещал что они физически рядом и вообще в одной корзине) настраивались в софте) Мне кажется, с такими особенностями организма не проблема и просочиться в канализацию на пару сотен лье?

     
  • 5.48, Аноним (49), 01:57, 22/07/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Ты, конечно. Мне тоже телепорт не забудь оплатить.
     

  • 1.43, InuYasha (?), 13:03, 20/07/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну приехали! Прошивать кастомные прошивки через jtag или spi хотя бы ещё можно???
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру