Thrangrycat: критическая уязвимость в прошивке устройств Cisco позволяет хакерам устанавливать на них бэкдоры +10





Исследователи информационной безопасности обнаружили опасную уязвимость в прошивке, которая используется на устройствах Cisco разных типов. Ошибка CVE-2019-1649 или Thrangrycat позволяет злоумышленникам устанавливать на маршрутизаторы, коммутаторы и межсетевые экраны бэкдоры.

В чем проблема


Уязвимы продукты Cisco, поддерживающие функцию Trust Anchor module (TAm), которая используется для загрузки устройств в безопасном режиме (Secure Boot) – с 2013 года она включена в прошивки практически всех устройств enteprise-уровня.

Исследователям удалось обнаружить целый ряд недостатков проектирования в прошивке. В их результате злоумышленник может внести изменения в Trust Anchor module через модификацию FPGA bitstream, который никак не защищен и хранится во флеш-памяти, и загрузить вредоносный загрузчик.

Для проведения атаки злоумышленнику нужно получить root-права на устройстве. Поэтому в бюллетене безопасности специалисты Cisco отметили, что требуется также и локальный доступ к оборудованию. Однако исследователи, обнаружившие уязвимость Thrangrycat, на посвященном ей сайте объяснили, что возможна и удаленная эксплуатация – для этого хакер может использовать сначала RCE-уязвимость веб-интерфейса операционной системы Cisco IOS CVE-2019-1862.

Эта ошибка позволяет администратору исполнять случайные команды в оболочке Linux с root-правами. Поэтому использовав сначала ее, затем взломщику ничто не помешает эксплуатировать и уязвимость Thrangrycat.

Как защититься


Поскольку TAm – это модуль, использующийся напрямую в прошивке «железа», то исправить фундаментальную проблему безопасности обычным патчем не получится. В бюллетене Cisco сказано, что компания планирует выпустить патчи для прошивки.

Пример уязвимости Thrangrycat демонстрирует, что подход «безопасность через неясность», который используют многие разработчики оборудования, ставит под угрозу безопасность конечных пользователей. ИБ-специалисты не один год критикуют эту практику, однако это не мешает крупным производителям электроники под предлогом защиты интеллектуальной собственности требовать подписания соглашений о неразглашении для получения технической документации. Ситуация ухудшается из-за возрастающей сложности микросхем и интеграции в них различных проприетарных прошивок. Это фактически делает невозможным анализ таких платформ для независимых исследователей, что ставит под удар как обычных пользователей, так и производителей оборудования.

Помимо Cisco, примером возможных побочных эффектов принципа «безопасности через неясность» может служить технология Intel Management Engine (Intel ME), а также ее версии для серверных (Intel SPS) и мобильных (Intel TXE) платформ.

В четверг, 16 мая исследователи Positive Technologies Максим Горячий и Марк Ермолов расскажут, как используя недокументированные команды можно перезаписать память SPI flash и реализовать локальную эксплуатацию уязвимости в Intel ME (INTEL-SA-00086).

Участие в вебинаре бесплатно, необходима регистрация.

Вы можете помочь и перевести немного средств на развитие сайта



Комментарии (8):

  1. vanyas
    /#20157280

    Для проведения атаки злоумышленнику нужно получить root-права на устройстве

    Тоже мне уязвимость

    • CodeRush
      /#20157862

      Еще какая уязвимость, повышение привилегий от локального рута до полного, окончательного и бесповоротного контроля над устройством, включая его root-of-trust.

      • JerleShannara
        /#20162462

        Я правильно понял, что эта атака уровня «ваш корневой сертификат теперь заменён на наш/кроме вашего корневого сертификата теперь валиден и наш» и как результат вся цепочка secure boot натягивается без вазелина, если у вас циска?

        • CodeRush
          /#20162652

          Именно так, и даже веселее еще, потому что можно менять не только корневой сертификат, но и вообще все поведение корня доверия, причем там даже не код меняется как таковой, а FPGA bitstream. Всякое видел в своей жизни, но такое — в первый раз.

          • JerleShannara
            /#20162704

            Красота то какая, лЯпота. Мне, как разработчику на FPGA, это очень нравится. По сути дела получается, что подменив битстрим я вообще могу чуть ли не альтернативную прошивку в устройство поставить так, что фиг её обнаружить удастся. Или к едрени фене сделать из этого корня доверия встроенный «корень DDoS»

            • CodeRush
              /#20162770

              Непонятно, к чему этот FPGA подключен, так что собрать себе на нем NES и играть в Черного Плаща прямо на коммутаторе не получится, я думаю, но и без этого уже зашквар полный. С другой стороны, дизайн нормальной цепочки доверия — не хрен собачий, а реализация — и подавно, и потому можно тут смеяться над ними в кулак, пока внезапно не окажется, что у самих рыло в пуху.

              • JerleShannara
                /#20162830

                Мне не понятно одно — уже куча фирм налетали на клонирование китайцами их устройств. Причем от того, что битстрим на FPGA не был шифрованым/подписаным/была забыта установка бита запрета считывания прошивки. Почему в cisco не сделали шифрование прошивки такого важного узла, чем они думали, при учёте того, что шифрование битстрима уже сто лет в обед как есть в жЫрных FPGA, а с MAX10 оно и в дешевых CPLDшках даже появилось.
                Считать биткоины может там и не выйдет, но с учетом того, что через этот корень прокачивается прошивка, вполне можно реализовать атаку формата «щяс мы вам коммутатор вырубим», если у нему можно как-то постучаться из сети(к примеру «типа прилетело обновление прошивки».

                • Brak0del
                  /#20164190

                  Исходя из описания на Thrangrycat, рискну сделать следующие предположения и комментарии: 1. функциональность Trust Anchora достаточно мелкая, поэтому можно было обойтись дешёвой мелкой плисиной; 2. шифрование битстрима в дешёвых мелких FPGA есть сравнительно недавно, в тех же мелких спартанах 6 ещё не было. 3. Задача прямых манипуляций с битстримом FPGA раньше считалась не совсем тривиальной, в частности вендоры держат в секрете полный формат битстрима, и в диссерах мелькали только модификации самых базовых частей типа блочной памяти или содержимого некоторых LUT-блоков. Но к году 2017 её в принципе уже раскачали. 4. Просто подменить битстрим на другой вроде недостаточно, там ведь формат взаимодействия какой-то между устройствами, залочится ещё. Как я понял, фишка в том, что атакующие расхачили прошивку FPGA и смогли не копаясь в ней слишком глубоко (по их словам without RTL reconstruction) убрать или изменить критические проверки. Опять же, не то чтобы это совсем простая задача, имхо.