Pull to refresh

Comments 48

На хабре-гигтайаме новость и обсуждение вначале тут https://habrahabr.ru/company/kaspersky/blog/328100/ а то тут только ATM упомянут, а проблема что показала


Intel выпустила официальный инструмент для проверки системы на наличие уязвимости под Windows 7/10, а также руководство для его использования.

и в другом механизме — ME

Проблема в ME, но эксплуатируется она на системах, где доступна AMT, иначе указанные порты никто не слушает.

http://vpro.by/cve-2017-5689-poyasneniya-k-uyazvimosti-intel-amt-ot-20170501

AMT это, грубо говоря, удалённое управление, основанное на возможностях ME.
Intel выпустила официальный инструмент для проверки системы на наличие уязвимости под Windows 7/10, а также руководство для его использования.

Запустил утилиту на потребительской плате на H97 — ахтунг уязвима, т.к. ME прошита 9.1.25… Прошил на 9.1.41…, запустил утилиту — не уязвима.


А как технологию AMT плата не поддерживала, так и не поддерживает.


Так что перед проверкой утилитой можно и прочитать
https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr
Step 1: Determine if you have an Intel® AMT, Intel® SBA, or Intel® ISM capable system. If you determine that you do not have an Intel® AMT, Intel® SBA, or Intel® ISM capable system then no further action is required.

Очень странно, может, утилита ориентируется исключительно на версию ME?

Наличие бага и возможность его эксплуатации — это разные вещи. Тут вот тоже говорится "требуется, чтобы технология AMT уже была проинициализирована/сконфигурирована."
Очень странно, может, утилита ориентируется исключительно на версию ME?

Об этом я и говорю. У Интела первым делом стоит проверить наличие технологии, а только потом запускать утилиту проверки.


Если почитать первое сообщение на хабре и сообщение Интел (https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr) то эксплуатацией без АТМ тоже пугают.


А если уязвимость есть и без ATM то возможно желательно ее закрыть


У меня есть ноутбуки Lenovo ThinkPad 220-240 которые в бюллетене (вот какой там чипсет? а то любят писать подвержены на чипсете Q...), 10 мая придется шерстить по всем спискам. Но проблема что производители могут и забить на старые модели, не говоря про производителей чисто материнских плат.

Прошивку ME можно обновить самостоятельно. Естественно, лучше предварительно заиметь программатор на случай, если что-то пойдёт не так.
Прошивку ME можно обновить самостоятельно

Да. Так я ее обновил, т.к. производитель перестал выпускать BIOS в 2015 году. Почему-то прошивка установилась 5M, а не потребительская 1.5М (у других на том форуме было похожее) Вот только тот сайт никак не связан с Intel и на сайте Intel ее не найти. В продакшине такое обновление с левых источников несколько рисковано....


Улыбнуло все таки у Lenovo датой выпуска обновлений
ThinkCentre M93/M93p Tiny Affected Target availability 5/17/2017
ThinkPad X230, X230i Affected 8.1.71.3608 Target availability 6/17/2017
ThinkPad X240 Affected 9.5.61.3012 Target availability 6/17/2017


Думаем одно ME обновить, а разница в выпуске у Lenovo в месяц, или в полтора от объявления ....

На системах с Linux локально/удалённо работает? Как проверить?
В качестве первичного экспресс-анализа, произвести сканирование сети на предмет наличия открытых портов TCP:16992-16995, 623, 664 на рабочих станциях, серверах и других узлах сети.

www.infosec.ru/news/10047

Я правильно понимаю, что если эти порты не открываются, то бояться нечего?

В основном случае достаточно просканировать порты 16992/16993 (редиректные порты 16994/16995 и мониторинговые 623/664 не важны).
Только вот с «просканировать» могут возникнуть вопросы, ибо сделать локально будет недостаточно, т.к. сконфигурированная AMT-система может управляться удалённо с выключенным локальным агентом (LMS) и такие порты недоступны с проверяемого компьютера, а только из локальной сети. Но для этого нужно точно знать, что речь идёт именно о AMT-варианте, который в простом случае идентифицируется характерной наклейкой а-ля «vPro support» на вашем компьютере/ноутбуке/планшете.
Линукс тут не причем… проверить сканом портов и проверкой бюллютеней от вендора.
В те же дни официальные сообщения безопасности для своих клиентов выпустили крупнейшие производители серверов и персональных компьютеров: сообщение от HP, от Dell, от Lenovo, от Fujitsu. Там подробная информация об уязвимых прошивках и ссылки на обновленные версии.

Где, где хоть одна обновлённая версия?! Вы бы хоть сами эти ссылки открыли — в качестве решения там только полное отключения AMT, никаких обновлений никто не выложил.
Хотя нет. Fujitsu действительно выложили. Правда почему-то далеко не для всех уязвимых систем. Но хоть как-то.
Находим нужную версию прошивки в списке, идём на страницу загрузки, скачиваем. По факту в рамках версии они универсальные — используя файлы с сайта Fujitsu вполне можно решать проблемы на платах HP/Intel.
Кто-нибудь может вкратце объяснить, почему рынок терпит такое количество низкоуровневых вендорских бэкдоров, подаваемых под видом «технологий»?
он не терпит, он удовлетворяет спрос.
А что, у нас есть спрос на IntelAMT и тому подобные бессмысленные технологии? Кто их вообще использует? Я таких людей и не видел даже никогда.
А ещё есть UEFI, SecureBoot и куча подобного кошмара, которые создавались для разработчиков (главным образом осей и прошивок, чтоб на кодерах экономить), а пользователям от них одни только проблемы.
UEFI/SecureBoot это примеры переусложненных решений. Мне сложно понять как адекватный инженер может создать такое. Есть же Coreboot ну отчего же не взять его за основу прошивок для материнок?
есть конечно, дистанционное обновление «биос»а вообще священный грааль железячников, попробуй об беги 20тыс. компов.
аутсорсинг обслуживания железа короче.
Спасибо!
Ещё один обывательский вопрос, который меня терзает: что за необходимость обновлять именно биос? Если дело в каких-то чипсето-специфичных функциях, почему работой с ними не занимается операционная система через условный «драйвер», который гораздо легче обновить с учётом всех заложенных в ОС механизмов разделения прав и контроля доступа?

Вообще мне не понятна современная тенденция выводить высокоуровневые функции работы с железом за пределы ОС. С учётом относительно более высокой стоимости исправления ошибки в «прошивке» это выглядит странным и нелогичным.
Отличная ссылка! Эволюция маркетингового булшита там хорошо видна.

WakeOnLAN был хорош, возможно, на нем и следовало остановиться, чтобы не выдумывать недооперационку с суперправами доступа к железу.
Между вашим мнением и мнением своих корпоративных клиентов Интел должна выбрать именно ваше?!

Функционал по идее должен давать экономию в обслуживании больших (более 1к) парков пк. Скорее всего именно так он и задумывался. И возможно, что кто-то и пользуется большинством фич.
Лично мне Интел ничего не должна, но если уж она берётся тянуть в свои кривые прошивки функции операционной системы, есть к ней 2 большие просьбы:
1. Чуть более ответственно обращаться с функцией strncmp
2. Предоставить возможность аппаратно отключить небезопасные функции, такие например, как прямое взаимодействие своих зондов с сетевыми картами, прозрачный перехват пакетов и горячая прошивка чего либо, напрямую из сети поступившего.
1. Как по мне, это обычная ошибка при разработке и недостаточное тестирование или его отсутствие. Возможно, что виновные будет призваны на ковер, поскольку в итоге ошибка привела к критической уязвимости множества систем.

2. Ну смысл технологии в этом и заключался. Там, кстати, есть подписанные логи, что бы контролировать доступ и изменения, и ACL, удаленный доступ можно тоже отключить. Вроде как и обновлением прошивок можно управлять.
и горячая прошивка чего либо, напрямую из сети поступившего
на современной микросхеме SPI хранится сразу несколько прошивок и управляют ей сразу несколько мастеров, каждый из которых хранит в своем регионе изменяющиеся во время загрузки и нормально работы данные, и если всю микросхему разом защитить от записи джампером, то все эти модифицируемые данные придется выносить в CMOS SRAM (15 лет назад именно там они и хранились), к которой очень просто получить доступ через CPU IO-порты 70h/71h или 74h/75h и у которой никаких защитных механизмов нет, а сама она в заметных объемах (256Кб, которые сейчас используют большая часть реализаций UEFI, а ведь есть еще ME, GbE и EC) стоит как самолет.
Можено попробовать разнести модифицируемые часто и модифицируемые только при обновлении данные по разным SPI-микросхемам и защитить «джампером» последнюю, но это удорожает производство и разработку платы и прошивки, поэтому массовый рынок этим не заморачивается и, скорее всего, никогда не будет.
источник
Кстати, суть уязвимости очень проста
if(strncmp(computed_response, user_response, response_length))
   exit(0x99);

Куда программиста ни целуй — всюду задница.
Вы так написали, будто ошибка видна без контекста, но проблема в том, что значение response_length — это длина user_response вместо computed_response.
То есть, я правильно понял, тут то же самое что и в нашумевшем Heartbleed для OpenSSL?
Нет, тут все даже проще — если в user_response пустая строка, т.е. response_length == 0, strncmp всегда возвращает 0 (т.е. пароль верный).
Несколько комментариев по вышеописанной уязвимости Intel AMT. Несмотря на действительно болезненную и досадную ошибку «беспарольного доступа», затрагивающую все AMT6+ системы, нужно отметить, что:
  1. Технология Intel AMT должна быть проинициализирована/сконфигурирована (по умолчанию AMT находится в состоянии unconfigured)
  2. Через AMT нельзя устанавливать и как-то манипулировать установленным на компьютере ПО (без специально предварительно установленного для такой процедуры дополнительного ПО с поддержкой Intel AMT, предназначенного для таких целей)
  3. Удалённая загрузка (IDE-R) с помощью Intel AMT не самое простое дело (а главное — проблемное), потому говорить об этом как о уязвимости — нужно иметь действительно хорошую фантазию
  4. Самый реальный ущерб и неприятность от потенциального доступа с использованием данной дыры — это баловство взломщика, который может включить/выключить/перезагрузить компьютер
  5. Заметить доступ с использованием Intel AMT KVM на взломанный компьютер можно достаточно просто — по моргающей рамке вокруг экрана и соответствующем предупреждении в System Tray (если стоит IMSS)
  6. Если кто-то используя данную дырку зайдёт и изменит ваш АМТ-админский пароль, с помощью той же дыры вы сможете изменить его повторно (после чего см. следующий пункт)
  7. Защититься от уязвимости можно просто — добавив аутентификацию по сертификатам (парольная защита — это прошлый век) и отключив доступ по http (порт 16992) в ностройках Intel AMT
Защититься от уязвимости можно просто — добавив аутентификацию по сертификатам (парольная защита — это прошлый век) и отключив доступ по http (порт 16992) в ностройках Intel AMT

Читал как была обнаружена уязвимость и основным основным фактор, который заставил копать в этом направлении была документация AMT:
Intel AMT supports both Digest and Kerberos authentication…
An exception to this is the admin account, which always uses digest authentication.
Continuous use of digest authentication implies that each HTTP request must be sent twice, since
the first attempt results in a 401 Digest challenge response.

То есть защититься можно только ограничив или отключив доступ по http?
Смотря о чём речь. Если речь о системе с поддержкой Intel AMT, то защититься можно:
  • Отключив AMT, но теоретически и по опыту это может иметь проблемы — условно говоря BIOS пишут вендоры, а Intel предоставляет им готовый модуль в виде MEBx, что для них по сути «чёрный ящик» со всеми вытекающими.
  • Расконфигурировав AMT, но теоретически (и точно практически) можно запустить локальное конфигурирования с помощью функции HostBasedSetup, как минимум в клиентский режим (если он не отключён).
  • Включив TLS (порт АМТ 16993), отключив HTTP (порт АМТ 16992) и добавив к дефолтной парольной защите аутентификацию по сертификатам и тогда прежде чем будет запрошен пароль, произойдёт запрос на клиентский сертификат, а если его нет — соединение не будет установлено (т.е. не произойдёт запрос «дырявого» пароля).

Если же у вашей системы нет поддержки Intel AMT, то можно не беспокоиться, т.к. у неё не будет доступа («аппаратного» — через Intel ME в так называемом outbound — внеполосном режиме, когда трафик перехыватывается Intel ME/AMT и он не доходит до ОС) по сети через 16992/16993, т.к. такие порты лишь у Intel AMT (а у Intel SBT нет).
У моей есть системы есть AMT.
Но в MEBx попасть я не могу, порты недоступны, по dhcp никто не светиться, выключенный ПК не занимает сетевой порт.
Если у меня по адресу http://127.0.0.1:16992/index.htm написано: «Web browser access to Intel® Small Business Technology is disabled on this computer, or the page in the address bar is unavailable.», а утилита для проверки говорит «the System is Vulnerable», то уязвимость таки есть или таки нет?

Материнка MSI MS-7923 на H97.
И как мне самому этой через эту штуку порулить своим компом?
(чисто интересно)

Извиняюсь за нубские вопросы.
Для того, чтобы «рулить своим компом», требуется наличие поддержки Intel AMT, а не Intel SBT (SBA), которая в случае материнских плат требует чипсета Qxx (например, Q87 или Q170).
Конечно «могут быть», т.к. Intel ME это «движок», а Intel AMT — это модуль («плагин»), выполняющийся на таком движке. Однако этот модуль (Intel AMT) должен быть в прошивке, а он достаточно объёмный (~5MB). Кроме того другие компоненты — процессор, сетевые компоненты (Ethernet/WiFi), управление питанием должны также иметь компоненты, соответствующие работе Intel AMT.
Потому «могут быть и на других чипсетах, только выключенные» — некорректная формулировка. Если утрировать, то чипсеты Qxx — это «полная версия», а все остальные — версии разной степени урезанности от полной, в том числе это касается и Intel AMT.
И, наконец, потому не «выключенные», а «не включённые», таки это разные вещи.

Утилита кажется тупо смотрит версию ME на материнской плате.


Тоже H97 только Гигабайт H97-D3H, такой же ответ по адресу.


На хабре была ссылка https://habrahabr.ru/company/kaspersky/blog/328100/#comment_10206766 если перейти там по ссылке то там можно посмотреть версию МЕ, ну при желании обновить — но сама программа и прошивка неофициальные и все на собственный риск. Потребуется скачать две ссылки (только у меня встала версия 5М, а не 1.5M)
Обновил, утилита от Intel показывает
Risk Assessment
Based on the version of the ME, the System is Not Vulnerable (verify configuration).
If Vulnerable, contact your OEM for support and remediation of this system.

ME Information
Version: 9.1.41.3024
SKU: Intel® Small Business Advantage(SBA)
State: Not Provisioned
Driver installation found: True
EHBC Enabled: False
LMS service state: Running
microLMS service state: NotPresent


Но повторяю — по адресу такой же ответ «Web browser access to Intel® Small Business Technology is disabled on this computer, or the page in the address bar is unavailable.», а не как на первой картинке поста.

Спросил у supermicro будет ли обновление для моей X9 платы:
Our team is working on this BIOS update in order to fix this issue. Once the BIOS is ready, we'll post in our website immediately. The target release date will be by the end of this month.
127.0.0.1:16992 тупо не открывается, хотя Intel MEI установлен
127.0.0.1 и не будет работать. Потому что пакеты на 127.0.0.1 вообще не доходят до сетевого интерфейса.

Если установлен «Intel® Management and Security Application Local Management Service» (из комплекта Management Engine Components), то всё работает. А без службы действительно только снаружи.
>Самый реальный ущерб и неприятность от потенциального доступа с использованием данной дыры — это >баловство взломщика, который может включить/выключить/перезагрузить компьютер

А что, удаленно поменять прошивку нельзя?
Если совсем коротко — нет.
Sign up to leave a comment.

Articles