[Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot

[Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: PRSG on 2022-06-20 18 ч.

1. Постановка проблемы
2. Пути решения проблемы
3. Как это будет работать
4. Сборка coreboot.rom и перепрошивка
5. Установка и настройка ОС
6. Добавим проверку компонентов загрузки
7. Заключение

Предупреждение 1: Все ссылки ведут в clearnet!
Предупреждение 2: Автор не несет ответственности за потерянное время, нервы, файлы, оборудование, здоровье, годы жизни...

1. Постановка проблемы


Как известно устанавливая GNU/Linux дистрибутив (Ubuntu, Debian, etc) можно включить дисковое шифрование, однако полным оно не является, так как раздел /boot останется открытым чтобы ОС могла загружаться. А это на минуточку, загрузчик и ядро. Пропади устройство из поля вашего зрения и доблестный тащ майор дежурящий под окном воспользуется ситуацией и подменит шаловливыми ручонками важные компоненты и станут все ваши секретики общественным достоянием. А ведь нам оно не надо, безопасность и осторожность излишними не бывают.

В своей предыдущей статье я уже описывал способ установки открытой альтернативы BIOS/UEFI и устранение бекдоров в виде Intel ME и AMD PSP. Здесь же эта инструкция будет дополнена установкой ОС с полноценным полнодисковым шифрованием, развернута доп. настройками и описаны способы претворения этого в жизнь с минимальными усилиями.

2. Пути решения проблемы


1) На Windows полнодисковое шифрование настраивается через TrueCrypt или VeraCrypt. Но если вы тут и все еще сидите на винде, то вскоре будете сидеть в иных местах, так что отметаем сразу. На самом деле в GNU/Linux все быстрее и проще, но об этом дальше.

2) Новомодно-дырявая штука вроде UEFI, которая будет сверять подписи компонентов хранимых в разделе /boot достойна выброса в ту же помойку, где винда. Не только за закрытость, но и за дырявость. Мы ведь никому не верим. (у UEFI есть открытая альтернатива TianoCore, но лучше сделать /boot недоступным даже для просмотра).

3) Один истинный путь: [здесь могла бы быть реклама вашей секты] ставить только opensource компоненты и уповать на их прозрачность, простоту, постоянное развитие и тестирование со стороны сообщества. Важно иметь ввиду: необходимо иметь открытые компоненты на всех уровнях. И инициализация железа, и сама ОС. Если у вас стоит Windows на открытом альтернативном BIOS/UEFI, то это также бесполезно как открытая ОС на заводском BIOS/UEFI с нетронутыми прошивками Intel ME и AMD PSP.

Если в области открытой ОС выбор обширен, то в области открытых альтернативных BIOS/UEFI вариантов немного:

Coreboot — основной и наиболее продвинутый вариант, все нижеследующее сделано на его базе. Допускает некоторое незначительное количество проприетарного кода (блобов) для запуска того или иного аппаратного обеспечения: драйверов для обнаружения адаптеров, видеокарт, ethernet, части кода для Intel ME и т.д. Coreboot отвечает за инициализацию аппаратного обеспечения во время включения устройства и передачу процесса загрузки дальше по цепочке (т.н. payload, а те в свою очередь уже загрузчику и ядру).
Самый свежий поддерживаемый ноутбук Lenovo ThinkPad T440p, самая свежая матплата MSI PRO Z690-A , кастомные ноутбуки со свежим «железом» выпускает Purism.

Libreboot — ответвление Coreboot, не допускающее наличие блобов, в следствие чего не поддерживает оборудование свежее 2008-2009 годов. Максимально возможный уровень открытости на серийно производимых и все еще доступных устройствах. Процесс сборки и прошивки сильно упрощен в сравнении с Coreboot. Дедушка Столлман пользуется таким на T400s с установленным Trisquel.

Skulls — вариант сборки Coreboot на основе готовых образов для ноутбуков Lenovo (X230, X230t, T430, T530, T440p), упрощенный процесс сборки и прошивки.

osboot — задумка как и в Skulls: упрощение процесса сборки и прошивки для большей части устройств с поддержкой Coreboot, по дефолту включает также payload GRUB2.

Heads — вариант сборки Coreboot на основе готовых образов, содержит инструменты и окружение Linux для создания доверенной цепочки загрузки с использованием ключей GPG и TPM, которые при каждом запуске будут сверять подписи и целостность компонентов прошивки устройства и загрузчика. Установку и настройку простыми не назвать. Рекомендуется использовать в связке с QubesOS. Я не проверял работу SeaBIOS и GRUB2 на нем и вероятно в рамках данной темы он не подойдет. Название перекликается с другой стороной монеты, которая именуется Tails.

1vyrain — модификация заводской прошивки для ноутбуков Lenovo (X230, X230t, T430, T430s, T530, W530), снимает блоки (whitelist) на нештатное оборудование, частично отключает (но не удаляет) Intel ME. Но, самое важное, позволяет прошить Coreboot программным методом не прибегая к программатору, подключению второго устройства, разборке ноутбука, и т.д., но об этом далее.

Таким образом, на первом этапе необходимо выбрать: устройство (чаще всего это ноутбук) из списка поддерживаемого и вариант установки Coreboot наиболее подходящий под ваши умения, а также определиться с дистрибутивом GNU/Linux.

Хозяйке на заметку: ноутбук Lenovo G505s — наиболее производительный ноутбук полностью лишенный бэкдоров в виде Intel ME или AMD PSP. Coreboot поддерживается и рекомендуется.


3. Как это будет работать


На этапе сборки Coreboot нам понадобится добавить доп. модули («полезные нагрузки», payload):
SeaBIOS — открытый аналог BIOS, при загрузке нажав Esc можно выбрать диск, флешку, другой payload и т.д.
GRUB2 — с его помощью можно расшифровывать полностью зашифрованный диск и далее загрузить саму ОС.
(опционально): KolibriOS — минималистичная ОС на полтора мегабайта работающая из ОЗУ.
(опционально): чтоб блеснуть перед одноклассниками игры тетрис (tint) и DOOM (coreDOOM), тесты для ОЗУ (Memtest86+).

В итоге получится следующая цепочка (как примеры):
Lenovo T440p → Coreboot → SeaBIOS → GRUB2 → Debian
Lenovo T400s → Libreboot → SeaBIOS → GRUB2 → Trisquel
Lenovo X230 → osboot → SeaBIOS → GRUB2 → Hyperbola

Т.е. при включении Coreboot (или его разновидность) инициализирует (запустит) все «железо» и передаст процесс загрузки в SeaBIOS, где нажав Esc мы выберем payload GRUB2, введем пароль от диска и загрузится наша ОС.


4. Сборка coreboot.rom и перепрошивка


Если выбрали Coreboot, то действуем по инструкции из моей предыдущей статьи, но отметим в:

Payload ---> Secondary Payloads ---> Load GRUB2 as a secondary payload


GRUB2 version (2.04) ---> HEAD

Если по каким-то причинам GRUB2 не собирается или не стартует, его можно взять из *.rom собранного в Libreboot или osboot, извлечь:

./build/cbfstool build/*имя*.rom extract -m x86 -n img/grub2 -f grub2.elf

И добавить в ваш *.rom:

./build/cbfstool build/coreboot.rom add-payload -f grub2.elf -n img/grub2 -c lzma


Если выбрали Libreboot: делаем по прекрасной инструкции, payload GRUB2 соберется автоматически, вариант для прошивки выбирайте seabios_withgrub_*_usqwerty.rom.

Если выбрали Skulls: инструкция на сайте, добавлять payload GRUB2 надо вручную.
Пример:


1. run sudo ./skulls.sh -b t440p on your current T440P Linux system
2. Power down, remove the battery. Remove the keyboard and palmrest. Connect a hardware flasher to an external PC (or a Raspberry Pi with a SPI 8-pin chip clip can directly be used), and run sudo ./external_install_bottom.sh on the lower chip and sudo ./external_install_top.sh -b t440p on the top chip of the two.
3. For updating later, run ./skulls.sh -b t440p. No need to disassemble.


Если выбрали osboot: инструкция на сайте, payload GRUB2 соберется автоматически, вариант для прошивки выбирайте seabios_withgrub_*_usqwerty.rom
Пример:

## подготовить:
git clone https://notabug.org/osboot/osbmk
cd osbmk
sudo ./build dependencies debian

## снять дампы и соединить их в один:
cat bottom.rom top.rom > full_backup.bin

## извлечь блобы из дампа:
./blobutil extract x230_12mb full_backup.bin

## собрать прошивку:
./build boot roms x230_12mb

## добавить блобы в прошивку:
./blobutil inject -r x230_osboot.rom -b x230_12mb


Если выбрали Heads: как я и отметил выше ебитесь с ней сами, я не проверял как на нем работают SeaBIOS и GRUB2, инструкция по сборке и установке есть на сайте.

Как только собрали *.rom не спешите его прошивать. Вне зависимости от разновидности Coreboot, создайте файл grub.cfg с текстом:


set prefix=(memdisk)/boot/grub

insmod ahci
insmod crypto
insmod cryptodisk
insmod btrfs
insmod ext2
insmod gcry_rijndael
insmod gcry_sha256
insmod luks
insmod lvm
insmod nativedisk
insmod part_gpt
insmod part_msdos
insmod password_pbkdf2
insmod pbkdf2
insmod regexp
insmod usb_keyboard
insmod usb
insmod usbms

set gfxpayload=keep
set default="0"
set timeout=3
set pager=1

menuentry 'Load Operating System (incl. fully encrypted disks) [o]' --hotkey='o' {
cryptomount -a
set root='(lvm/matrix-rootvol)'
configfile (lvm/matrix-boot)/grub/grub.cfg
}
menuentry 'Poweroff [p]' --hotkey='p' {
halt
}
menuentry 'Reboot [r]' --hotkey='r' {
reboot
}


И добавьте этот grub.cfg в ваш *.rom, например:

./build/cbfstool build/coreboot.rom add -n grub.cfg -f grub.cfg -t raw


(опционально): для KolibriOS: распаковать kolibri.img и выполнить:

./build/cbfstool build/coreboot.rom add -f kolibri.img -n floppyimg/kolibri.lzma -t raw -c lzma


После чего остается прошить *.rom в ваше устройство, обычно аппаратным способом, отсылаю к своей предыдущей статье. Но если выбрали 1vyra1n и ноутбук из поддерживаемых, вот видео как прошить без разборки и программатора или читать под спойлером:


1. First make sure you have a coreboot rom for your laptop ready, then copy it to a usb drive. (you'll need two drives for this)

2. Download 1vyra1n and IVprep

3. copy IVprep on a windows installation and run downgrade.bat NOT as administrator. the laptop will reboot and downgrade itself to the last vulnerable bios

4. prepare a bootable USB with 1vyra1n using rufus

5. reboot to bios setup and do the following:

6. if you have a bios password set, disable it.

7. enable UEFI boot (Boot Options -> UEFI Mode)

8. disable CSM (Boot Options -> Launch CSM)

9. enable bios flashing from non-supervisors and bios rollback (Security -> BIOS)

10. disable secure boot

11. Now connect your laptop to the internet using lan and reboot to the usb drive with 1vyra1n. When prompted, press enter and wait until your device goes to sleep. wake it up (press the power button), then you'll be greeted with a menu.

12. I'm assuming you don't have a web server ready to use with option 2 from 1vyra1n menu. so, like i did, we'll replace the existing unlocked bios rom with coreboot manually.

13. Press Control+C to exit out of the menu, run "lsblk" to find the other usb drive with coreboot on it. now let's say this usb drive is 32gb, you'll find something like this:

14. NAME MAJ:MIN RM SIZE RO TYPE

15. sdX(where X is a letter) 259:0 0 32G 0 DISK

16. now what you need is name and size to make sure you're working with the correct usb drive

17. once you find it, run "mount /dev/sdX /mnt" where X is a letter

18. then, "***** /mnt/coreboot* ~/patched-bioses/ && rm ~/patched-bioses/T430.rom && mv ~/patched-bioses/coreboot* ~/patched-bioses/T430.rom"

19. now run ". ~/start.sh" and press 1 when prompted to flash patched lenovo bios

20. reboot and, assuming you did everything right, welcome to coreboot

Взято отсюда.

После прошивки убедитесь, что все штатно работает, payload`ы грузятся, а Intel ME обрезан:


sudo apt update && sudo apt upgrade
sudo apt install -y git libpci-dev zlib1g-dev
git clone --depth=1 https://review.coreboot.org/coreboot
cd coreboot/util/intelmetool
make
sudo ./intelmetool -m


И только после этого переходите к следующему шагу.


5. Установка и настройка ОС


Поисковики по теме "Full Disk Encryption including /boot" чаще всего выдают эту статью про Debian, статью с проекта Hyperbola , либо с проекта Libreboot , хотя последняя скорее запутывает, чем помогает. Много чего лишнего, часть команд (на загрузку) не работает, кое о чем умолчали и как по мне ее давно не проверяли (судя по "apt-get"). Рискну ее исправить и дополнить в силу своего неосилятора и недостаточной красноглазости.

Опишу установку на примере Debian GNU/Linux 11, вы можете выбрать любой другой по желанию, принцип один и тот же: скачать и сверить скачанное с контрольными суммами на сайте и/или проверить gpg подписи, разметить диск и задать названия группы и разделов LVM (как у меня в примерах, либо придумать свои, но не забыть изменить их в grub.cfg), cконвертировать Argon2i в PBKDF2 (либо LUKSv2 переконвертировать в LUKSv1).

1) Берем тут debian-live-11.*-amd64-*.iso.torrent , сверяем хеш сумму скачанного файла, качаем iso образ, устанавливаем на флешку, загружаемся в текстовый или графический установщик.
2) Размечаем диск как на скриншоте 1. Названия разделов LVM в точности также, а размеры дисков и типы ФС на ваш вкус, и добавьте swap раздел если вам нужен создав его также в LVM.
3) Завершив установку, GRUB2 из payload расшифровать диск не сможет — скажет, что неверный пароль. Надо загрузиться с Live системы (можно с той же флешки с Debian 11 с которой была установка) и cконвертировать Argon2i в PBKDF2:

sudo cryptsetup luksConvertKey --pbkdf pbkdf2 /dev/sdX

4) Далее, не перезагружаясь, разблокируем зашифрованный диск и отредактируем файл /etc/default/grub дописав строки:


GRUB_CMDLINE_LINUX="cryptdevice=/dev/mapper/matrix-rootvol:root"
GRUB_ENABLE_CRYPTODISK=y


5) Перезагрузитесь в установленную ОС (пароль расшифровки спросят дважды) и убедитесь, что все работает.

(опционально): Чтобы не вводить пароль расшифровки дважды, выполнить шаги раздела: "4 Avoiding the extra password prompt".

(опционально): Расшифровка из payload GRUB2 будет проходить значительно медленнее обычного, чтобы ускорить загрузку можно снизить кол-во итераций, но это снизит устойчивость к brute-force атаке.

И как обещано в начале: простейший способ установки для самых ленивых:

1) Берем тут debian-live-11.*-amd64-*.iso.torrent , сверяем хеш сумму скачанного торрент-файла, качаем iso образ, устанавливаем на флешку, загружаемся.
2) С рабочего стола запускаем инсталлятор (Calamares), выбираем раскладку и на "Manual partitioning" выбираем наш диск (который желательно заранее полностью форматнуть), "Create partition" и делаем как на скриншоте 2.
3) Далее-далее, устанавливаем имя пользователя и пароль, далее-далее. После окончания установки перезапускаемся.
4) В SeaBIOS достаточно выбрать сам диск, а не payload GRUB2, ввести пароль и загрузиться в ОС.

ОС будет загружаться ровно также даже на штатном BIOS, но советовать так делать я конечно не буду.


Хозяйке на заметку: если вдруг вами установленная не по этой инструкции система не грузится (по этой она грузиться будет), то зайдя в GRUB2 нажмите кнопку E, обратите внимание на пути для запуска ядра и initramfs, измените их при необходимости, дополнение работает через команду TAB.


6. Добавим проверку компонентов загрузки


Этот пункт необязателен, но желателен. Длинное объяснение можете прочесть тут, я объясню короче, а инструкцию опишу подробнее. Термин "hardening" можно перевести как упрочнение, это мы и проделаем. С помощью gpg ключей сделаем проверку подписей компонентов загрузки.

Выполняем команды в папке libreboot/ :

./build module cbutils
./download coreboot
./download grub
./build module grub
grub-mkpasswd-pbkdf2

Придумываете и вводите пароль, результат будет такого вида:

PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.7104DB07CD070F7CAB74EBDF037A74AE67986B84FFD7A045367D5F0427A3A6CAA148FE81039A67BD1FFB726E97C1BA9685033677AEDA8719E7B8ABE465F13369.5C9DBE6AA062F56C6E0F1E4BC681DFC6D92B9C2677B6B1E1468D3F1F4FC25FDD8A1EDA78A69AAD9C467B97BBDA865880ACBFE25EC3384EA29E3227396C322B73

Добавляем в grub.cfg эти строки перед "menuentry":

trust (cbfsdisk)/boot.key
set check_signatures=enforce

set superusers="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.7104DB07CD070F7CAB74EBDF037A74AE67986B84FFD7A045367D5F0427A3A6CAA148FE81039A67BD1FFB726E97C1BA9685033677AEDA8719E7B8ABE465F13369.5C9DBE6AA062F56C6E0F1E4BC681DFC6D92B9C2677B6B1E1468D3F1F4FC25FDD8A1EDA78A69AAD9C467B97BBDA865880ACBFE25EC3384EA29E3227396C322B73

Теперь нужно сгенерировать ключи и подписать компоненты загрузки (на выбор: либо vmlinuz и initrd.img, либо grub.cfg в /boot/grub/, для примера выберу второе).
Выполняем команды:

mkdir --mode 0700 keys
gpg --homedir keys --gen-key
gpg --homedir keys --export-secret-keys --armor > boot.secret.key # backup
gpg --homedir keys --export > boot.key
gpg --homedir keys --detach-sign grub.cfg
sudo gpg --homedir keys --detach-sign /boot/grub/grub.cfg

Выполняем команды в папке с нашим *.rom:

./build/cbfstool build/coreboot.rom remove -n grub.cfg
./build/cbfstool build/coreboot.rom add -n boot.key -f boot.key -t raw
./build/cbfstool build/coreboot.rom add -n grub.cfg -f grub.cfg -t raw
./build/cbfstool build/coreboot.rom add -n grub.cfg.sig -f grub.cfg.sig -t raw

Снова прошиваем получившийся *.rom в устройство, программным или аппаратным способом.

(опционально): При каждом обновлении ядра придется заново подписывать файлы в /boot на диске (но изменять в *.rom на устройстве ничего не нужно). Как это автоматизировать с помощью скрипта написано здесь.

Итого: при загрузке устройства в SeaBIOS нажимаем Esc выбираем grub2, на вопрос username вводим root, пароль вводим что генерировали к команде grub-mkpasswd-pbkdf2. Затем пароль для расшифровки диска и ждем загрузки ОС.
На этом все. Степень безопасности устройства повышена и оно полностью готово к срачам в интернетах работе.


7. Заключение


Возражения, исправления, критика принимаются. Вероятно, как и в предыдущей статье, повелители командной строки могли бы придумать решения элегантнее, но я отталкивался от умений и знаний среднестатистического пользователя, коим я и являюсь.
Pseudo Random Shit Generator
мойник@airmail.cc | ключ
 Последний раз отредактировано: PRSG на 2022-06-20 18 ч., всего отредактировано 2 раза

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: spurdo on 2022-06-21 20 ч.

Принимается на конкурс.

С возвращением.
If necessary, for years. If necessary, alone.
ключ, контакты

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: PRSG on 2022-06-26 10 ч.

цитата:
С возвращением.

Спасибо)

У кого есть вопросы по теме задавайте.
Pseudo Random Shit Generator
мойник@airmail.cc | ключ

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: Nikkon on 2022-06-29 15 ч.

Крайне увлекательное чтиво, спасибо.

цитата:
кастомные ноутбуки со свежим «железом» выпускает Purism.

А енти ребята сами собирают драйверы и прочую красоту на его основе?.. Судя по сайту, у них тоже форк какой-то свой используется для описанных целей. А то зело заметен разрыв между ноутом 14 года и даже их не самым свежим железом (ну какой 10710U, тут R7-5900x любит приуныть при случае :( ).

цитата:

Хозяйке на заметку: ноутбук Lenovo G505s — наиболее производительный ноутбук полностью лишенный бэкдоров в виде Intel ME или AMD PSP. Coreboot поддерживается и рекомендуется.

На этом точно можно работать с современными бровзерами в 2к22?..
Скрываемся от правосудия не вставая с дивана.

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: PRSG on 2022-07-01 14 ч.

цитата:
Крайне увлекательное чтиво, спасибо.

Благодарю за оценку.
цитата:
А енти ребята сами собирают драйверы и прочую красоту на его основе?..

Этого я точно не знаю, но собрать coreboot для их устройств можно самостоятельно, в "make nconfig" выбрать "Purism" и т.д. Какие при этом используются блобы и на какие компромиссы придется идти сказать не берусь, у меня их устройств наверное никогда не будет в силу их цены и недоступности в свободной продаже.
цитата:
На этом точно можно работать с современными бровзерами в 2к22?..

Процессора AMD A10 вполне хватает на современные сайты, тем более с 16 Гб оперативной памяти. А сайты с отключенным JS переваривают даже T400 и его поколение.
Pseudo Random Shit Generator
мойник@airmail.cc | ключ

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: Michael2 on 2022-07-02 11 ч.

Сейчас современные Linux-дистрибутивы позволяют делать полнодисковое шифрование включая boot при помощи LUKS и LUKS2, LUKS шифрует boot, LUKS2 всё остальное, запуск системы по ключевой фразе которой зашифрован boot. Ставится на любой BIOS и не надо с железом заморачиваться. В чём преимущество Coreboot перед такой установкой?
E-Mail: [email protected]
PGP-ключ

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: Rickenbacker on 2022-07-05 16 ч.

цитата:
В чём преимущество Coreboot перед такой установкой?

Это уже обсуждалось, смотри ссылки: ссылка , ссылка , ссылка

Вкраце, если не заморачиваться с железом, то аппаратный бекдор обеспечивающий Web/VNC серверы и др. инструменты для удалённого управления компьютером, откроет доступ к зашифрованным данным.

Так как бекдор находится в режиме ожидания подключений, то вероятно, уязвимые устройства можно защитить от удаленного доступа изолировав локальную сеть от входящих подключений, с помощью роутера на coreboot?

На базе APU - NativePC - https://shop.nativepc.ru/31-на-базе-apu

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: PRSG on 2022-07-06 13 ч.

Michael2, хороший ответ уже написал Rickenbacker, я немного дополню.

цитата:
Сейчас современные Linux-дистрибутивы позволяют делать полнодисковое шифрование включая boot

Об этом я написал в последнем спойлере пункта 5.
цитата:
В чём преимущество Coreboot перед такой установкой?

В том что аппаратная часть обезопасится до максимально возможной. Нет смысла в шифровании если в железе содержатся бэкдоры.
И еще grub2 не будет записан на диске, а будет записан в микросхеме распаянной на плате, где его подмена или перепрошивка может быть невозможной (например лак для ногтей на разборочных винтах).
Pseudo Random Shit Generator
мойник@airmail.cc | ключ

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: neityrf on 2022-07-06 19 ч.

Что делают с железом, когда до него доберется специалист?

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

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

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: neityrf on 2022-07-06 19 ч.

PSRG, ты не встречал случаи, когда обычный софт следил за gnupg и dm-crypt?
Просто, желающих на такое много, но почему-то не делают прям в обычном софте, это правда?
Не поверю, что после 9/11 людям просто так дали тор, pgp и т.д.
Скорее чтобы поддержать свободу слова против авторитарных режимов, подглядывать за людьми (косвенно или через бекдоры), подсадить людей чтобы в нужный момент использовать очень глубокий бекдор ради серьезной цели, или просто дать работу полиции, или как с open source - чтобы развивались и преступники и полицейские, чтобы технологии полиции были более эффективными.
Почему вообще США выкладывают в открытый доступ общественно опасную (даже для себя) информацию и софт? У этого точно есть какая-то цель.

Гарантированно защититься от аппаратных закладок нельзя, intel me может знать что угодно.
Подобно ему могут быть другие системы от других производителей, но не в проце, а в любой другой крупной микрухе, которая может давать код процу, на которую нет полной документации и которая используется исключительно для создания компьютеров.

Очень интересный вопрос: Какое железо и софт используют спецслужбы, если нет своего производителя под боком?

Что посоветуете насчет хранения зашифрованных контейнеров, чтобы их нельзя было обнаружить?

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: Pendalf on 2022-07-06 19 ч.

цитата:

Думаю о пароле + файл, сделать бекап для него, или использовать неизменный файл из интернета, слова из книги, или математическую формулу, чтобы не потерять и не надо было набирать на клавиатуре.

Есть у меня тема об облачном шифровании, на Руторе писал.
XMPP/Jabber: [email protected]
E-Mail: [email protected]
Услуги гаранта ||| PGP
 Последний раз отредактировано: Pendalf на 2022-07-06 20 ч., всего отредактировано 1 раз

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: Michael2 on 2022-07-07 11 ч.

Спасибо, почитал ссылки, на счёт железа теперь согласен.

цитата:
И еще grub2 не будет записан на диске, а будет записан в микросхеме распаянной на плате, где его подмена или перепрошивка может быть невозможной

А чем черевата может быть подмена или перепрошивка grub? Это ведь не boot, модифицировав который можно ключ получить.
E-Mail: [email protected]
PGP-ключ

Re: [Конкурс 2022] Coreboot и настоящее полнодисковое шифрование вкл. /boot  

  By: PRSG on 2022-07-08 09 ч.

цитата:
Очень интересный вопрос: Какое железо и софт используют спецслужбы, если нет своего производителя под боком?

Попадалась новость, что NSA (АНБ США) просит Intel отключить Intel ME.
цитата:
А чем черевата может быть подмена или перепрошивка grub? Это ведь не boot, модифицировав который можно ключ получить.

Обрати внимание на пункт 6 статьи, например как обойти подпись файлов? Убрав строчки в grub.cfg, то есть если grub2 грузится с диска, то GPG подпись файлов можно отключить.
Pseudo Random Shit Generator
мойник@airmail.cc | ключ