image

Забавный тренд последних лет в индустрии производства ПК — это установка светодиодов во все комплектующие системного блока. Каким-то образом возникла идея, что круто выглядящий системник будет к тому же работать немного быстрее.

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

Ключевым моментом в этой уязвимости является драйвер видеокарты. Обычно, ожидается, что драйвер — это слой абстракции, который предоставляет пользовательскому ПО безопасный интерфейс для работы с критическими функциями аппаратных компонентов ПК. Вместо этого, драйвер от Gigabyte оказался скорее просто оболочкой, открывающей всю SMBus шину напрямую на уровень пользовательского кода. Это было сделано намеренно, чтобы программа, работающая под правами обычного пользователя, могла беспрепятственно обращаться с помощью bit-bang к led-контроллеру WS2812. В результате образовалась дыра в слоях безопасности, целью которых является недопущение выполнения вредоносного кода на голом железе. Вишенкой на этом торте является обнаруженный PIC микроконтроллер, подключенный к SMBus шине, который может быть перепрограммирован, предоставляя хакеру постоянное хранилище, неведомое для операционной системы и центрального процессора.

Очень рекомендуем прочитать оригинальную цепочку постов в Твиттере, т.к. она показывает, как именно функционирует механизм, позволяющий установить бэкдор на ПК под видом невинного контроллера светодиодного освещения.

Фото материнской платы от Gani01 [Public domain].

Комментарии (48)


  1. Goron_Dekar
    27.09.2019 18:43
    +2

    Если криво написать драйвер для чего угодно это будет дыра. Подсветка не исключение, да.


    1. build_your_web Автор
      27.09.2019 18:59

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


    1. MinimumLaw
      27.09.2019 21:35
      +2

      Я бы все же сказал, что это не криво написанный драйвер, а плохо спроектированная архитектура. Ущербна сама идея давать пользователю, BitBang'ом управлять контроллером.

      Впрочем, после захардкоденый паролей на FTP с обновлениями прошивок у Asus (с правами стирания и подмены прошивок и обновлений ПО) я уже ничему не удивляюсь. Ну подумаешь гигабайт не захотел разбираться с ACPI/DSDT и подставил костыль в виде прямого доступа к SMBUS. Раньше вообще весь интернет на доверии работал…

      Да, тег «сарказм» стоит, его просто не видно ;-)


      1. Goron_Dekar
        27.09.2019 22:13

        И не надо давать. Заложить весь функционал в драйвере, а он путь дёргает ногами. Со всей остальной переферией этот метод работает же (внезапно: если переписать драйвер для, например, сетевой карты, то можно подёргать ногами на её микроконтроллере прямо из юзерспейса, и помигать светодиодиками)


      1. vladkorotnev
        30.09.2019 05:58

        Ну можно было в лучшем случае сделать что-то типа DeviceIoControl(LEDHandle, C_USR_SET_LED, &new_color_struct) и не парить никому мозги. Что впрочем всё равно оставило бы дыру для обновления прошивки микроконтроллера.
        Можно было развязать шину подсветки и системную smbus, например.
        Да много чего можно было, но именно что "было".


  1. nanoslavic
    27.09.2019 19:07

    Можно ли передавать данные, мигая подсветкой?


    1. drWhy
      27.09.2019 19:12
      +1

      Раз из пользовательского режима доступен интерфейс по словам автора, то хоть на Visual Basic'е прямо из Excel'а.


    1. xi-tauw
      30.09.2019 13:25

      Несколько лет назад я «вымаргивал» данные пользуясь клавиатурными LED'ами.


  1. drWhy
    27.09.2019 19:11
    +2

    Изображённый на КПДВ капот с гордой надписью GIGABYTE тоже угроза безопасности, но не информационной, а физической. При снятии этой декоративной крышки с радиатора температура моста снизилась на 7 градусов. Ещё 10 дала замена терможвачки под радиатором на термопасту.
    Тот случай, когда свистелки не просто бесполезны, а вредят.


    1. nlykl
      27.09.2019 21:05

      Это новый способ добиться ускоренного выхода железа из строя, пришедший на смену протекающим конденсаторам. Я сменил это недоразумение на радиатор высотой 2,5 см от северного моста какой-то старой платы. Заводская нашлёпка грелась так, что было невозможно держать на ней палец, а температура моего радиатора почти не ощущается.


      1. Am0ralist
        27.09.2019 22:50
        +1

        я знал, что не надо выкидывать радиаторы от всех старых куллеров и мостов с старых материнок! буду из них делать радиаторы для новых) Благо коробку набрал уже


        1. stalinets
          28.09.2019 18:10

          Ради интереса приклеил такой круглый радиатор от процессорного кулера к алюминиевой кружке снизу, чтобы быстрее закипала) Результат получился немного неожиданный: закипать стало действительно немного быстрее (как и остывать), но вот после закипания, когда выключаешь газ, вода очень бурно кипит ещё минуты две! Так бурно, что сильно расплёскивается (просто кружка на газу так никогда не кипела). Теплоёмкость куска алюминия, из которого растут лепестки кулера, оказалась весьма немаленькой. Так что надо отключать газ когда только начинает кипеть.


          1. MTyrz
            28.09.2019 23:41

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


            1. Bedal
              30.09.2019 00:14

              Пардон за непотему
              но ровно по этой причине нужно использовать индукционные, а не просто электрические печи.
              Правда, на индукционной блины печь неудобно :-) Но в остальном хорошая, годная вещь.


              1. MTyrz
                30.09.2019 01:47

                Оффтопом на оффтоп
                Мы даже завели, но приспособиться к ней не очень получается. То ли модель дурацкая, то ли я что-то не то делаю — в любом режиме она многократно чередует режим интенсивного нагрева с бурным кипением и разной продолжительности отсутствие нагрева вообще. Тут не то, что блины, тут ничего жидкого толком не приготовишь: с электрической хотя бы поймал момент, перевел на минимум и живешь спокойно — а тут каждые две минуты танцуешь с крышкой, закрыл-открыл, а то сбежит.


                1. Bedal
                  30.09.2019 09:22

                  Даже не знаю, что сказать — ничего подобного и близко не было. Разве что, может, посуда сказалась? Для индукционной печи лучше всего подходит посуда с ферромагнитным основанием и парамагнитными стенками. Говоря по-кухонному, дно из железа (магнит прилипает), стенки из нержавейки (магнит не прилипает).


                  1. SlimShaggy
                    30.09.2019 10:17

                    А на что влияет магнитность? Индукция происходит в любом проводнике, не только в ферромагнетике.


                    1. Bedal
                      30.09.2019 12:17

                      КПД передачи в ферромагнетиках гораздо выше (можете изучить вопрос или просто представить, что дно играет роль сердечника в обмотке плиты), потому греется именно эта часть. Можете проверить, попробовав что-то согреть в алюминиевой кастрюльке :-) Плита, скорее всего, просто выдаст ошибку «нет посуды» и отключит «горелку».


                  1. MTyrz
                    01.10.2019 04:50

                    Посуда в порядке. И лейбл на ней есть, и тест с магнитом проходит нормально.
                    Похоже, режим действительно регулируется временем работы, а не мощностью, как описывает vladkorotnev. И да, моя плитка тоже портативная. Возможно, проблема решается установкой какого-нибудь промежуточного железного блина на плитку для увеличения тепловой инерции… но тогда задача сводится к предыдущей.


                    1. vladkorotnev
                      01.10.2019 08:13

                      А чем железный блин поможет, если не изолировать его от посуды? Ток будет идти по всей конструкции. А если изолировать, то индукционная плитка сведётся к навороченной электрической, и проще взять какую "мечту" за 400 рублей в хозтоварах. Собственно, в итоге так и сделал, так как не проектировать же регулятор свой.


                    1. Bedal
                      01.10.2019 09:10

                      О как, интересно, буду знать. Представьте — не сталкивался с таким.


              1. vladkorotnev
                30.09.2019 06:00

                Ну раз уж подняли тему

                Вот у меня на индукционной китайской заварной крем для торта всегда взрывается — в плане, сначала не кипит даже, а потом на следующей итерации регулятора закипает очень бурно, с разлётом на пол-кухни. С ШИМ-анутой электроплитой у подруги и газовой у родителей таких проблем не было ни разу, так что проблема не в руках :-)


                1. Bedal
                  30.09.2019 09:24

                  не знаю, что и сказать :-) Разве что повторюсь про посуду (см на коммент выше). Не потому, что думаю, что в этом причина, а просто ничего больше в голову не приходит.


                  1. vladkorotnev
                    30.09.2019 09:47

                    Не знаю точно, но подозреваю, что регулятор у плиток повыше классом может как-то регулировать подаваемую мощность более плавно, а не щёлкая релюшкой на мотив "погрели 5 секунд — выключились на 15 — погрели ещё 5 — и т.д." в зависимости от вкрученной мощности в попугаях.


                    А посуду пробовал и такую как описано, и банальную эмалированную кастрюлю, итог тот же.
                    На "медленном огне" вообще ничего держать не получается на ней, со временем начинает итеративно закипать на пару секунд и успокаиваться.


                    Вот мне интересно, может есть какой-то опенсурсный драйвер для индукционок?
                    Потому что на слух — щёлкает-то она с разным периодом, а вот свистит дросселем с одинаковой частотой всегда. И сдаётся мне, что там вместо того чтобы ШИМить выход или ещё как-то подрезать действующее значение на выходе, оно тупо выключает и включает какой-то фиксированный генератор, отсюда и спецэффекты. И самое обидное, что это уже вторая из таких портативных плиток с такой проблемой.


              1. IgorGS
                30.09.2019 14:20

                • "Правда, на индукционной блины печь неудобно :-) "


                • моя жена смотрит на Вас с укоризной ))



                1. Bedal
                  30.09.2019 16:45

                  моей пришлось приспосабливаться, её технология включает подъем сковородки и прочие камлания — а плита при этом отключает конфорку.


                  1. IgorGS
                    01.10.2019 09:30
                    +1

                    хмм…
                    наша плита в таком случае конфорку не отключает,
                    а на одну-полторы минуты переходит в режим ожидания сковороды…
                    я думал, все индукционки так работают.


            1. nikolay666
              30.09.2019 08:44

              Нужно ставить на электроплиту ПИД-регулятор:)


            1. Am0ralist
              30.09.2019 10:01

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


              1. MTyrz
                01.10.2019 04:54

                Манная каша просила передать привет и сочувствие.
                Хотя (тьфу-тьфу), вроде я приспособился. Всего лишь нужно отвлекаться от помешивания и периодического приподнимания кастрюли не больше, чем на три секунды, и все будет в порядке.


      1. red_andr
        28.09.2019 22:46

        Это новый способ добиться ускоренного выхода железа из строя, пришедший на смену протекающим конденсаторам.

        Кстати, у меня материнская плата именно от GIGABYTE работает уже семь лет в режиме 24/7. Причём в качестве одной из главных преимуществ у неё заявлено: «Industry's Leading All Japanese Solid Capacitor Design».


        1. nlykl
          28.09.2019 23:36

          Я о том и говорю: Gigabyte начали ставить твердотельные конденсаторы, остальные производители, чтобы не выбыть в конкурентной борьбе, стали делать то же самое. Казалось бы, рынок получил практически вечные платы, но нет: радиаторы начали стремительно терять площадь.


          1. red_andr
            29.09.2019 02:26

            Ничего, будут и нормальные радиаторы ставить, и писать, что это крутая плата с огромными радиаторами. А там и другие подтянутся.


            1. sumanai
              29.09.2019 22:45

              И сейчас ставят, на игровые платы.


              1. Am0ralist
                30.09.2019 10:08
                +1

                На новое поколение amd ставят с вентиляторами, но при этом говнорадиаторы. Так что через пару лет будет что? Правильно, вентилятор у обычного человека может забиться и встать… И это платы от 15к рублей с такими решениями, блин

                это ещё не плохой
                Что можно увидеть, если снять пластиковый кожух сверху
                image


                1. c_kotik
                  30.09.2019 10:19

                  Вот кстати, любопытно, а нужен ли будет этот кулер, если принудительно перевести на gen3?


                  1. Am0ralist
                    30.09.2019 10:24

                    Не совсем понял вопрос. Это нужно на x570 чип, потому что он много жрёт сам по себе, к процессору отношения не имеет. На b550, надеюсь, такого не будет, ибо он по функционалу схож и от разработчиков x470-го, а не инженерами amd пилился.
                    И, подозреваю, что кулер будет не нужен, если радиатор хороший поставить, но тут вопрос совместимости с видеокартами, скорей всего, появится.


                    1. c_kotik
                      30.09.2019 10:28

                      Я имел ввиду, что сам чип с процессором поддерживает связь по PCIE Gen4. И это основная причина повышения жора.


                      1. Am0ralist
                        30.09.2019 12:44

                        А, не, фиг его знает.


                1. nlykl
                  30.09.2019 14:37

                  Офигеть! Не видел такого со времён чипсета nForce 4. На тех чипсетах он ещё и шумел, как пылесос.


                  1. Am0ralist
                    30.09.2019 14:59

                    Да я пока тоже в прострации — и от цен на мамки, и от таких вот решений в среднем и топовом сегменте)


    1. VT100
      28.09.2019 13:30

      Там ещё и рёбра поперёк конвективных потоков воздуха направлены.


    1. desmond_breezey
      30.09.2019 14:20

      На некоторых старых мат. платах (в особенности по моему Асус этим грешил), любили соединять радиаторы питальника проца с радиатором моста. Так что описанное вами ещё довольно невиноо :)


  1. Sartorio
    28.09.2019 01:09

    Ну надо-же производителям хоть на чем-то деньги зарабатывать! А то такие как я пользуются ноутом 2011 года, и новый не собираются покупать. Не порядок!


    1. Aquahawk
      30.09.2019 10:44

      Lenovo x220? Я таки заменил в этом году www.gpd.hk/gpdp2max


      1. Sartorio
        30.09.2019 11:23

        Lenovo x220? Я таки заменил в этом году

        Нет! Гнусмас 150 на атоме. А ранее вынужденно отказался, от 13 дюймового РоверБука, на целероне «М» 1600, проработавшего с осени 2005 по январь 2017 года, окончательно сдох самсунговский винт на 40 гигов, до этого копивший беды года 2! Да и визг вентилятора поднадоел.


      1. vladkorotnev
        30.09.2019 11:39

        Ну это скорее замена планшету, чем X220. У самого 220 и там как минимум постоянно спасает наличие докстанции и ethernet сразу на борту.
        А у этого чуда половину клавиатуры пальцем перекрыть можно.
        Что порадовало в ассортименте этой компании — ноутбук ещё более мелкий, но зато аж с RS232 на задней панели %)


  1. c_kotik
    30.09.2019 09:56

    Конечно, возможно бредовое сравнение, но теперь таким наивным кажется скандал с поиском закладок у Super Micro.
    Зачем шпионы, когда есть такие товарищи)