Скажи мне, а вот граждане США - это кто? «Американцы»? В смысле, «коренные американцы» или что? Ты не в состоянии различить нацию и гражданство? Или ты думаешь, что в РФ живут люди одной нации? Ты вообще в курсе, что русских в РФ хорошо если половина?
из-за незащищенности микропрограммы CSME на раннем этапе загрузки злоумышленник ко всему прочему в течение этого непродолжительного периода времени может извлечь корневой ключ платформы (chipset key), который записан в микросхеме PСH, и получить доступ к зашифрованным этим ключом данным.
как-то это мутно. хотя на русском языке технические тексты вообще плохо читаются. но всё же что-то мне кажется, что доступ злоумышленника к компу на «раннем этапе загрузки» - это как доступ к компу с кувалдой: от этого нет спасенья. и к тому же это только конкретно подсистема CSME. так что всё не так драматично и для большинства юзеров пофигу.
Для простых людей не драматично, а для собирателей бигдаты и всяких подсматривальщиков в скважины очень даже драматично, как начнут люди эти скважины захлопывать…
дык, у них нет доступа до машины юзера на этапе загрузки. так что юзерам ничего не угрожает, если я всё правильно понимаю. это всякие копроративные сеточки изнутри злые админы могут похакать. но на это большинству юзеров фиолетово. конечно, если они не юзеры проприетарщины :)
Ты не поняла, я про то, что всякие бигдатчики и прочие подсматриватели в скважину за пользоваетелем могут теперь найти эту скважину либо очень маленькой, либо вовсе заделанной, потому что пользователи взломадли их механизм подглядывания и теперь могут его закрыть своим кастомным биосом.
Так пока же никто не знает что там в этих EFI биосах, может там через них информацию с компа воровать можно, а теперь лавочку надо убирать, чтобы после вытягивания ключа её уж совсем не спалили.
что и как ты будешь воровать, если каждый сидит за файрволлом? в современных сетях это практически нереально. при правильной настройке обращения извне просто отсекаются.
Так ты не поняла, то что там напичкано скорее всего твой фаервол вместе со всей ОС в виртуалке держит, так что этот файрвол только тебя же саму и тех кто к их корыту не подпущен ограничивает.
понимаешь, я много лет работала с хардом. с платами, с чипами, с драйверами. и я себе представляю, что хард может, а что нет. поэтому меня такая паранойя не беспокоит.
Не настаиваю на том, что мои предположения что-то большее, чем версия,
в конце концов туда просто могли напихать много чего, а что-то просто не доделать.
Тогда вопрос такой, как тебе факты, описанные в статье по ссылке в ОП?
Intel CSME которая много чего делает, так что не буду перечислять.
Intel VISA. Это полноценный логический анализатор сигналов,
для каких-то манипуляций напрямую из харда.
Что ты подразумеваешь под словом ‘‘хард’’?
Для меня это накопитель, действительно было бы странным располагать на нём систему для тайного доступа к ПК, сетевая карта для этого подходит лучше.
современные системы слишком сложны
БИОС работает в нулевом кольце защиты, доступа к которому ОС не имеет.
Причём работает и во время работы ОС.
Насколько сложным должен быть аппаратный комплекс для того, чтобы закачать из сети бинарник и запустить его в нулевом кольце защиты или пусть не в нулевом, но паралельно с ОС?
Как я понимаю Intel ME вполне может провернуть такое.
Да, вмешаться в работу ОС сложно, но что мешает по iscasi или его аналогу получить удалённый доступ к накопителю, а ключь для расшифровки раздела выкачать с помощью отладчика?
(это всё может содержаться в закачанном и запущенном бинарнике)
К сожалению нет даже стандарта и ТО на конкретные узлы свободного железа.
Например есть у GNU,FSF и OSI единое положение о том, какими должны быть програмные и аппаратные интерфейсы у свободного накопителя информации?
Такие, чтобы
системный программист мог написать модуль ядра и сказать себе, ну железо под него когда либо выпустят.
программист контроллеров или плис мог написать прошивку сказав себе, ну устройство под неё по моим спекам на неё кто нибудь сделает, а какой ни будь системный программист напишет драйвер.
производитель оборудования мог бы сделать и спаять платку с аппаратным контроллером и запоминающим устройством и сказать, ну драйвер и прошивку для него кто либо напишет.
Пока нет утвердительных ответов на все три вопроса никаких опенхардварных запоминающих устройств не будет.
С другим оборудованием аналогично.
И этого утвердительного ответа не будет до тех пор, пока не будет пока идеологические лидеры свободного ПО не предложат точных спецификаций и не будут настоятельно просить производителей чипсетов делать чипсеты и материнки на их основе.
Это к стати решило бы и часть проблем безопасности, потому что можно было бы сделать аппаратные порты для подключения пользовательской и административных консолей, которые верефицировать по прошитому в биос ключу.
Это к стати решило бы и часть проблем безопасности, потому что можно было бы сделать аппаратные порты для подключения пользовательской и административных консолей, которые верефицировать по прошитому в биос ключу.
То есть вот идея конкретного устройства, в биос и в клавиатуру прошивается две пары ключей, которые
делают бессмысленным кейлогер.
позволяют БИОС и ОС понять, что подключена не случайная, а определённая клавиатура и какие действия с этой клавиатуры можно совершать(вход и редактирование настроек БИОС к примеру, право входа и запрет входа под определёнными логинами)
Пользователю с клавиатурой позволяют понять, что он подключается к чему нужно, а не какому либо другому оборудованию, например эмулирующему систему кейлогеру, ну или просто к тому же компьютеру но со сброшенными настройками БИОС.
как приятный бонус на минидисплее клавиатуры можно будет видеть и редактировать набираемую строку перед отправкой её в компьютер.
Это будет неудобно с гуевыми редакторами, но тогда
клавиатура должна уметь в два режима для посимвольного и построкового ввода, которые должны переключатся как в ручную пользователем, так и автоматически с хоста, к которому она подключена.
Клавиатура, а по сути минитерминал, должна предусматривать подключение к себе или наличие в себе манипуляторов типа мышь, трекбол и прочих.
В биос должны быть настройки ключей шифрования ввода и вывода в клавиатуру с назначением этим ключам прав разрешения или запрета входа в БИОС, изменения ключей в БИОС, выбор варианта загрузки, взаимодействия с получившей управления ОС административными(aka root) или с пользовательскими привилегиями с расшифррвкой ввода/вывода средствами БИОС с направлением в соответствующий аппаратный виртуальный tty(exmpl /dev/tty_root,/dev/tty_username) порт по которому однозначно можно определить какие ключи используются и связанные с этим ключами комплексы прав)
И так, я придумал сейчас хороший и удобный стандарт, который каждый желающий может использовать и изменять на условиях GPL_v2 и CC BY SA по своему выбору.
Поскольку такое устройство должно быть удобным и полезным, то такая идея должна прийти в голову не только мне.
И так, Linux Fundation,GNU,FSF,OSI и кто ещё предложил и продвигает такие аппаратные стандарты?
Просит интел добавить в чипсет соответствующий интерфейс?
Подсистема stty в ядре умеет опознавать подключение терминалов с шифрованием, запращивать у драйвера безопасности(настройки в БИОС,PAM exmpl) и применять соответствующие ключи?
Всё это давно можно было сделать, но ничего из этого не сделано.
То есть после загрузки в UEFI биосе ядрос ОС выполняется в ring0 и имеет полный доступ к процессору и биос ни как не контролируется?(я не изучал особо этот вопрос)
Ну возникает она не у меня, а у всяких админов, ну и вообще удовлетворительного решения не имеет, обычно просто всё решают механическим разрушением разъёмов USB на материнской плате.
какое «обычно»? какое механическое разрушение разъёмов на плате? что за бред я только что прочитала. я видела сотни админов, и никто не крушил разъёмы на платах каменным топором.
Причём работает и во время работы ОС. Насколько сложным должен быть аппаратный комплекс для того, чтобы закачать из сети бинарник и запустить его в нулевом кольце защиты или пусть не в нулевом, но паралельно с ОС?
Intel ME который уже давно обязателен имеет отдельный процессор с отдельной памятью, имеющий полный доступ к Ethernet и даже свой собственный MAC и IP адреса. И что за код там исполняется знает только Intel. Есть подозрение что и полный доступ к памяти и возможно к остальному то-же есть. Так что все уже давно готово для массовой установки бэкдоров удаленно.
мне уже надоела эта пустая перепалка. иди, напиши что-нибудь на микроконтроллере, чтобы оно якобы что-то читало с винта на неизвестной системе или из той мешанины, что представляет из себя рантайм RAM, а потом будешь тут рассуждать. я не буду продолжать бессмысленное словоблудие.
иди, напиши что-нибудь на микроконтроллере, чтобы оно якобы что-то читало с винта на неизвестной системе или из той мешанины, что представляет из себя рантайм RAM
Я думал что у тебя более фундаментальные возражения.
dd снимающего образ с примонтированного и используемого диска в качестве прототипа подойдёт?
Да, образ будет с ошибкамиЮ но не весь.
А так моделью для такого софта может быть либая виртуалка, хоть virtualbox, хоть virt-manager, когда образ диска можно увести обычной командой cp.
на неизвестной системе
Для кого надо известной, семейств то систем, пусть и более десятка, но тем не менее не так и много, ну а windows и ios сами отдадут всё на блюдечке.
что представляет из себя рантайм RAM
Это в тебе избалованный пользователь Linux говорит, а вот виндузятник тебе про реверс кода на IDA Pro расскажет.
И надо учитывать ещё то, что даже всё это не учитывать, то процессор хранит карту памяти и исполняемого кода во всяких аппаратно поддерживаемых таблицах(GDT), в крайнем случае при поиске вероятного места расположения ключа можно опереться и на них.
И в любом случае, твой аргумент по сути это ‘‘вы слишком глупы чтобы суметь это сделать’’, а это не совсем надёжно.
… что представляет из себя рантайм RAM, а потом будешь тут рассуждать.
Твой аргумент по сути это ‘‘вы слишком глупы чтобы суметь это сделать’’, а это не совсем надёжно.
Например некогда мне потребовались утилиты из initrd, что я делал?
Думаешь читал маны и справку?
В принципе да, но только не те, что ты подумала.
Я искал в распакованном initrd с помощью hex редактора слово ‘‘pivot_root’’ пока не находил область в которой находится первичный скрипт инициализации, после чего тем же hex редактором правил скрипт прямо в этой области удаляя команду chroot и pivot_root и прописывая вместо них /bin/bash.
Ну а после этого загружался с изменённым initrd и копировал его содержимое в отдельную папку.
Потом когда освоился просто удалял из initrd команду размонтирования инициализационной базовой системы.
При этом учти, что я не знаю консольные утилиты linux и не умею пользоваться основной массой их возможностей и только апо этому вынужден выполнять поиск руками, так то эта замена должна хорошо скриптоваться.
Думаю что задача поиска ключа шифрования раздела хотя и будет более сложна, но в принципе аналогична, надо сначала найти код dev/loop, а потом посмотреть с чем он работает.
В любом случае, ключь точно не будет в юзерспейсе, а это сразу значительно сократит объём просматриваемого ОЗУ, так как основная масса ОЗУ обычно занята пользователем и значит находится вне ring0 ring1
Из тех что я знаю в ASIC есть:
Китайский клон STM32F103T8U6 но вместо ARM там RISC-V - GD32VF103TBU6. Цена кристалла была $1.26 а девборды $11: Однокристалки на RISC-V теперь и по $1.27 .
Еще есть компания SiFive которая серьезно этим делом занялись, есть как дешевая борда HiFive1 за $59 с микроконтроллером на RISC-V(более 300MHz). А есть более серьезная HiFive Unleashed за дохрена денег, что-то более штуки баксов, зато четыре 64 битных ядра на 1.5 GHz плюс еще одно отдельное 64 битное ядро для вспомогательных вещей и 8GB DDR4 ECC памяти для всего этого действия. Они там уже целую линейку процессоров запланировали. Когда начнут массовое производство думаю станут доступны по нормальной цене.