LINUX.ORG.RU

Получен полный доступ к Intel ME

 , , ,


12

9

Хакеры Максим Горячий и Марк Ермолов сообщили о получении полного доступа к сервисному процессору Intel CSME через USB DCI. Ранее они уже демонстрировали возможность запуска неподписаного кода на сервисном процессоре.

В августе Максим Горячий публиковал код, который по всей видимости служит для перманентного отключения процессора (защита от воровства).

>>> Подробности

★★★★★

Проверено: Shaman007 ()
Ответ на: комментарий от Serge10

Зонд всё ещё остался. Просто получили доступ ко всему содержимому ME по встроенному debug-соединению через USB. Чтобы убрать зонд, надо сначала понять, как и чем подписывать собственную прошивку, иначе без зондов компьютер не будет работать дольше получаса.

Quasar ★★★★★ ()
Ответ на: комментарий от Serge10

То есть, JTAG, который выведен нарушу через порт USB и включен по умолчанию - это ли не бэкдор, который используется как неотъемлемая часть эксплойта?

Quasar ★★★★★ ()
Ответ на: комментарий от Serge10

Для меня эксплойт - это удаленный способ получения контроля над компьютером.

У тебя неправильное понимание эксплойта. Эксплойт - это любой нештатный способ получить доступ к заблокированным возможностям.

Quasar ★★★★★ ()
Ответ на: комментарий от Serge10

C чего бы это? Ведь на этих транзисторах крутится залитый пользователем софт...

4.2

На этих транзисторах может крутиться софт, который залит производителем процессора, производителем материнской платы, компьютера и т.д.

Quasar ★★★★★ ()
Ответ на: комментарий от sqq

Если это не x86, то это почти 100% soc, то есть готовый зонд сразу с gps, блютузом и вайфаем, чтоб ты не утруждался отдельным подключением зонда в сеть.

AVL2 ★★★★★ ()
Ответ на: комментарий от NextGenenration

Решение нужное для тивоизация либо drm.

Тивоизация не нужна. Более того, запрещена современной GPL. По поводу DRM не очень понял - контроль за контентом можно вполне организовать и на уровне ядра.

Это позволит хранить и обрабатывать расшифрованные данные так чтобы их не было возможности сохранить.

IMHO, концепция «безопасность через закрытость» давно себя изжила. Существуют вполне безопасные криптографические схемы, реализованные в открытом софте.

Согласно слогану интела это означало что если мой код исполняется на чужом компьютере, то я могу быть уверен в том что он не изменился

На мой взгляд, это неправильно. Владелец компьютера долже иметь полный контроль над исполняемым кодом...

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

А вот этот момент я вообще не понял - каким образом хозяин другой машины может получить доступ к Вашим данным?

Как следствие я не могу быть увереным в коде исполняемом на чужом компьютере.

А Вы и не должны быть в этом уверены. В этом должен быть уверен владелец того компьютера...

Serge10 ()
Ответ на: комментарий от Quasar

Вставляем USB-свисток WiFi или флешку со специально прошитым контроллером. Жертва сама это всё проделает. А если нет, то можно человека подослать, который на пару секунд подержит USB-устройство в разъёме. А ещё можно в USB-контроллер вшить то, что будет в область памяти ME записывать. Уж там-то точно никто искать не будет. Это я только сходу сообразил, что можно сделать без постоянной физической доступности.

Но ведь все тоже самое можно проделать и с обычным компом. Поставить тот же rootkit при наличии физ. доступа совершенно не проблема...

Serge10 ()
Ответ на: комментарий от Quasar

Чтобы убрать зонд, надо сначала понять, как и чем подписывать собственную прошивку, иначе без зондов компьютер не будет работать дольше получаса.

Разве? Я так понял, что проблема уже окончательно решена.

Serge10 ()
Ответ на: комментарий от Quasar

То есть, JTAG, который выведен нарушу через порт USB и включен по умолчанию - это ли не бэкдор, который используется как неотъемлемая часть эксплойта?

Ну, не знаю. Уже писал выше - следуя подобной логике, получается, что SATA-разъем внутри корпуса - тоже бэкдор - позволяет загрузиться со своего диска. Также как и возможности загрузки с usb/CD. Да и вообще любые внешние разъемы - потенциальные бэкдоры...

Serge10 ()
Ответ на: комментарий от Quasar

На этих транзисторах может крутиться софт, который залит производителем процессора, производителем материнской платы, компьютера и т.д.

Может, конечно. А может и софт, залитый пользователем. Еще раз задам тот же вопрос - в чем принципиальная разница с покупкой компьютера с предустановленной Windows? Ведь все тоже самое - можно довериться производителю и пользоваться потенциально дырявой OS. А можно ее снести и поставить свой вариант, в котором Вы уверены.

Точно также и в обсуждаемой ситуации - можно оставить софт, залитый производителем мат. платы, а можно его поменять на свой.

В чем разница-то?

Serge10 ()
Ответ на: комментарий от sqq

какое окирпичивание intel ME? пытаются слить код и риверснуть его. Посмотреть на предмет закладок.

В обсуждаемой теме, да. Я про предыдущие обсуждения, где все усилия были сосредоточены на выведение Intel ME из строя.

Serge10 ()
Ответ на: комментарий от AVL2

то есть готовый зонд сразу с gps, блютузом и вайфаем, чтоб ты не утруждался отдельным подключением зонда в сеть.

Зачем фантазировать-то? Уже ведь известны все компоненты Intel ME, и как они работают. Какие gps, bluetooth и WiFi?

Serge10 ()
Ответ на: комментарий от Serge10

Он говорит про ARM v8-a архитектуру с Trustzone, где он вшит, и насколько я понял из доков, через него идут некоторые аппаратные инструкции, например технология Big.Little. Возможно и на IntelME тоже завязаны какие-то апаратные инструкции. Поэтому, если выдрать весь код, оставив пустое место, скорее всего, материская плата уже не будет работать

sqq ()
Ответ на: комментарий от Serge10

Возможностей у него ещё больше - чтение/запись из памяти и пофиг на то что ОС не разрешает читать память посторонних процессов, а тем более писать в неё. Там DMA доступ есть.

peregrine ★★★★★ ()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от sqq

Поэтому, если выдрать весь код, оставив пустое место, скорее всего, материская плата уже не будет работать

Насколько я понял, эту проблему уже удалось решить.

Он говорит про ARM v8-a архитектуру с Trustzone, где он вшит

Понял, прошу прощения за возражения не по делу.

Serge10 ()
Ответ на: комментарий от peregrine

Возможностей у него ещё больше - чтение/запись из памяти и пофиг на то что ОС не разрешает читать память посторонних процессов

У rootkit есть такие возможности ;). Плюс на порядки большие вычислительные мощности...

Serge10 ()
Ответ на: комментарий от Serge10

Тивоизация не нужна.

Скажи это бизнесу

Более того, запрещена современной GPL

Емнип только в 3. А ядро под 2

По поводу DRM не очень понял - контроль за контентом можно вполне организовать и на уровне ядра.

Нельзя. Если нет тивоизации, то можно пересобрать ядро и слить расшифрованные данные

IMHO, концепция «безопасность через закрытость» давно себя изжила

Ни разу не слышал такого определения. Ты случаем слова не перепутал?

Существуют вполне безопасные криптографические схемы, реализованные в открытом софте.

Который можно пересобрать отключив защиту

На мой взгляд, это неправильно

Только что ты осудил intel me

А вот этот момент я вообще не понял - каким образом хозяин другой машины может получить доступ к Вашим данным?

Вариант того что я арендую к примеру сервер и развернул на нём сайт не рассматривается?

А Вы и не должны быть в этом уверены

Скажи это правоторговцам

NextGenenration ()
Ответ на: комментарий от Serge10

Но ведь все тоже самое можно проделать и с обычным компом. Поставить тот же rootkit при наличии физ. доступа совершенно не проблема...

Жертва может это обнаружить. К примеру если ноутбук спит, то тебе остаётся очень небольшое количество эксплоитов. Разберёшь - владелец заметит.

NextGenenration ()
Ответ на: комментарий от NextGenenration

Скажи это бизнесу

Авторы GPL3 уже сказали - определенно и недвусмысленно ;).

то можно пересобрать ядро и слить расшифрованные данные

Пересобрать-то, конечно, можно. А вот как быть со сливом, не очень понятно.

Ни разу не слышал такого определения. Ты случаем слова не перепутал?

Не слышали про принцип «security through obscurity»?

Который можно пересобрать, отключив защиту

Можно, но зачем?

Только что ты осудил intel me

Нет, я осудил принцип ограничения доступа к софту, крутящемуся на Intel ME, а не саму технологию (независимый сервисный процессор, дающий возможность удаленного мониторинга и управления).

Вариант того что я арендую к примеру сервер и развернул на нём сайт не рассматривается?

Если Вы шифруете контент внутри своей OS, как Intel ME поможет владельцу сервера получить к нему доступ?

Это же полностью эквивалентно ситуации, когда, скажем, я контролирую хост-систему, а Вы крутите у меня вирт. серверы. Хотите сказать, что я технически могу расшифровать Ваш контент?

Serge10 ()
Ответ на: комментарий от NextGenenration

Это и есть руткит. С теми же вычислительными мощьностями, ведь исполняется на твоём процессоре

Это почему? Исполняется он на сервисном процессоре, другой вопрос, что доступ к памяти основного процессора имеет...

Serge10 ()
Ответ на: комментарий от Serge10

Он читает память, всю, включая все переменные программы, т.е. в теории ваш super-puper encription key он будет видеть ещё на момент создания и без разницы, каким сложным алгоритмом шифрования вы будете пользоваться, для него все прозрачно.

peregrine ★★★★★ ()
Ответ на: комментарий от NextGenenration

Полная неспособность ему противостоять

Это в полной мере применимо и к классическим rootkit'ам. Если, конечно, не рассматривать полную переустановку OS как средство противостояния ;).

Serge10 ()
Ответ на: комментарий от Serge10

Авторы GPL3 уже сказали

Хоть одну десктопную систему под 3 лицензией назовёшь?

А вот как быть со сливом, не очень понятно.

Что тут не понятного?

Не слышали про принцип «security through obscurity»?

Через запутанность а не через закрытость

Если Вы шифруете контент внутри своей OS, как Intel ME поможет владельцу сервера получить к нему доступ?
Это же полностью эквивалентно ситуации, когда, скажем, я контролирую хост-систему, а Вы крутите у меня вирт. серверы. Хотите сказать, что я технически могу расшифровать Ваш контент?

Как админ ты можешь подменить к примеру ядро на моей виртуалке или поставить утилиту которая сливает ключи.

NextGenenration ()
Ответ на: комментарий от Serge10

Если Вы шифруете контент внутри своей OS, как Intel ME поможет владельцу сервера получить к нему доступ?

имея полный доступ к памяти где эти ключи лежат..хм. действительно как?

ktk ★★★★ ()
Ответ на: комментарий от Serge10

Исполняется он на сервисном процессоре

Код из secure world исполняется перед кодом из not secure world, поскольку в противном случае невозможно было бы попасть в secure world вообще. Как следствие при загрузке можно сделать всё что угодно, хоть повесить прерывание по таймеру. Как следствие код может начать выполняться на процессоре в любой момент

NextGenenration ()
Ответ на: комментарий от NextGenenration

В большинстве случаев хватит и простой проверки чексумм файлов на диске при запуске с отличной от зараженной ОС, например с LiveUSB. Будет видно где сидит троянец (чексумма бинарика/библиотеки будет отличаться). Сложности только если его посадили в какой-то конфиг или файл, откуда по причине какой-то эпичной дыры он может выполниться при обращении дырявой программы к этому файлу.

peregrine ★★★★★ ()
Ответ на: комментарий от peregrine

Он читает память, всю, включая все переменные программы, т.е. в теории ваш super-puper encription key он будет видеть ещё на момент создания и без разницы, каким сложным алгоритмом шифрования вы будете пользоваться, для него все прозрачно.

Я очень мало понимаю в криптографии, но вроде как существуют алгоритмы, где эта проблема решена? Как пример:

http://www1.informatik.uni-erlangen.de/tresor

Вместо использования “оперативки”, алгоритм хранит секретные ключи в регистрах центрального процессора – восстановить их оттуда гораздо сложнее.

Serge10 ()

Подскажите, можно ли на роутере выявить работу сети собственно IntelME? (Дома поглядываю, новых неопознанных устройств не появляется, роутер с OpenWRT). Или оно не пользуется TCP\IP ?

dv76 ★★ ()
Ответ на: комментарий от NextGenenration

Через запутанность а не через закрытость

Не вижу, честно говоря, большой разницы.

Как админ ты можешь подменить к примеру ядро на моей виртуалке или поставить утилиту которая сливает ключи.

Незаметно от Вас? И каким же образом? Я даже загрузиться после подмены ядра не смогу (нет ключа от зашифрованной корневой файловой системы).

Serge10 ()