From: Sergey Matveev Date: Tue, 3 Mar 2026 09:15:17 +0000 (+0300) Subject: Обновлять ли блобы или нет? X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=81df0d2c83457f9a8b3ac243c77b5cc867694dfb;p=stargrave-blog.git Обновлять ли блобы или нет? https://codon.org.uk/~mjg59/blog/p/to-update-blobs-or-not-to-update-blobs/ Человек тут верно описывает все за и против обновления микрокода в железе. Ты можешь доверять производителю и верить что его обновление будет исправлять косяки и улучшать безопасность. Можешь не верить, но у тебя возможно всё равно не будет выбора ухода к другому. Я вот точно не доверяю ни Intel, ни AMD, но куда деваться? Свои CPU я сделать не могу. Эльбрус является закрытой экосистемой в целом. Производители ARM -- всё аналогично. Я могу например не допускать применений, где всё будет уязвимо: не подключать к Интернету, не запускать точно недоверенный софт и всё в таком духе. Я знаю, уверен что у меня в каждом Intel-based компьютере есть Intel ME со своими backdoor. Но не представляю как их можно эксплуатировать. А даже если как-то и можно хитрим образом (не знаю, подсунуть шрифты которые являются Тьюринг полными и через их выполнение что-то спустить в Intel ME и он... да даже не знаю что он бы мог сделать такого, что мне что-то бы испортило, с точки зрения безопасности). DoS вот можно сделать -- это да. Не смертельно для меня. Но я вот и не обновляю микрокод. Возможно он что-то исправляет в плане безопасности. Возможно что-то делает только хуже, добавляет backdoor. Я никак не могу этого узнать. Это полностью закрытое ПО. И я интерпретирую железку как содержающую ROM. Если железка из коробки не работает (вроде в каких-то AMD процессорах нельзя было запустить Linux, без обновления прошивки?), то значит считаем это браком, не работающей моделью железа, а меня обманули и кинули на деньги, дав не работающий продукт. Обновление микрокода это равносильно тому, что у меня забрали прежнее изделие и выдали новое. Я приобрёл вот именно то, что было до этого, я его использовал годами/месяцами и знаю особенности или просто в курсе недостатков с которыми готов мириться. Обновил микрокод -- у тебя на руках уже другое изделие, где внезапно какие-то другие особенности, баги, глюки, проблемы могут всплыть, но меня прежде всё устраивало, я не просил замены. Если железо не работает вообще без загрузки прошивки, то значит производитель хочет, чтобы я выполнил часть его работы. Загрузите прошивку во время инициализации драйвера чтобы устройство заработало -- а сам не можешь, экономишь пару копеек на flash/ROM памяти? Считаешь меня тестировщиком: вывалим на рынок недоделанное говно (как AMD, который не мог загрузить Linux, если не путаю), пипл схавает, потом просто обновит микрокод. Коллега как-то спрашивал: неужели для меня есть разница между тем, что например есть компьютер с CD-ROM, где ты должен вставить диск, чтобы он с него загрузился и заработал, и тем, что диск бы был в нём вставлен заранее и сам привод просто скотчем закрыт. Да! Тут принципиальная разница! В одном случае предполагается что я управляю устройством, загружая в него какой-то код, а во втором случае это не предполагается и мне дают некое законченное готовое к применению изделие. Если в первом случае будет полностью свободный софт, никакого TiVoization, то наверное это ok, допустим. Но такого же почти никогда не бывает. Фигня с обновлением микрокода ещё и в следующем. Вот я такой беру и wget-ом по ссылке с сайта производителя качаю бинарник для заливки в CPU. А где гарантия что по моему IP/стране/AS они не подсунут мне какой-то особенный, не такой как у всех? Можно же будет сделать целенаправленную атаку supply chain? Когда я в магазине приобретаю CPU, то можно подсунуть для страны особые CPU, но никто же заранее не знает кто и когда именно возьмёт в магазине физический процессор? Не, конечно же тоже можно сделать, но сильно дороже и нужно быть сильно большой шишкой. И вот когда OpenBSD (c42a501865e4a91b8fa172840f9a0d35935fde90) без спросу полезла после установки в Интернете качать прошивку для CPU, то это абсолютно недопустимейший пиздец. Именно после этого момента я никогда не буду рассматривать данную ОС для чего бы то ни было. Да, в ней много интересного было сделано, но подобные шаги и решения за пользователя совершенно недопустимы ни под каким предлогом. Причём либо это самомнение всяких Тео такое огроменное (что наверняка так и есть), что они считают что производителям процессоров можно доверять а их пользователи тупые дебилы и доверять им нельзя, либо это выглядит вообще как закладка: отчитываемся кто только что поставил OpenBSD, если что и сразу можем подсунуть особую firmware, атаковать по сути. У меня Meltdown/Spectr-уязвимые процессоры и я не включаю software mitigation для них. Я просто понимаю, что у меня дырявое говно от Intel, на котором нельзя безопасно гонять чужой код, явно недоверенный софт. Я и не гоняю. ---