В компьютерах Apple закрыта уязвимость прошивки, найденная экспертами Positive Technologies



    Изображение: Unsplash

    Исправленная уязвимость позволяла эксплуатировать опасную ошибку в подсистеме Intel Management Engine и по-прежнему может присутствовать в устройствах других вендоров, использующих процессоры Intel.

    Компания Apple выпустила обновление для macOS High Sierra 10.13.4, которое устраняет уязвимость в прошивке персональных компьютеров (CVE-2018-4251), обнаруженную экспертами Positive Technologies Максимом Горячим и Марком Ермоловым. Подробная информация об этом представлена на сайте технической поддержки Apple.

    Вот как описывает проблему Максим Горячий: «Уязвимость позволяет злоумышленнику с правами администратора получить несанкционированный доступ к критически важным частям прошивки, записать туда уязвимую версию Intel ME и через ее эксплуатацию тайно закрепиться на устройстве. В дальнейшем он сможет получить полный контроль над компьютером и осуществлять шпионскую деятельность, без малейшей вероятности быть обнаруженным».

    О Manufacturing Mode


    Intel ME имеет специальный режим работы — так называемый Manufacturing Mode, который предназначен для использования исключительно производителями материнских плат. Данный режим предоставляет дополнительные возможности, которые может использовать злоумышленник. Об опасности данного режима и его влиянии на работу Intel МЕ уже говорили исследователи, в том числе и нашей компании (How to Become the Sole Owner of Your PC), но многие производители до сих пор данный режим не выключают.

    Находясь в режиме Manufacturing Mode, Intel ME позволяет выполнять специальную команду, после чего ME-регион становится доступным на запись через встроенный в материнскую плату SPI-контроллер. Имея возможность запускать код на атакуемой системе и отправлять команды в Intel ME, злоумышленник может перезаписывать прошивку Intel ME, в том числе на версию, уязвимую для CVE-2017-5705, CVE-2017-5706 и CVE-2017-5707, и таким образом выполнять произвольный код на Intel ME даже в системах с установленным патчем.

    Оказалось, что в MacBook этот режим также включен. Хотя в самой прошивке предусмотрена дополнительная защита от атаки на перезапись регионов SPI Flash (в случае если доступ к какому-либо региону открыт, прошивка не позволяет загрузить ОС), исследователи обнаружили недокументированную команду, которая перезагружает Intel ME без перезагрузки основной системы, что делало возможным обход данной защиты. Стоит отметить, что похожую атаку можно провести не только на компьютерах фирмы Apple.

    Positive Technologies разработали специальную утилиту, позволяющую проверить статус режима Manufacturing Mode. Скачать ее можно по этой ссылке. Если результат проверки показывает, что режим включен, мы рекомендуем вам обратиться к производителю вашего компьютера для получения инструкций по его выключению. Утилита предназначена для ОС Windows и Linux, поскольку пользователям компьютеров Apple достаточно установить указанное выше обновление.

    Об Intel Management Engine


    Intel Management Engine представляет собой интегрированный в микросхему Platform Controller Hub (PCH) микроконтроллер с набором встроенных периферийных устройств. Через PCH осуществляется почти все общение процессора с внешними устройствами, поэтому Intel ME имеет доступ практически ко всем данным на компьютере. Исследователям удалось найти ошибку, которая позволяет выполнять неподписанный код внутри PCH на любой материнской плате для процессоров семейства Skylake и выше.

    О масштабе проблемы


    Уязвимые чипсеты Intel используются во всем мире, от домашних и рабочих ноутбуков до корпоративных серверов. Ранее выпущенное Intel обновление не исключало возможность эксплуатации уязвимостей CVE-2017-5705, CVE-2017-5706 и CVE-2017-5707, так как при наличии у атакующего доступа на запись к ME-региону он всегда может записать уязвимую версию МЕ и проэксплуатировать уязвимость в ней.
    Positive Technologies 169,87
    Компания
    Поделиться публикацией
    Комментарии 23
      0
      Этот IME напоминает бекдор: код, выполняющийся в нем, закрытый, а отключить его нельзя.
        +2
        Напоминает? да это в чистом виде бэкдор, честно, не разу не читал об этой технологии в положительном ключе.
        0
        Нашли и нашли, лучше скажите сколько вам за это заплатил еппл?
          0
          Секрет, кто ж про такое скажет. Да еще и NDA скорей всего подписали, для Open Source community ничего полезного.
            0
            Ну вот, Вы опять отправляете меня на три буквы NDA.) Боюсь разочаровать всех в очередной раз, но у apple нет программы вознаграждения за уязвимости в x86 платформах, поэтому денег не дали и NDA даже не просили подписывать. ;(
              0
              А зачем вы еплу сделали хорошо если он вас за это даже не отблагодарил?
                +3
                В первую очередь помогли пользователям OSX… Спасибо…
                  0
                  Если бы пользователи OSX кушали спасибо и жили в спасибо, то их бы не существовало в природе
                  0
                  Да в принципе из тех же побуждений, из которых я в детстве машинки разбирал — любопытно было;)
                    +1
                    Я о другом..., поделитесь контактами мецената который обеспечивает вашей компании такой не прибыльный род занятий
                  +1
                  Помниться на BlackHat EU 2017 был к вам вопрос, выложите ли Вы ME boot-rom (тот который mask-ROM, OTP(One-Time-Programmable) внутри чипсета), ответ был, что выложите, а воз и ныне там.
                    0
                    Да тут каюсь, мне потом наши юристы сказали, что с распространением чужих блоков не все так просто. Мы рассказывали про основные отличия от bypass’а, который можно найти в сети, совсем недавно (https://github.com/ptresearch/IntelME-Crypto/blob/master/Intel%20ME%20Security%20keys%20Genealogy%2C%20Obfuscation%20and%20other%20Magic.pdf)
              +2
              Скажу спасибо h0t_max и здесь тоже, я потратил на исправление этой уязвимости примерно месяц, потому что нужно не только выключить manufacturing mode, но и сделать так, чтобы он не мог случайно или специально включиться обратно.
                +1
                Можно поподробнее про включение обратно? Мне казалось, что он преднамеренно сделан необратимо отключаемым. Вероятно, что-то можно сделать на очень раннем этапе загрузки, но в этом случае левый код будет отвергнут BootGuard, по идее.
                  +2
                  Достаточно сбросить содержимое ME data region (еще точнее, ME FS) и manufacturing mode включится обратно. Есть сведения про то, что МЕ может самостоятельно выключить MM при определенных настройках дескриптора, но т.к. мы не используем рекомендованные Интел настройки (там закрыт доступ к региону МЕ на чтение, а это не позволяет инспектировать его, что недопустимо), то к нашим машинам это неприменимо. BootGuard мы также не используем по разным причинам, на современных системах начиная с iMac Pro вместо него используется собственные технологии защиты прошивки от модификации.
                    +1
                    Есть мнение, что mmode — это фюз, но на самом деле признаком выключениям этого режимы является файл eom на ФС МЕ, если его нет то прошивка считает, что она в manufacturing modе.
                  0
                  Простите, я кажется туплю, но:
                  Уязвимость позволяет злоумышленнику с правами администратора получить несанкционированный доступ...

                  Серьезно? Мне кажется или злоумышленникпользователь с правами админа — это уже смертный грех. Так при чём тут ME? (я не оправдываю технологию, я в ключе данной статьи, для эксплуатации надо иметь права админа).
                    0
                    Успешная эксплуатация позволяет получить гораздо большие права, чем права администратора в ОС: она позволяет перехватить контроль над МЕ и получить управление еще до старта основного процессора.
                      0
                      Запись в регион МЕ заблокирована на аппаратном уровне(фактически даже ядро и smm не могут в него писать), но manufacturing mode позволяет обойти блокировку.
                        0
                        О как. Спасибо за ответ, теперь всё встало на свои места.
                      0
                      Я правильно понял, что «уязвимость» состоит в не выключенном производителем режиме Manufacturing Mode, а фикс — в его выключении? Я бы назвал такое не уязвимостью, а неправильной конфигурацией (misconfiguration).
                        0
                        Для прошивок неверная конфигурация BIOS — это очень распространенная проблема. Это принято считать уязвимостью так как зачастую через такие ошибки злоумышленники может проникнуть или закрепиться на системе. Вот недавний похожий пример: https://blog.eclypsium.com/2018/06/07/firmware-vulnerabilities-in-supermicro-systems/.
                          0
                          Это и есть мисконф, но уязвимостью он быть не перестает, т.к. позволяет повысить привилегии при помощи ряда шагов, которые по отдельности вроде бы вполне безобидные, а вместе — уже совсем нет.

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

                        Самое читаемое