Шифрование всего диска. Как можно зашифровать ядро?

Стандартной ошибкой шифрования диска в Linux является необходимость незашифрованного /boot. В частности, загрузчик и initrd. Шифрование всего диска означает размещение их в другом месте, например, на USB-накопителе.

edit: теперь я узнал, что grub теперь может расшифровывать файловую систему, содержащую ядро, при загрузке, поэтому в Linux нужно расшифровать только загрузчик.

У меня сложилось впечатление, что «известно», что FileVault реализует шифрование всего диска. Я, конечно, верил, что это так. Это немного сложно продемонстрировать без множества ссылок на внешние сайты. Пара внутренних:

грубая сила-шифрование-всего-диска и шифрование-всего-диска-с-загрузочным лагерем только для Windows

И существующий вопрос, который по существу отвечает на этот вопрос , - файловое хранилище-2-шифрование всего диска или шифрование всего раздела.

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

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

Для справки, интересующая меня система использует apfs, а не cs, и не имеет чипа T2.

Никто не говорит, что загрузочный раздел должен быть на флешке, он может быть и на самом диске :-)
Я так полагаю. Зашифрованную загрузку на диске нельзя было использовать для загрузки Linux, но вы можете по цепочке загрузить ее из какого-либо другого ядра, если хотите.
Привет, Джон. Можете ли вы отредактировать, если вы используете контейнеры APFS или контейнеры HFS+? Варианты шифрования значительно расширены для APFS, и обсуждение, которое мы ведем, будет неверным, если не сузить одно или другое. Надлежащее рассмотрение всего этого может потребовать главы или двух в книге, и я почти уверен, что вы ищете здесь более узкий ответ.

Ответы (2)

На самом базовом уровне Apple контролирует прошивку и сохраняет абсолютный минимум информации, необходимой для создания иллюзии того, что ОС работает на экране входа в систему перед загрузкой, когда FileVault включен.

Это довольно подробно задокументировано Apple:

До чипа T2, который служит своего рода доверенным модулем для аутентификации, если загружаемая ОС правильно подписана/зашифрована и/или не подделана, эта предзагрузочная информация может храниться в NVRAM, а также в EFI/восстановлении HD. которые не шифруются с помощью ключа, которому требуется пароль/парольная фраза пользователя для разблокировки основного хранилища.

Когда вы меняете фон или пользователей, которым разрешено разблокировать FileVault, эти кэшированные данные сохраняются за пределами зашифрованной части диска, поэтому мы видим значки и графический экран входа в систему. Когда я вижу, что Apple говорит, что загрузочный диск зашифрован, я понимаю, что это означает только логический том Macintosh HD, на котором хранятся все пользовательские данные и вся ОС, но не прошивка и предзагрузочные данные. (за исключением оборудования с поддержкой чипа T2, которое является особым случаем и еще не является нормой)

Вы можете подтвердить это, выбрав ниже любую похвалу в зависимости от того, поддерживает ли ваша ОС контейнеры APFS и APFS, которые являются новым стандартом для томов и шифрования, или контейнеры HFS+ и Core Storage.

diskutil cs list
diskutil apfs list

Еще одно захватывающее изменение, связанное с чипом T2 в новых MacBook Pro и iMac Pro, заключается в том, что он может принудительно шифровать внутреннюю память независимо от того, предпринимает ли кто-либо второй шаг шифрования FileVault. В частности, он сгенерирует ключ шифрования и начнет шифрование всех данных еще до создания учетной записи пользователя. SSD из любого из них не будет читаться, если его перенести на другой компьютер, независимо от того, есть ли на этом компьютере чип T2 или нет. Ключи, необходимые для расшифровки всего диска, хранятся исключительно в Secure Enclave.

Re: ваше волнение. Какие преимущества имеет использование схемы шифрования T2 по сравнению с обычным FV2 (или по отношению к OP: вариант Linux dm-crypt [или что там еще можно выбрать])? И как в первую очередь вывести современные AppleSSD из MBP T2?
@LangLangC Что касается ваших вопросов, я оставлю первый для bmike, так как у него будут свои мысли о преимуществах T2. Что касается вопроса о современных твердотельных накопителях Apple, то они в основном представляют собой микросхемы флэш-памяти, припаянные к материнской плате, а микросхема T2 выступает в роли контроллера. Таким образом, на самом деле вам придется снять материнскую плату, чтобы удалить твердотельные накопители . При наличии подходящего оборудования можно было бы удалить только чипы флэш-памяти, но я бы предположил, что более 99,99% людей не будут иметь доступа к такому оборудованию, и даже если бы они это сделали, связанные с этим риск и время были бы огромным препятствием.
Чип T2 означает, что Apple может предложить нам криптографическое стирание носителей путем замены/поворота/уничтожения ключей. До сих пор, если вы записывали конфиденциальную / конфиденциальную информацию на SSD, контроллер мог выгружать эти данные из активного пространства, и никакое стирание не очищало этот диск. Это позволяет восстановить путь, если вы скопируете данные на SSD до того, как установите FileVault (или если кто-то деактивирует FV и начнется расшифровка, а данные будут сохранены в открытом виде).

Загрузочный раздел не обязательно должен быть на флешке, он также может быть на самом диске ( Boot OS X):

pse@Mithos:~$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage Macintosh HD            121.0 GB   disk0s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk0s3

/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:          Apple_CoreStorage Macintosh HD            999.3 GB   disk1s2
   3:                 Apple_Boot Recovery HD             650.1 MB   disk1s3

/dev/disk2 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           +1.1 TB     disk2
                                 Logical Volume on disk0s2, disk1s2
                                 559BC36D-E609-490D-8DDA-7C6F344DBB9B
                                 Unlocked Encrypted Fusion Drive
Какой из трех разделов зашифрован?
@Jon Chesterfield Нет напрямую. disk0s2и disk1s2являются частью логического тома disk2.
Apple_Boot и EFI не являются частью зашифрованного логического тома?
@JonChesterfield Зашифрован только логический том (и разделы, которые являются частью if)
Это предполагает технически разочаровывающее объяснение того, что OSX не может зашифровать весь диск, несмотря на описания, утверждающие, что это возможно.
@JonChesterfield Не знаю, какое объяснение вы имеете в виду (и какова предыстория вашего вопроса), может быть, вы можете добавить это к своему вопросу? Во всяком случае, утверждается, что видимый пользователю диск полностью зашифрован (что disk2в моем случае)
Добавлен некоторый фон. По сути, я нашел кучу ссылок, говорящих о «шифровании всего диска», и подумал «как?».
@nohillside Я думаю, что различия в процессе загрузки меньше, чем ожидалось, но в Linux более заметно / прозрачно, что вам (в настоящее время) нужно незашифрованное хранилище, чтобы начать загрузку, а затем происходит дешифрование, чтобы затем по цепочке загружалась реальная система. . Речь идет о технической перспективе, из-за которой очень похожие процессы выглядят немного по-другому.