Комментарии 24
И что теперь — опять всё кардинально переделывать? Может, рано отказались от BIOS и MBR?
PS Старый «биос» был 16 битным, его нужно выпилить хотяб потому, чтоб выкинуть из чипов поддержку старого «реального» режима.
PS Старый «биос» был 16 битным, его нужно выпилить хотяб потому, чтоб выкинуть из чипов поддержку старого «реального» режима.
а как нам тогда в DOS грузиться???? :-o Или, прощай, ДОС?
Я понимаю, что это наверное сарказм, но всё же скажу, что для доса в наше время надо использовать DOSBox, либо собрать себе ретрокомп (это если хочется прям тру экспиреенса).
На современных машинах в досе делать нечего, кроме как биос порошивать (рекурсия какая-то). Большинство старых игр и софта всё равно работать нормально не будет.
Биос уже сто лет в обед шьётся в two-phase (минимум) из операционных систем типа Windows. А особо отличившиеся Биосы имеют даже встроенную утилиту обновления
Но на самом деле да — все более менее свежие матери имеют встроенную функцию обновления. А на самых свежих и вовсе даже если обновлять из доса, то прошивка куда-то заливается, потом происходит перезагрузка в графическую оболочку и непосредственно прошивка происходит в ней.
Ну так собственно я же это и имел в виду, что DOS на современных машинах не нужен, толку с него практического нет никакого и можно уже отказаться и не тянуть за собой этот слой совместимости.
Я может излишне старомоден, но стараюсь не прошивать биос из мультизадачных ОС
рисков ПОЧТИ нет. Я же не просто так про 2phase сказал. Логика в том, что в винде СНАЧАЛА происходит загрузка прошивки в некий блок оперативной памяти или в "секретное" хранилище в самой флэш-памяти (через некий системный драйвер) и уже потом — сама фактическая прошивка. Понятно, что если рубануть питание (=отсутствие ИБП и прочее), то все может стать очень плохо, но это же справедливо и при прошивке из ДОСа.
И опять же как я выше написал — на последних матерях такая друхпроходная прошивка происходит и при обновлении из доса.
Но впрочем просто как интересный факт — когда только стали появляться биосы с встроенной утилитой обновления (а это где-то вторая половина нулевых), то иногда при скачивании свежего биоса была пометка, что ни в коем случае не обновлять через встроенную утилиту, а только через досовскую тулзу. Но это давно было, много лет пожалуй таких пометок я не встречал.
Делать из вот этой статьи про собранный китайцами на коленке из утекших исходников 2015 года руткит, найденный позже на машинах с AMI AptioV производителя второго эшелона, вывод о том, что UEFI сломан весь вообще, и надо все переделывать — это как-то обескураживает даже. Знали бы вы насколько BIOS сломан был, и каким сломанным он стал к его закату…
Прошивка любая подобная будет с багами, потому что у тех тайваньских ОЕМов второго эшелона и так уже маржинальность 10% (т.е. вкладывать какие-то деньги в безопасность, или вообще во что-либо, что напрямую не влияет на продажи — это для них верная смерть от рук конкурентов, которые не вкладывают ничего). И виноват тут не BIOS, не UEFI, не coreboot, и не U-boot, это все малозначительные детали реализации. Виновато простейшее управление рисками, т.е. пока такие атаки находят одну за пару лет, как не пару десятков тысяч в день, чинить прошивку будут стараться только всякие странные граждане вроде меня, а ОЕМу как было пофиг на нее, так и будет дальше — денег он от ее разломанности в плане безопасности пока что не теряет, а потому тратить на нее какие-либо ресурсы для него не имеет смысла.
Если на компе прошить БИОС до установки ОС, можно удалить заразу?
что значит прошить до установки ОС? На программаторе, что ли? Или через какой-нибудь сервисный режим (не знаю есть ли он у x86 платформы, в отличие от других платформ)? Ну, так вирусы не только в БИОСе живут. Не слышал про заражение ME или фирмваря чипсет, но уверен, что это тоже возможно.
По мне это вообще все извращения. Я вот одного не понимаю, если предположим разделить spi микросхему физически на две части с read memory, write memory, в первой храним прошивку, во второй данных и настройки, любые манипуляции с первой только с помощью физического нажатия на кнопку или перемещения тумблера какие вообще на это могут быть атаки.
Физические атаки на перемещение тумблера будут примерно те же, что и на перешивку на программаторе — evil maid, т.е. оставил ноут в номере отеля, вышел в бар за пивом, а тебе в прошивку уже подсадил трояна условный Моссад. Вот эта атака из статьи именно на прошивку (если она вообще реальная, а не ПЕАР) — она именно таким образом и провернута, скорее всего, или похожим очень.
Более того, необходимость двигать тумблер сразу же лишает возможности автоматического обновления прошивки, а т.к. там десяток мегабайт кода (после распаковки), который из крупных кусков кода на С и Ассемблере разных производителей низкооплачиваемые азиатские инженеры собрали на скотч и отборный мат, то в таком коде неизбежны баги, и их очень хочется починить таким образом, чтобы пользователю для этого ничего делать не пришлось. Именно для этого у нас сейчас обновления прошивки ставятся через ESRT прямо из Windows Update и Linux Vendor Firmware Service так же, как и обновления драйверов и остального софта. Просто прошивка современного ПК и сервера — давно уже намного более software, чем firmware, там сетевой стек от FreeBSD, драйверы для FAT32 и NTFS, и OpenGL в BIOS Setup. А сделаешь тумблер — и все, никаких тебе автоматических обновлений, потому что у пользователя лапки, и никакие тумблеры он переключать не будет, потому что боится, потому что сложно, и потому что «лошадь в ванне с огурцами.жпг».
И тумблер WE/RO, и резервирование, и несколько микросхем физически — все это делается давно и успешно на промышленной электронике, обслуживаемой профессионалами за деньги. А тут у нас домашняя электроника, которую пользователь боится больше, чем она его, и потому все подобные начинания будут немедленно зарезаны отделом дизайна и отделом маркетинга у всех компаний, ориентирующихся не на энтузиастов. Для остальных есть ребята типа Purism и system76, у которых там и прошивки все открытые, и тумблер они могут поставить легко, если их убедить в том, что с тумблером их целевая аудитория энтузиастов купит больше их продукции.
Purism — речь про https://puri.sm/products/librem-14/ и прочие модели?
Disabled and neutralized the Intel Management engine
Less binary blob firmware and disabled manufacturer backdoors
Write-protected BIOS and EC chips using hardware switches
Detect software and hardware tampering with PureBoot and the Librem Key
кстати, выделил жирным
А если загрузиться с WinРЕ, затем обновить BIOS (UEFI) и только потом установить систему, поможет это справиться с уязвимостью?
Security Week 41: вредоносный код в UEFI