Компания Eclypsium выявила (https://eclypsium.com/2019/07/16/vulnerable-firmware-in-the-.../) две уязвимости в прошивках BMC-контроллера, поставляемого в серверах Lenovo ThinkServer, позволяющие локальному пользователю подменить прошивку или выполнить произвольный код на стороне чипа BMC.
Дальнейший разбор показал, что данные проблемы затрагивают и прошивки BMC-контроллеров, применяемые в серверных платформах Gigabyte Enterprise Servers, которые также используются в серверах таких компаний, как Acer, AMAX, Bigtera, Ciara, Penguin Computing и sysGen. В проблемных BMC-контроллерах применялись уязвимые прошивки MergePoint EMS, разработанные сторонним поставщиком Avocent (в настоящее время является подразделением компании Vertiv).
Первая уязвимость вызвана отсутствием криптографической верификации загружаемых обновлений прошивки (используется только проверка контрольной суммы CRC32, вопреки рекомендации (https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.S...) NIST использовать цифровые подписи), что позволяет атакующему, имеющему локальный доступ к системе, подменить прошивку BMC. Проблема, например, может быть использована для глубокой интеграции руткита, остающегося активным после переустановки операционной системы и блокирующего дальнейшие обновления прошивки (для устранения руткита потребуется применение программатора для перезаписи SPI flash).
Вторая уязвимость присутствует в коде обновления прошивки и позволяет осуществить подстановку своих команд, которые будут выполнены в BMC c наивысшим уровнем привилегий. Для атаки достаточно изменить значение параметра RemoteFirmwareImageFilePath в файле конфигурации bmcfwu.cfg, через который определяется путь к образу обновляемой прошивки. Во время очередного обновления, которое можно инициировать командой в IPMI, данный параметр будет обработан BMC и использован в составе вызова popen() как часть строки для /bin/sh. Так как строка для формирования shell-команды создаётся с применением вызова snprintf() без должной чистки спецсимволов, атакующие могут подставить свой код для выполнения. Для эксплуатации уязвимости требуется наличие прав, позволяющих отправить через IPMI команду контроллеру BMC (при наличии права администратора на сервере можно отправить команду IPMI без дополнительной аутентификации).
Компании Gigabyte и Lenovo были оповещены о проблемах ещё в июле 2018 года и успели выпустить обновления до публичного раскрытия сведений. Компания Lenovo выпустила (https://support.lenovo.com/ru/ru/solutions/len-23836) обновления прошивок 15 ноября 2018 года для серверов ThinkServer RD340, TD340, RD440, RD540 и RD640, но устранила в них только уязвимость, позволяющую осуществить подстановку команд, так как во время создания линейки серверов на базе MergePoint EMS в 2014 году верификация прошивок по цифровой подписи ещё не была широко распространена и изначально не заявлялась.
8 мая этого года компания Gigabyte выпустила обновления прошивок для материнских плат с контроллером ASPEED AST2500, но как и Lenovo устранила только уязвимость, связанную с подстановкой команд. Уязвимые платы на базе ASPEED AST2400 пока остаются без обновления. Gigabyte также заявил (https://www.gigabyte.com/pr/Press/News/1700) о переходе на использование прошивок 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 независимо от работающей на сервере операционной системы можно отслеживать состояние датчиков, управлять питанием, прошивками и дисками, организовать удалённую загрузку по сети, обеспечить работу консоли удалённого доступа и т.п.
URL: https://eclypsium.com/2019/07/16/vulnerable-firmware-in-the-.../
Новость: https://www.opennet.me/opennews/art.shtml?num=51118
Проприетарщина + встройщина = проблемщина...
предлагаете везде ставить внешний KVM? К сожалению он не обладает достаточным уровнем интеграции поэтому не является полным аналогом. Подключение дисков будет с бубном если будет, мониторинг и диагностика железа как в ILO будет недоступно.
зато получи паутину кабелей, бесконечно отваливающиеся видеоразъемы, невозможность удаленно ткнуть в reset, глюки самого kvm'а (обычно целый пучок) и ресет уже его самого...зато все из соплей и палок, а не вот это вот ваше проприетарное-закрытое !
При этом ну казалось бы отдельный vlan для BMC и доступ в него только по VPN избавит от части головняка. Делайте хотя бы это.
> При этом ну казалось бы отдельный vlan для BMC и доступ в
> него только по VPN избавит от части головняка. Делайте хотя бы
> это.Это если у тебя не дешман-железо с совмещёнными портами для mgmt и обычной сети.
Так уже даже супермикро давно не делает.
"даже" у HP такое бывает. Но по факту - гораздо веселее когда один порт имеет два назначения - lan и/или bmc. Особенно круто когда тебе нужно два/четыре/все сетевых порта, а на одном из них неотключаемый bmc висит.
бмс во влан. Даже есть интерфейсы в бонд объединить (и на коммутаторе LCAP), то уже доступа к к бмц не будет. Уже вопрос как его обратно вытащить наружу =)
Да. я тоже думал насчёт вланов, но понял, что кроме свитча его никто не ограничит. Т.е. снифить пакеты с пометкой "это влан 2" никому не запретишь. :( Только VPN, но для этого либо прям коробку с VPN подключать прямо к порту, либо ломать прошивку BMC для всовывания туда openvpn...
это тебе не поможет, если ты их сдаешь в аренду и вынужден предоставлять доступ к консолям через эту хрень - собственно, именно в этом месте оно и опасно.
ну... есть железо, у которого не было обнаружено крутилки "выключить shared ipmi". dedicated порт, естественно, сконфигурен на static IP, отдельный vlan и прочие радости, а вот на LAN есть DHCP, и адрес выдается ipmi`ю на другом канале. так что тут всё сложнее чем кажется
это у кого оно так криво? Если супермикра - можете конкретный partnumber, чтоб не вляпаться? Нормальные так себя не вели.
Будто бы у Эльбруса всё не так.
Эльбрус-то тут каким боком?
Проприетарщина, встройщина, проблемщина. Распильщина еще...
зато никакого iLO в помине нет - бегай, админчег, подключай консоли, или уговори начальство купить тебе ipkvm, управляемые розетки, сам как хочешь так и собирай все это в инфраструктуру, чтобы не вручную по табличке выяснять, как дернуть питание серверу, не откликающемуся на команды (ресет вообще никак не нажать, ага) и смотри не перепутай!
Как-то пох сломался, несите нового. В проприетарщине дежурной смены нет, да. Она(п-на) сама ребутится при необходимости :) Необходимое число раз %)
> В проприетарщине дежурной смены нет, да.встроенной в сервер - точно нет. А ребутится и питание вкл-выкл - при необходимости, вполне себе через iLO или ucs management. Это даже примитивные внешние модули кривых супермикр умели, в которых не было kvm.
Или ты предпочитаешь радость человеческого общения? "Але, у нас тут проблема - перезагрузите мне сервер 16 стойка 23 ряд A6, на клавиатуру он уже не отвечает!" "Алле, у нас теперь ДВЕ проблемы - перезагрузите мне сервер 16 стойка 23 ряд A6, и ОТ...СЬ от сервера 17, он ни в чем не виноват, не надо его перезагружать еще раз!"
ipmi'и, кстати, иногда позволяют помигать синим светодиодиком. Правда, не помогает, непроснутые сменные дежурные все равно умудряются ткнуться в соседнюю коробку, или вообще стойки перепутать.
Так что проще без них.
>Или ты предпочитаешь радость человеческого общения? "Але, у нас тут проблема - перезагрузите мне сервер 16 стойка 23 ряд A6, на клавиатуру он уже не отвечает!" "Алле, у нас теперь ДВЕ проблемы - перезагрузите мне сервер 16 стойка 23 ряд A6, и ОТ...СЬ от сервера 17, он ни в чем не виноват, не надо его перезагружать еще раз!"о! мой "любимый" nl.leaseweb. ты тоже вынужден пользоваться их услугами?
такое возможно не только в лизвебе.в 1 русском хостере как-то давненько было прям смешно - попросил пацанов-площадеров накатить на 2 сервера фрю, разбивку-настройки рассказал.
рапортуют "готово"
лезу на сервер по ssh - епта... так это.. они его не реинсталлили, второй тоже.
зато снесли 2 неповинных клиентских дедика. такие вот дела.
> такое возможно не только в лизвебе.
> в 1 русском хостере как-то давненько было прям смешно -я могу дать о русских хостерах только положительные отзывы. Есть правда один минус - за равный пакет услуг берут дорого.
> такое возможно не только в лизвебе.ну вот у хетзнера - именно такое - невозможно. Потому что ресет/ребут осуществляется без участия кожаных бурдюков (доступа к ipmi у клиентов, тем не менее, нет - что-то, видимо, они подозревали).
С заменой сдохшего диска - ад, трэш и п-ц, да, железные роботы не справляются, а кожанные - хорошо если только поменяют не тот диск не в том сервере. Началось не так давно, в 11м году они не только диск умели поменять, но и вовремя заметить что "эээ...чувак, у тебя там всю материнку обломками лопнувших кондеров разнесло. Так что мы тебе заодно весь сервер заменили, правда, у него отвалилась сеть из-за persistent network, но мы уже похакали тебе конфиг и он уже доступен, проверяй"
Сейчас их не насторожило даже, что в машине два диска совершенно разных производителей, и после их замены ничего не находится.
> зато никакого iLO в помине нетiLO нет вместе с HP, а BMC-платка с армом на серверных матерях вполне бывает.
то есть в скрепном сделаноунасе - управление на уровне базового железа отдано какому-то arm? А, ну хотя, да, это ж китайский arm, нам же ж велено недружить только с невероятным противником, а с вероятным-то все ок, и втыкаем мы все эти кабели - в свитчи прекрасного huawei?
Конечно не так. У эльбруса нет ipmi
Сейчас все новые ноуты, процы и тп. уже по дефолту несут в себе зонды и потенц. бэкдуры и никакие открытые ос тут не спасут. Так что покупайте старые железки и перепрошивайте их всякими либребутами, коребутами и тп.
>Так что покупайте старые железки и перепрошивайте их всякими либребутамиА ещё надо в глухую тайгу уехать, вырыть землянку и спасаться, ибо последние времена настаютЪ, а всё это ваше IT душевредно и от антихриста, да.
> в глухую тайгу уехать, вырыть землянку и спасатьсяУже давно не шутка, кстати
Ну, я и не сомневался, что существует фрик-ЦА, для которой это - не шутка.
Если что, то ЦА этого сайта - не фрики, катающиеся на bluetooth-самокате с двумя айфонами, умными часами, беспроводными наушниками, gps и NFC. Возможно, вы ошиблись сайтом.
> Если что, то ЦА этого сайта - не фрики, катающиеся на bluetooth-самокате
> с двумя айфонами, умными часами, беспроводными наушниками, gps и NFC. Возможно,
> вы ошиблись сайтом.Ну если внезапно на этом сайте основная аудитория или хотя бы немалая её часть это луддиты-неудачники, которые ненавидят новые технологии, то тем более я не ошибся сайтом: это идеальная кормовая тролль-база и годный источник жира.
лицензию на охот-участок оформил? Порубочный билет на потолок (хотя бы) в своей землянке - получил в лесничестве? Тайга, братец, она нынче ВСЯ чья-то, нет уже такой тайги в которую можно просто уехать.И от нашествия "диких" нефритодобытчиков при этом ты ни разу не застрахован.
> лицензию на охот-участок оформил? (...)Ты это не мне объясняй, человече, а всяким сектантам :-)
> Сейчас все новые ноуты, процы и тп. уже по дефолту несут в
> себе зонды и потенц. бэкдурыТревожусь за свой Эльбрус-8С, как думаете, что у него с дефолтом?! Вот такой:
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
Фи, тут про init до CPU, а ты про бабку
>BogoMIPS: 2601.08Маловато как-то ( На моем стареньком ноуте и то: 4988.16.
>>BogoMIPS: 2601.08
> Маловато как-то ( На моем стареньком ноуте и то: 4988.16.Примерно после 486 обычно "делим на два, получаем частоту", к собственно MIPS (миллионам инструкций в секунду") не имело отношения никогда, на что и намекает префикс. :)
Ждем отечественных BogoMB, BogoGB, BogoTB..
Да-да-да, облака ни при чем. Ваш сервер в опасТности, нуно обновление до облако 3.1.
А что плохого в том, что железка не зативоизированна?
а чего хорошего - тебе хочется попробовать свои силы в написании прошивок, или все же - взять и пользоваться без лишних страданий?Вот второе и есть.
А плохого например то, что машинки иногда сдаются в аренду целиком - и вместе с доступами к этим модулям в том числе. И после съезда предыдущего арендатора - следующий рискует получить нежданный "подарок".
Ну и покупая бу подешево - будешь теперь особо бдителен.
А, не, пох не сломался, это ник сперли, разумные вещи говорит.
А вы согласитесь снимать квартиру у домохозяина, который оставляет на вас уборку за прежним жильцом?
какую нахрен уборку? Тут стены надо ковырять, на предмет наличия в них замурованных жучков.
Проще взорвать тот дом к хренам.
Так нужно перепрошивку разрешать путём нажатия физической кнопки. И никакие кульхацкеры не страшны. А не тивоизировать железку.
Точно, согласен, я обеими руками за. Кто будет телепорты оплачивать?
а у тебя пальцев-то на рук...щупальцах - сколько? (вспоминая cisco ucs director, у которого версии прошивок под конкретную группу серверов (не, никто не обещал что они физически рядом и вообще в одной корзине) настраивались в софте) Мне кажется, с такими особенностями организма не проблема и просочиться в канализацию на пару сотен лье?
Ты, конечно. Мне тоже телепорт не забудь оплатить.
Ну приехали! Прошивать кастомные прошивки через jtag или spi хотя бы ещё можно???