Хакер #305. Многошаговые SQL-инъекции
Что случилось?
В ночь с 13 на 14 марта 2018 года по московскому времени внимание профильных СМИ и экспертов привлекла пугающая новость: израильский стартап CTS-Labs, основанный в прошлом году и никому до недавнего времени неизвестный, заявил об обнаружении сразу 13 критических уязвимостей в процессорах AMD. Однако усмотреть в заявлении CTS-Labs новую катастрофу, масштабов Meltdown и Spectre, представителям индустрии помешали сразу несколько факторов. Попробуем разобраться, что смутило ИБ-специалистов.
На официальном сайте, посвященном проблемам в процессорах AMD Ryzen и EPYC, аналитики CTS-Labs рассказывают, что им удалось обнаружить сразу 13 критических уязвимостей (стоит заметить, что CVE исследователи не приводят), которые были разделены на четыре класса: RyzenFall, MasterKey, Fallout и Chimera. Исследователи уверяют, что при помощи этих брешей злоумышленники могут установить полный контроль над уязвимой системой, а также извлекать данные из защищенных областей, равно как и в случае с Meltdown и Spectre.
13 критических уязвимостей
Патчей для обнаруженных проблем нет, а представители компании AMD сообщают, что пока занимаются расследованием инцидента и проверкой информации, поступившей от CTS Labs. Дело в том, что CTS Labs уведомили компанию о грядущем раскрытии информации лишь сутки назад, так что производитель попросту не успел подготовиться должным образом и разобраться в ситуации.
Стоит сказать, что никаких глубоких технических деталей и, тем более, proof-of-concept кодов, отчет CTS Labs не содержит. Исследователи рассказывают, что баги были обнаружены благодаря изучению современных процессоров AMD, в ходе которого был найден похожий на бэкдор код, который ранее обнаруживали в прошивке ASMedia. Якобы более детальное изучение этой находки и привело к обнаружению 13 уязвимостей. Ниже мы приводим описания классов проблем, как их обозначают сами аналитики CTS Labs.
MasterKey 1, 2, 3
- проблемы затрагивают процессоры EPYC, Ryzen, Ryzen Pro, Ryzen Mobile. Уязвимости подтверждены и тестировались на процессорах EPYC и Ryzen;
- дает малвари возможность закрепиться внутри AMD Secure Processor;
- позволяет обойти защитные механизмы Secure Encrypted Virtualization (SEV) и Firmware Trusted Platform Module (fTPM);
- позволяет похитить сетевые учетные данные, а также обойти защиту, основанную на Microsoft Virtualization-based Security (VBS), в том числе Windows Credential Guard;
- может использоваться для нанесения физического урона оборудованию (повреждение SPI flash и так далее).
RyzenFall 1 и Fallout 1
- проблемы затрагивают процессоры EPYC, Ryzen, Ryzen Pro, Ryzen Mobile. Уязвимости эксплуатировались и проверялись на EPYC, Ryzen, Ryzen Pro и Ryzen Mobile;
- позволяет записывать данные в защищенные области памяти, в том числе (1) Windows Isolated User Mode и Isolated Kernel Mode (VTL1), а также (2) AMD Secure Processor Fenced DRAM;
- позволяет похитить сетевые учетные данные, а также обойти защиту, основанную на Microsoft Virtualization-based Security (VBS), в том числе Windows Credential Guard;
- малварь может скрываться, используя VTL-1, что делает ее «невидимой» для большинства защитных механизмов.
RyzenFall 2 и Fallout 2
- проблемы затрагивают процессоры EPYC, Ryzen, Ryzen Pro. Уязвимости эксплуатировались и проверялись на EPYC, Ryzen, Ryzen Pro. Ryzen Mobile не касается;
- позволяет отключить защиту чтения/записи Secure Management RAM (SMRAM);
- позволяет разместить в памяти SMM-малварь, «невидимую» для большинства защитных механизмов.
RyzenFall 3 и Fallout 3
- проблемы затрагивают процессоры EPYC, Ryzen, Ryzen Pro. Уязвимости эксплуатировались и проверялись на EPYC, Ryzen, Ryzen Pro. Ryzen Mobile баги не коснулись;
- дает возможность читать данные из защищенных областей, в том числе: (1) Windows Isolated User Mode и Isolated Kernel Mode (VTL1), (2) Secure Management RAM (SMRAM) и (3) AMD Secure Processor Fenced DRAM. Эксплуатация доступна только на некоторых материнских платах;
- позволяет похитить сетевые учетные данные, а также обойти Windows Credential Guard, доставая информацию из VTL1.
RyzenFall 4
- проблемы затрагивают процессоры Ryzen, Ryzen Pro. Уязвимости эксплуатировались и проверялись на Ryzen, Ryzen Pro.
- позволяет выполнить произвольный код в контексте AMD Secure Processor;
- позволяет обойти защитные механизмы, например, Firmware Trusted Platform Module (fTPM);
- позволяет похитить сетевые учетные данные, а также обойти защиту, основанную на Microsoft Virtualization-based Security (VBS), в том числе Windows Credential Guard;
- может использоваться для нанесения физического урона оборудованию (повреждение SPI flash и так далее).
Chimera (софтверные и аппаратные версии)
- проблемы затрагивают процессоры Ryzen, Ryzen Pro. Уязвимости эксплуатировались и проверялись на Ryzen, Ryzen Pro;
- эксплуатирует два бэкдора, заложенные производителем: один на уровне прошивки, другой на аппаратном уровне (ASIC);
- позволяет малвари внедриться в чипсет через микроконтроллер 8051;
- так как чипсет связан с устройствами USB, SATA и PCI-E, закрепившаяся там малварь может скомпрометировать сетевой трафик, включая Wi-Fi и Bluetooth, а также атаковать другую периферию.
Реакция индустрии
Как уже было сказано выше, ИБ-сообщество восприняло заявления CTS-Labs с большим скепсисом. Так, до вчерашнего дня о компании CTS-Labs практически никто не слышал, сайт amdflaws.com был зарегистрирован еще год назад, а опубликованные исследователями видеоролики многие нашли слишком профессионально снятыми и не вызывающими доверия.
Многие известные ИБ-специалисты пишут в социальных сетях, что отчет, в котором отсутствуют какие-либо технические детали, подозрителен и больше похож на whitepaper какого-то ICO, и все происходящее скорее напоминает спланированную маркетинговую кампанию. К тому же представители CTS-Labs определенно преувеличивают значимость обнаруженных проблем, так как для эксплуатации большинства из них злоумышленнику требуется получить едва ли не физический доступ к системе, иметь права администратора, перепрошить BIOS и так далее.
First read of the AMDFLAWS whitepaper (no real technical details given) is: “over-hyped beyond belief”.
— Arrigo Triulzi (@cynicalsecurity) March 13, 2018
This is a whitepaper worthy of an ICO.
And yes, that is meant to be an insult.
"Exploiting MASTERKEY requires an attacker to be able to re-flash the BIOS with a specially crafted BIOS update." lol yes well
— Jeff Kampman (@jkampman_tr) March 13, 2018
Nothing in this paper matters until the attacker has already won so hard it's game over. Not something I'm too interested in, but maybe DFIR people are?
— Tavis Ormandy (@taviso) March 13, 2018
Известный ИБ-эксперт и один из разработчиков ядра Linux, Мэтью Гарретт (Matthew Garrett), описал в Twitter свою интерпретацию перечисленных аналитиками CTS-Labs классов уязвимостей. Ниже приводим несколько его сообщений.
The argument is that if you can replace the firmware then of course you win, except the whole point of having the CPU validate the firmware is that replacing the firmware means the machine doesn't boot. It's not a real threat for most people, but it still matters.
— Matthew Garrett (@mjg59) March 13, 2018
CHIMERA: Someone with root can potentially turn your motherboard chipset into a hardware keylogger that sends anything that looks like a password over the network and you can never fix it look this is kind of a big deal
— Matthew Garrett (@mjg59) March 13, 2018
But there are many other people who don't want to make that assumption - root shouldn't be able to replace your system firmware with malware, root shouldn't be able to extract secrets from your credential VM, root shouldn't be able to trojan your chipset
— Matthew Garrett (@mjg59) March 13, 2018
Линус Торвальдс и вовсе пишет, что его доклад CTS-Labs не впечатлил. «Похоже, мир ИТ-безопасности достиг нового дна», — замечает Торвальдс и добавляет, что многие участники ИБ-сообщества готовы привлекать к себе внимание любыми средствами.
Попытка манипуляции стоимостью акций?
Также многие СМИ и эксперты обратили внимание на подозрительное правовое уведомление, размещенное на сайте amdflaws.com. В тексте представители CTS-Labs сообщают, что уверены в объективности и верности своего анализа, однако отмечают, что они могут иметь некий «прямой или опосредованный экономический интерес» в отношении безопасности компании, речь о продуктах которой идет во всех опубликованных бумагах. То есть AMD.
Кроме того, представители CTS-Labs фактически заранее опубликовали отказ от ответственности и не рекомендуют использовать обнародованную информацию в качестве инвестиционного совета.
Также практически одновременно с отчетом CTS-Labs в сети была опубликована информация о том, что акции AMD могут скоро упасть в цене, что только укрепило сомнения скептиков.
Так опасны уязвимости или нет?
Пока дать конкретный ответ на вопрос, так ли опасны обнаруженные CTS-Labs проблемы, пожалуй, не может никто. Следует дождаться официального заявления со стороны AMD, которое компания обещает представить после тщательного изучения полученной от специалистов информации.
Но стоит отметить, что далеко не все ИБ-сообщество настроено против CTS-Labs и готово объявить сотрудников стартапа мошенниками. Так, глава компании Trail of Bits, Дэн Гвидо (Dan Guido) подтвердил информацию CTS-Labs. Эксперт сообщил, что уязвимости и proof-of-concept эксплоиты для них действительно существуют (исследователи предоставили их Гвидо еще на прошлой неделе), но отметил, что значимость багов, вероятно, была завышена.
Regardless of the hype around the release, the bugs are real, accurately described in their technical report (which is not public afaik), and their exploit code works.
— Dan Guido (@dguido) March 13, 2018
Заявления CTS-Labs также подтверждает и глава компании Cymmetria, Гади Эврон (Gadi Evron). В серии твитов специалист тоже пишет о существовании proof-of-concept эксплоитов, но осуждает выбранный CTS-Labs способ обнародования информации.
First, https://t.co/YHJ4rWFLvN's findings are real. I can confirm they have a PoC on everything. More specifically:
— Gadi Evron (@gadievron) March 13, 2018
1. All vulnerabilities do not require physical access (need ability to run exe as admin)
2. Fallout does not require reflash of the BIOS, you can just run it
[2/3]
Asked why vuln matters if they need admin privileges, Their answer: 1. Bypass credentials guard (Windows). 2. Hide in PSP (AMD secure processor, become insanely persistent). 3. load before CPU (prevent any BIOS update, whatever, and potentially brick the motherboard, etc.). [1/2]
— Gadi Evron (@gadievron) March 13, 2018