Когда лучшее – враг хорошего
24 апреля 2017
Если вы используете современный компьютер, то наверняка слышали про аббревиатуру UEFI. А даже если и не слышали, то, скорее всего, эта технология используется на вашем ПК. Что же это такое и чем это может помочь злоумышленникам?
UEFI (Unified Extensible Firmware Interface) – технология достаточно старая, разработана еще в 2005 году. На данный момент планируется, что UEFI станет заменой BIOS (Basic Input Output System). То есть UEFI – это BIOS нового поколения, и в качестве такового в момент включения компьютера он ищет доступное аппаратное обеспечение, проверяет его конфигурацию и инициирует начало загрузки операционной системы. Но, в отличие от традиционного BIOS, UEFI BIOS обладает гораздо более широкими возможностями.
Например, в UEFI входит SecureBoot – программная технология, при помощи которой UEFI-совместимая прошивка может проверить подлинность исполняемых внешних компонентов (загрузчиков, драйверов и UEFI OptionROM'ов) с помощью цифровой подписи. В случае отсутствия подписи или ее нелегитимности это позволяет отказаться от загрузки недоверенных компонентов.
Предполагалось, что наличие SecureBoot полностью исключит возможность использования вредоносных компонентов – ведь они не будут иметь цифровой подписи! Но гладко оказалось лишь на бумаге, и возможности атаки на загрузчик были найдены.
Дмитрий Олексюк в процессе изучения прошивки ноутбука Lenovo ThinkPad T450s выявил серьезную уязвимость в реализации UEFI, позволяющую выполнить код в режиме SMM (System Management Mode), более приоритетном, чем режим гипервизора и нулевое кольцо защиты, и имеющем неограниченный доступ ко всей системной памяти. Выполнение кода в режиме SMM позволяет отключить блокировку записи во Flash и модифицировать прошивку для отключения проверки Secure Boot или обхода ограничений гипервизора.
Изначально проблема появилась в эталонном коде прошивки для восьмой серии чипсета Intel, после чего была перенесена в прошивки Lenovo и других производителей. При этом в оригинальных прошивках Intel проблема была устранена еще в 2014 году. Кроме Lenovo проблема уже подтверждена в ноутбуках HP Pavilion и материнских платах Gigabyte. По данным компании Lenovo уязвимая прошивка была разработана одним их трех крупнейших производителей BIOS (имя поставщика не называется).
Рабочий прототип эксплойта подготовлен для UEFI-драйвера SystemSmmRuntimeRt и работает на всех сериях ноутбуков Lenovo ThinkPad, начиная с X220. Эксплойт оформлен в виде приложения UEFI, запускаемого из UEFI shell, но не исключается возможность создания эксплойтов, выполняемых из окружения операционной системы (для запуска требуются права администратора).
Чем больше кода, тем больше уязвимостей — это аксиома.
Начнем, пожалуй, с той самой SMM Incursion Attack, о которой тов. maseal упомянул в комментарии к первой части. Я специально поставил слово «современные» в кавычки, ибо этой атаке — сто лет в обед, впервые о ней сообщали еще в 2008 году как проблему тогдашних BIOS'ов, но в 2015 ее вновь переоткрыли Corey Kallenberg и Xeno Kovah. Атака простая как мычание — если обработчик SMI вызывает какой-либо код, находящийся вне SMRAM, то атакующий с правами на запись в физическую память может подменить вызываемый код на свой, и выполнить его таким образом в режиме SMM. А т. к. разработчики UEFI привыкли к доступности EFI Runtime-сервисов, то эти самые сервисы стабильно вызывались из обработчиков SMI на каждый чих (чаще всего это были вызовы GetVariable, SetVariable и ResetSystem). Уязвимости оказалось подвержено столько систем, что проще сказать, где их не было. По моей грубой оценке, если ваш UEFI старше мая-июня 2015 года по build date, в нем гарантированно имеется пара уязвимых к этой атаке обработчиков SMI. Вычистить систему от таких глючных обработчиков достаточно сложно, и т. к. раньше такое поведение вообще не считалось уязвимостью («какой дурак полезет сервисы хукать-то?!») и о том, что так делать нельзя, не было известно простым IBV'шным кодерам — даже сейчас периодически приходят обновления для runtime-драйверов, подверженные этой проблеме. Все очень грустно, в общем.
https://habrahabr.ru/post/267197
Возможностей атак очень много и, к сожалению, перечислить их все в формате выпуска нереально. Тем более что описание уязвимостей на таком низком уровне требует подробного рассказа почти о каждом термине.
#технологии #эксплойт #уязвимостьАнтивирусная правДА! рекомендует
Почему мы посвятили целый выпуск этой проблеме? История UEFI – это отличный пример того, как перспективная идея, развивавшаяся в течение многих лет до того, как продукты на ее основе вышли на рынок, и, по предположениям ее разработчиков, обеспечивающая многоуровневую безопасность, предоставила злоумышленникам возможности, о которых во времена BIOS они и не мечтали. Эти возможности реализуются крайне редко, но исключительно потому, что зарабатывать на Adware и шифровальщиках куда проще. Вирусописатели, как и все преступники, тоже исповедуют акуну матату.
Нам важно ваше мнение
Чтобы оставить комментарий, нужно зайти через свой аккаунт на сайте «Доктор Веб». Если аккаунта еще нет, его можно создать.
Комментарии пользователей
Денисенко Павел Андреевич
13:52:55 2018-08-03
Неуёмный Обыватель
03:02:09 2018-07-05
alex-diesel
14:35:35 2018-04-16
вообще, чем сложнее система, общество, жизнь - тем больше всевозможных уязвимостей (опасностей, вероятных сбоев, умышленных напастей и тд).
Но назад в пещеру не хочу! Поборемся!!
vasvet
20:56:59 2018-03-27
Toma
16:11:18 2018-02-12
Littlefish
23:57:57 2017-06-02
Stan
13:52:50 2017-05-18
Magic
00:18:57 2017-04-25
olgaef
00:11:17 2017-04-25
solec
23:07:31 2017-04-24
Б...а
22:56:56 2017-04-24
Luger
22:42:35 2017-04-24
aleks_ku
22:40:45 2017-04-24
ek
22:31:31 2017-04-24
dyadya_Sasha
22:27:38 2017-04-24
Искать и исправлять совершенно разные вещи. Ищут не только разработчики. То что не найдет пусть самый гениальный разработчик, найдут миллионы бета-тестеров, а затем и клиентов. Ищет сама жизнь)). И исправлять разработчики не ОБЯЗАНЫ, но будут, если конечно же хотят заработать на своем продукте. И законодательная база не сыграет такой роли на исправления (да и особо не подведешь её под это), как законы рынка.
НинаК
22:20:21 2017-04-24
В...а
22:02:12 2017-04-24
vla_va
21:57:01 2017-04-24
Любитель пляжного футбола
21:51:52 2017-04-24
kva-kva
21:47:44 2017-04-24
Dvakota
21:39:49 2017-04-24
Marsn77
21:36:59 2017-04-24
mk.insta
21:29:03 2017-04-24
orw_mikle
21:17:20 2017-04-24
razgen
20:38:43 2017-04-24
**********
То, что разработчики нового, ОБЯЗАНЫ, но не ищут и не исправляют ошибки нельзя относить ко всем. За примером далеко ходить не надо. Так компания "Доктор Веб" постоянно ищет, исправляет ошибки в своих продуктах и выпускает обновления. И кроме этого выпускает обновления совместимости, с выходящими обновлениями Windows.
krant
18:31:18 2017-04-24
forrus
18:28:07 2017-04-24
AntonIT
17:46:53 2017-04-24
Если вы не представляете информационного или финансового интереса
ни один блэк эти уязвимости эксплуатировать не будет.
Andromeda
17:45:04 2017-04-24
DrKV
17:40:56 2017-04-24
Masha
17:31:03 2017-04-24
Ruslan
17:25:10 2017-04-24
L1t1um
15:40:20 2017-04-24
iAFC
15:26:51 2017-04-24
Alexander
14:54:38 2017-04-24
Alexander
14:32:19 2017-04-24
В статье я прочел, что "возможности атаки на загрузчик были найдены". Это значит "ДА". И числовое выражение этой фактической возможности, на мой взгляд, - второстепенно. Возможность есть, значит, она будет реализована "рано или поздно, так или иначе". И меня радует, что Вы об этом знаете, и готовы, при ее возникновении, противодействовать ("можем добавить спец модуль"). А сегодня, конечно, его внедрять нецелесообразно, зачем "тупо потреблять ресурсы и ничего не делать". Но главное, что Вы готовы. Не согласен только в одном, что это рассказ об "ужасах, рассказываемых на ночь". Это не "ужастик", это заблаговременное предупреждение. Ведь вирусописатели, как вода, капли которой камень долбят. Вы хорошо делаете свою работу, и эта статья своевременная. Спасибо.
Azat
14:11:07 2017-04-24
Верните Неуёмного
13:48:21 2017-04-24
dyadya_Sasha
13:47:23 2017-04-24
Иногда Лучшее упрощает сложные нагромождения и звеньев цепи, потенциальных источников дыр становится меньше.
Вячeслaв
13:20:56 2017-04-24
Если подобное будет - естественно мы оперативно добавим защиту
sergeimoloko
12:54:16 2017-04-24
Леонид
12:48:12 2017-04-24
Alexander
12:27:45 2017-04-24
Шекспир как-то заметил, что "к лучшему стремлением своим, хорошему мы иногда вредим". Есть еще такое философское наблюдение, - "закрывая одну дверь, мы всегда открываем другую". Может быть, это просто эквилибристика слов и понятий? Возможно. Прогресс, стремление к лучшему невозможно остановить. Поэтому всегда будет востребованность к "корректировщикам" и лекарям.
Но вот осталась неясность. Имеет ли Dr.Web возможность предотвратить проникновение "любопытных" в нашу систему через уязвимость UEFI? Ведь не все вирусописатели исповедуют акуну матату.
AlexeyOloryal
11:41:55 2017-04-24
Владимир
10:49:23 2017-04-24
Вячeслaв
10:43:35 2017-04-24
Сейчас проблема - защита роутеров и прочей бытовой техники - вот тут непонятно что делать пока
GREII
10:08:42 2017-04-24
Влад
10:07:38 2017-04-24
Пaвeл
10:06:41 2017-04-24
Sasha50
10:00:44 2017-04-24