Шифрование данных на мак ос. Какие есть недостатки

"? Это усовершенствованная версия "FileVault 1". Спасибо, Капитан Очевидность.

Я, как и у многие люди, связанные с системным администрированием, немного параноик. Я считаю, что мои данные хотят украсть. Пусть они реально никому, кроме меня ("и множества злоумышленников, которые спят и видят, как получить мои фотографии, подборку музыки и фильмов, и...", - это слова моего внутреннего параноика) и не нужны, но защититься не помешает.

Что произойдёт, если ноутбук украдут?

Самый простой случай - вор сразу же переформатирует диск и поставит чистую версию операционной системы. Останется купить новый ноутбук, восстановиться из Time Machine и спокойно продолжить работу. Этот сценарий характерен для умного вора, который знает о функции "Find My Mac " и о системе Pray .

Но есть другой случай - вор или глуп, или любопытен. Если глуп, то начнёт пользоваться ноутбуком, не трогая систему. Недавняя история поимки такого вора описана в статье "Why you don"t steal from a hacker ". Всё закончилось плачевно для вора и отлично для владельца ноутбука.

Если вор любопытен и умён, то сразу же отключит сетевые интерфейсы, чтобы даже случайно система не вышла в Интернет, и начнёт изучать, чем бы можно поживиться.

Начнёт изучать документы, ключи доступа, попробует добраться до Keychain, посмотрит историю команд в shell и возможно наткнётся на пароль (в моей практике был случай, когда очень быстрый коллега в сессии излишне любопытного пользователя вбивал пароль администратора, но вбил не в поле запроса пароля, а просто в shell, и пароль администратора попал в.history). Пароль в клиническом случае может быть единым для системы и для базы 1Password. Можно дальше не продолжать. А дальше - или проникновение, или шантаж.

Надеюсь, вы не думаете, что запрос пароля при входе в систему кого-то остановит? Firmware Password (по крайней мере раньше) сбрасывался фокусом с вынимаем одной из нескольких планок памяти, а затем очисткой PRAM. Потом - single user mode, пара команд , и пароль изменён. Если же не хочется возиться с Firmware Password, то диск вынимается из ноутбука, подключается к другому компьютеру и доступ ко всем данным получен.

Для защиты от описанной ситуаций был реализован FileVault. В первой версии пользовательский домашний каталог помещался в зашифрованный контейнер (sparse bundle image), ключом к которому служил пользовательский пароль. Не зная пароля, контейнер невозможно было открыть. Не нужно исключать возможность угадывания пароля, но если пароль был сложным, то данные были в полной безопасности.

За безопасность нужно платить. Для того, чтобы сделать резервную копию данных в Time Machine, нужно было выйти из учётной записи. Сделать выборочное восстановление через интерфейс Time Machine было нельзя. Включение шифрования порой на 50%. Были и другие мелкие сложности.

В OS X Lion вошла улучшенная версия - FileVault 2 , система шифрования полного диска, использующая алгоритм XTS-AES 128.

В процессе изучения вопроса я обращался к статьям MacFixIt "About FileVault 2 in OS X 10.7 Lion " и ArsTechnica "File system changes in Lion ".

Желающие разобраться с математическими моделями могут прочитать документ "IEEE P1619TM/D16 Standard for Cryptographic Protection of Data on Block-Oriented Storage Devices " и "Не такой уж ты и страшный, XTS-AES ".

Незашифрованными остаются раздел с EFI (интересующихся процессом обычной загрузки отсылаю к статье " ") и Recovery HD:

$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *160.0 GB disk0 1: EFI 209.7 MB disk0s1 2: Apple_CoreStorage 159.2 GB disk0s2 3: Apple_Boot Recovery HD 650.0 MB disk0s3

  1. После инициализации "железа" EFI находит Recovery HD и передаёт управление загрузчику /System/Library/CoreServices/boot.efi, находящемуся на этом разделе.
  2. У загрузчика есть два варианта - запустить EfiLoginUI из com.apple.boot.x и показать стартовый экран с запросом пароля входа, или же, если была нажата комбинация Option-R - оболочку восстановления системы из com.apple.recovery.boot.
  3. Ключи для расшифровки диска хранится в файле EncryptedRoot.plist.wipekey в каталоге /com.apple.boot.x/System/Library/Caches/com.apple.corestorage. Пользовательский пароль расшифровывает ключи к диску, находящийся в этом файле. Дальше они хранится в памяти, расшифровка содержимого диска производится "на лету". Каждый раз при изменении пользовательского пароля, добавлении нового пользователя и подобных операциях EncryptedRoot.plist.wipekey перегенерируется.

FileVault работает и для пользователей, входящих через OpenDirectory - их аттрибуты доступа кешируются на случай отсутствия соединения с сервером каталогов.

Производительность дисковых операций при включенном FileVault 2 согласно тестам Anandtech ухудшается не более, чем на 20-30%, что вполне приемлемо. Однако стоит учитывать, что есть зависимость от процессора и диска . Новые процессоры Intel используют наборы инструкций AES-NI для ускорения работы с AES Intel® Advanced Encryption Standard Instructions (AES-NI) и с шифрованием диска справляются лучше, чем старые процессоры Core 2 Duo. Решение каждый принимает сам на основании собственного железа.

При краже Mac"а получить доступ к данным будет практически невозможно (при условии сложного пароля и неочевидных ответов на вопросы восстановления ключа в Apple). Придётся просто купить новый Mac и особо не беспокоиться о компрометации паролей и использовании данных.

Time Machine работает теперь без необходимости выхода из учётной записи. Теперь нужно беречь данные Time Machine, а лучше размещать их в зашифрованном разделе (как это сделать, описано в статье Mac OS X Lion FileVault 2 and Time Machine External Drive Encryption).

Из "особенностей" нужно помнить, что при загрузке с зажатым Option раздел "Recovery HD" будет недоступен, для загрузки с него нужно удерживать комбинацию клавиш Command-R.

Активация

Активация FileVault 2 проста. System Preferences/Security & Privacy/FileVault, Click the lock to make changes, Turn On FileVault. Обязательно нужно в надёжном и обязательно зашифрованном месте сохранить ключ и ответы на вопросы восстановления ключа (если выбрали его сохранение в Apple). Система предложит перезагрузиться. Сразу же при загрузке будет запрошен ваш пароль и после входа вы сразу же сможете работать. Ждать часами завершения шифрования раздела не нужно, эта операция производится в фоновом режиме пока вы полноценно работаете:

С запуском iCloud появится возможность "Find My Mac", в которой по аналогии с "Find My iPhone/iPad" при появлении Mac в сети можно отобразить сообщение с воспроизведением звукового сигнала, заблокировать Mac или даже уничтожить содержимое зашифрованного диска (могу предположить, что удаляются ключи шифрования и диск становится бесполезным массивом данных):

При получении команды блокировки (как только Mac станет доступен через Интернет) компьютер перезагружается, после чего запрашивается 6-ти значный код (вспомнился [троян Trojan.Win32.Buzus.hjzy](http://av-school.ru/desc/a-2117.html), который портит MBR и требует денег за код разблокировки):

Удобно, не так ли?

Если же вы организованы и не хотите терять производительность в угоду безопасности, то достаточно создать зашифрованный sparse bundle image и хранить секретные данные там. Я описывал процесс в статье " ".

Повышенная безопасность данных в Apple Mac - один из важных критериев, по которым пользователи выбирают данную технику, по сравнению с аналогами. Хотя в последнее время все больше говорят о том, что для macOS появляются новые вредоносные программы, все же по сравнению с устройствами на Windows - показатель взломов и заражения вирусами на порядок ниже. Кроме того, MacBook, iMac, Mac mini и другие компьютеры намного лучше защищены от несанкционированного входа, взлома, подбора пароля и др.

FileVault включать или нет?

Для защиты данных на диске в системе macOS встроена специальная утилита шифрования FileVault (на данный момент версия 2). Работу программы можно упрощенно описать так: пароль входа шифруется алгоритмом XTS-AES-128 с 256-битным ключом, то есть вся информация хранится небольшими фрагментами по 8 Мб. Таким образом, подобрать пароль, даже имея физический доступ к Мак просто невозможно. В истории существовали прецеденты когда даже специализированные службы не могли получить доступ к информации, используя огромные вычислительные мощности.

Данная функция будет полезна всем, кто хранит на компьютере конфиденциальные данные, личную секретную информацию и др. В новых Mac оснащенных , безопасность входа еще более повышается, так как процедура входа обрабатывается без подключения к диску.

Как включить FileVault на Мак?

Для включения шифрования перейдите в «Системные настройки» - «Защита и безопасность» - «FileVault». Нажимаем замочек, чтоб разблокировать, включаем функцию и выбираем вариант сброса пароля. По умолчанию их всего два: с помощью Apple ID через iCloud, или с помощью сгенерированного ключа восстановления, который нужно обязательно запомнить/записать. После перезагрузки компьютера диск будет шифроваться «на лету».

Как отключить (остановить) FileVault? Опасность и недостатки шифрования

Для отключения FileVault перейдите в «Системные настройки» - «Защита и безопасность» - «FileVault». Разблокируйте настройку нажатием на замочек. Выберите «Выключить FileVault». Необходимо выждать некоторое время для дешифровки (не отключайте компьютер).

В случае с шифрованием данных, существует и обратная сторона медали. Несмотря на высокую безопасность, будьте готовы столкнуться и с недостатками данного вида защиты. Из самых безобидных - система может начать работать несколько медленнее. Второе, - если вы забудете, потеряете ключ восстановления пароля (и сам пароль) - войти в систему уже будет невозможно. Тоже самое произойдет, если диск повредится, в таком случае восстановить данные не получится. Ну и напоследок, при восстановлении системы из Time Machine, отдельный файл не получится восстановить, только полностью всю систему.

Выводы

Большинство пользователей Mac для защиты своих данных и файлов от несанкционированного доступа пользуются паролем для входа в систему. Однако так ли это безопасно, как принято считать? Как оказалось, не совсем. Есть много способов, которые позволяют сбросить пароль, предоставляя возможность получить доступ ко всей информации, которая хранится на вашем Mac. Впрочем, решение этой проблемы есть - FileVault. О нем мы сегодня и поговорим.

Что такое FileVault

FileVault - это система шифрования данных, которая использует алгоритм XTS-AES-128 с длиной ключа 256 бит, что обеспечивает крайне высокий уровень безопасности. Сам ключ шифрования вырабатывается на основе пароля пользователя при помощи алгоритма PBKDF2. Вся информация в дальнейшем будет храниться фрагментами по 8 МБ.

Как ни странно, но функция работает достаточно просто - все данные копируются на зашифрованный образ диска, а затем удаляются из незащищенного пространства. После того как первичная обработка данных завершена, далее новые файлы будут шифроваться «на лету» в фоновом режиме. Есть поддержка Instant Wipe, которая позволяет безопасно затереть всю информацию на диске без возможности восстановления. Кроме того, этот инструмент предоставляет возможность шифрования резервных копий Time Machine.

Как работает FileVault

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

После того как мы активировали FileVault, процесс загрузки компьютера меняется для обеспечения безопасности. Если раньше пароль нужно было вводить после загрузки учетной записи, то теперь это происходит до, что исключает даже потенциальную возможность сброса пароля пользователя любым из известных способов (Single User Mode, загрузка с внешнего носителя и другие методы).

Почему стоит использовать FileVault

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

Еще плюсом можно отметить то, что объём данных до и после шифрования не меняется.

Какие есть недостатки

Шифрование с помощью FileVault достаточно серьезно влияет на производительность Mac.

Нельзя восстановить данные, если забыты пароль и ключ восстановления.

В случае поломки накопителя данные также будут утеряны навсегда.

Большинство пользователей Mac для защиты своих данных и файлов от несанкционированного доступа пользуются паролем для входа в систему. Однако так ли это безопасно, как принято считать? Как оказалось, не совсем. Есть много способов, которые позволяют сбросить пароль, предоставляя возможность получить доступ ко всей информации, которая хранится на вашем Mac. Впрочем, решение этой проблемы есть – FileVault. О нем мы сегодня и поговорим.

Что такое FileVault

FileVault – это система шифрования данных, которая использует алгоритм XTS-AES-128 с длиной ключа 256 бит, что обеспечивает крайне высокий уровень безопасности. Сам ключ шифрования вырабатывается на основе пароля пользователя при помощи алгоритма PBKDF2. Вся информация в дальнейшем будет храниться фрагментами по 8 МБ.

Как ни странно, но функция работает достаточно просто – все данные копируются на зашифрованный образ диска, а затем удаляются из незащищенного пространства. После того как первичная обработка данных завершена, далее новые файлы будут шифроваться «на лету» в фоновом режиме. Есть поддержка Instant Wipe, которая позволяет безопасно затереть всю информацию на диске без возможности восстановления. Кроме того, этот инструмент предоставляет возможность шифрования резервных копий Time Machine.

Как работает FileVault

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

После того как мы активировали FileVault, процесс загрузки компьютера меняется для обеспечения безопасности. Если раньше пароль нужно было вводить после загрузки учетной записи, то теперь это происходит до, что исключает даже потенциальную возможность сброса пароля пользователя любым из известных способов (Single User Mode, загрузка с внешнего носителя и другие методы).

Почему стоит использовать FileVault

Пароля пользователя явно недостаточно для обеспечения полной безопасности и конфиденциальности. При наличии физического доступа к компьютеру сброс пароля – лишь вопрос времени. 
В случае же с шифрованием можно быть уверенным, что доступ к данным никто не получит. Кроме того, утилита разработана и уже встроена в систему, что говорит о полной интеграции с системой.

Еще плюсом можно отметить то, что объём данных до и после шифрования не меняется.

Какие есть недостатки

  • Шифрование с помощью FileVault достаточно серьезно влияет на производительность Mac.
  • Нельзя восстановить данные, если забыты пароль и ключ восстановления.
  • В случае поломки накопителя данные также будут утеряны навсегда.
  • Зашифрованные копии Time Machine не позволяют восстановить конкретный файл, а только копию целиком.

Как настроить FileVault


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

Первая статья будет посвящена шифрованию диска, что поможет защититься от всех интересующихся нашими битами и байтами.

Так повелось, что большая часть руководств по взлому и пентестам пишется с позиции Linux-пользователя. Существуют, конечно, исключения из этого правила, но в целом складывается впечатление, что ОС Linux единственная система, которая пригодна для подобного рода задач. На самом деле эта идея не далека от истины, поскольку правильная настройка систем от компании Apple для нужд специалиста по безопасности – не такая простая задача.

До появления macOS (когда была система OS X) проведение исследований, связанных с безопасностью, на машинах от Apple было немного комичным. Подходящих инструментов было мало, а аппаратная часть была заточена под специфические нужды. Как итог, у разработчиков не было особой мотивации для адаптации своих творений, поскольку OS X занимала небольшую долю рынка и была малопригодна для серьезных дел. В тот момент на сцене господствовали Windows и Linux.

Но времена изменились, и теперь macOS – серьезный конкурент в борьбе за внимание специалистов по безопасности. На данный момент эта система занимает 7,4 и 13% рынка в мире и США соответственно.

На Apple-машинах работает вариант ОС UNIX, совместимый со стандартном POSIX, а аппаратная часть ничем не отличается от начинки современных компьютеров, что позволяет запускать большинство утилит, используемых пентестерами, в ОС Mac. Кроме того, на Apple-машинах можно с легкостью запускать и Windows и Linux. Короче говоря, на систему macOS, которой к тому же легко пользоваться и обслуживать, как минимум, стоит обратить свое внимание.

Эта серия статей была задумана с целью помочь вам преодолеть первоначальные препятствия, связанные с настройкой системы macOS. Как только среда будет готова, при работе с утилитами не возникнет никаких сложностей.
Кроме того, будет совершенно нелишним изучать азы текстового редактора Vim, функционал которого схож и в Linux и в Mac.

После ознакомления и выполнения инструкций из всех руководств, у вас будет настроенный Mac, пригодный для выполнения тестов на проникновение. К тому же, вы поймете, почему эти вещи жизненно важны. Если базовые утилиты для настройки системы могут отличаться в зависимости от платформы, основные концепции остаются неизменными. Вы получите знания, которые пригодятся не только при работе с macOS, но и со всеми остальными платформами.
Начиная повествование первой части, я предполагаю, что у вас есть чистая система с macOS. В противном случае, могут возникнуть некоторые расхождения в процедуре настройки.

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

Мы будем использовать FileVault (средство, встроенное в ОС Mac), которое позволяет полностью зашифровать диск в 128-битном режиме XTS-AES. Эта схема шифрования рекомендуется (NIST), совместима с Федеральным стандартом по обработке информации и пригодна к использованию в подотчетных отраслях, таких как правительство и медицина. То есть схема достаточно надежная.

Шаг 1: Переход во вкладку FileVault

Зайдите в System Preferences и в первом ряду выберите Security & Privacy. В качестве альтернативного варианта можно воспользоваться следующей командой (просто скопируйте команду в терминал и нажмите Enter). Опция –b (bundle identifier; идентификатор набора) говорит о том, что нужно открыть файл Security.prefPane с системными настройками.

  • open -b com.apple.systempreferences /System/Library/PreferencePanes/Security.prefPane


Рисунок 1: Панель системных настроек

Далее зайдите в раздел Security & Privacy и выберите вкладку FileVault. Чтобы внести изменения, вам потребуется кликнуть на замок в левой нижней части окна и во всплывающем окне и ввести параметры (имя и пароль) административной учетной записи.


Рисунок 2: Вкладка для настройки шифрования диска

Шаг 2: Включение FileVault

Перед тем как нажать на кнопку "Turn On FileVault", необходимо ознакомиться с предупреждением, которое отображено на экране.

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

Перечитайте предыдущий абзац еще раз. Потеря пароля и ключа эквивалентна удалению всей информации, поскольку нужно сделать именно такую операцию, чтобы ваш Mac стал снова в рабочем состоянии.
Далее нажмите на кнопку "Turn On FileVault".

В зависимости от того, вошли ли вы через iCloud или нет (для версий Yosemite и выше), появится диалоговое окно с вопросом о том, хотите ли вы использовать учетную запись в iCloud или ключ восстановления для обнуления пароля в случае утери. Я предпочитаю хранить копию ключа в надежном месте, поскольку облако, по сути своей, является чьим-то компьютером. (Если вы не залогинились в iCloud, то сразу же увидите ключ восстановления).

После того как вы определились со способом хранения ключа, нажмите Continue.


Рисунок 3: Выбор способа разблокировки диска

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

После того как ключ сохранен в надежном месте, еще раз нажмите Continue.


Рисунок 4: Ключ для восстановления системы в случае утери пароля

Если в системе есть другие пользователи, появится диалоговое окно, где можно выдать разрешение нужным пользователям. Для разблокировки диска соответствующий пользователь должен ввести свой пароль. Естественно, нужно разрешить разблокировку для административной учетной записи. Остальные пользователи - на ваше усмотрение. Далее опять нажмите на кнопку Continue.


Рисунок 5: Разрешение на разблокировку диска для пользователей

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

После инициации перезагрузки FileVault начнет шифровать диск в фоновом режиме, что может вызвать серьезные замедления до тех пор, пока весь процесс не закончится. Время шифрования зависит от размера диска. Наблюдать степень завершения процесса можно во вкладке FileVault.


Рисунок 6: Шифрование диска

Примечание: Если у вас современная система с SSD процесс шифрования и дешифрования будет происходить значительно быстрее по сравнению с HDD дисками. Если скорость загрузки для вас важна, вы находитесь на темной стороне и должны шифроваться в обязательном порядке, то вероятно вам будет полезен этот совет.

Шаг 4: Проверка ключа

Завершающий шаг – проверка ключа, чтобы убедиться, что вы можете расшифровать диск в любой момент (этот функционал доступен в версиях Mavericks и выше). Для проверки мы будем использовать приложение Terminal из папки Utilities внутри директории Applications.


Рисунок 7: Командная строка в терминале

В окне терминала введите следующую команду и нажмите Enter:

sudo fdesetup validaterecovery

Появится запрос на ввод административного пароля. Во время ввода символы пароля не будут видны. После ввода нажмите Enter.

Затем появится запрос на ввод ключа восстановления, который должен быть в формате xxxx-xxxx-xxxx-xxxx-xxxx-xxxx. Как и в случае с административным паролем, вводимые символы ключа вы не видите. Поэтому либо вводите медленно, либо скопируйте в текстовый документ, а потом вставьте в терминал и нажмите Enter.

Если ключ корректный, шелл вернет значение true.


Рисунок 8: Результаты проверки ключа

Причин неудачной проверки может быть несколько: либо ключ набран неверно, либо скопирован неверно, либо поврежден. Если вы уверены, что ключ верный, необходимо зайти в настройки File Vault, отключить эту функцию и повторить весь процесс, начиная с шага 2.

Теперь ваш диск готов к работе

После завершения процесса ваш диск стал зашифрован. Только не забывайте, что диск защищен только, когда компьютер выключен.

Росс Ульбрихт (Ross Ulbricht), один из известных операторов проекта Silk Road, использовал шифрование диска для защиты ноутбука, но не придерживался других правил безопасности. Агенты ФБР перед захватом дождались, когда Росс авторизуется, и диск расшифруется. В итоге Ульбрихт получил пожизненное заключение.

Старайтесь не повторять подобного рода ошибок.

В следующих статьях мы поговорим о шифровании образов дисков, об использовании приложений KeePass, Terminal и т. д.

Оставайтесь на связи.