Информационная безопасность для блоггеров 3

Сергей Васильевич Виноградов
(аудиоверсия )

В прошлом выпуске мы говорили про шифрование как защиту информации на мобильных устройствах.

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


Давайте подробнее рассмотрим, как именно должно быть использовано шифрование.

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




Шифрование может применяться с различными целями.

Чаще всего - это обеспечение конфиденциальности информации, то есть её недоступности для чтения другим людям.

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

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


Для обработки информации внутри компьютера данные должны быть загружены в оперативную память.

Оперативная память компьютера часто расширяется с помощью файла подкачки, расположенного на жёстком диске.

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

Поэтому, если злоумышленник имеет доступ к жёсткому диску, то он может восстановить часть информации из оперативной памяти. В том числе той, что хранилась на диске в зашифрованном виде.


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

Аналогичные проблемы могут вызывать файлы, созданные компьютером при переходе в режим гибернации. Поэтому, также требуется отключить этот режим. В частности, в Windows отдать следующую команду из командной строки powercfg -h off.


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



Это первое, для чего может понадобиться шифрование жёсткого диска или его раздела.

Далее.

При физическом доступе к компьютеру, с помощью специальных программ легко получить доступ к Windows, Linux или любой другой операционной системе с любыми правами. В том числе, установить туда вредоносное программное обеспечение или прочитать какие-либо нешифрованные файлы.


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


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


Кроме этого, похищение шифрованного жёсткого диска или его изъятие в ходе незаконного обыска, не даст злоумышленнику ничего. Так как данные будут шифрованы.

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


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



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

В настоящий момент времени, самые распространённые алгоритмы - это западные AES и ChaCha20, отечественный алгоритм Кузнечик.


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

Первые два - алгоритмы родом из США. Кузнечик - отечественный алгоритм.


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


Давайте рассмотрим, каким именно продуктом можно зашифровать жёсткий диск.

Под Windows, очевидно, это стандартный для Windows BitLocker и VeraCrypt.

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


Так как Microsoft не раз уличалась в копировании конфиденацильных данных пользователей, в том числе, в некоторых ситуациях и ключей шифрования BitLocker, использовать BitLocker можно лишь тогда, когда вы уверены, что никто не сможет узнать ключи из Microsoft, в том числе, путём дачи взяток или засылки своего сотрудника.

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



Рассмотрим подробнее VeraCrypt.


Существуют два метода шифрования жёсткого диска. Это шифрование разделов и полнодисковое шифрование.

Разделы жёсткого диска - это то, что расположено на одном физическом устройстве, но в операционной системе мы видим эти разделы как отдельные логические диски, например, диск C:, диск D: . Злоумышленник, получивший такой диск, увидит количество, размеры и метки данных разделов, а если какие-либо из них были не зашифрованы, то и их содержимое.

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

ВераКрипт не позволяет осуществлять полнодисковое шифрование диска, на котором установлены две операционных системы. Также, насколько я знаю, не поддерживается шифрование разделов, на которых установлена Linux.


Поэтому, если вы хотите установить более двух систем на одном жёстком диске, то VeraCrypt не подходит. Либо придётся шифровать каждый раздел.

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



Однако, у этой программы есть несомненные достоинства.

1. ВераКрипт прошла аудит в 2016 году. Все найденные восемь критических уязвимостей исправлены.

Конечно, это говорит о довольно низком качестве кода VeraCrypt, однако это также означает, что уязвимости ищут и исправляют.


2. ВераКрипт - не американский проект. Его делают французы.


3. ВераКрипт - самый известный продукт для шифрования Windows-дисков с открытыми исходными кодами. Что повышает сложность давления на разработчиков и внесения уязвимостей в продукт.



При прочих равных, рекомендуется полнодисковое шифрование, как наиболее полное.

Дистрибутив VeraCrypt вы можете найти по адресу, указанному на экране.

https://www.veracrypt.fr/


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

Отмечу лишь следующее.

1. Для шифрования нужно выбирать хороший пароль, который вы не забудете. Пароль VeraCrypt может быть не более 64 символов в длинну. Хорошо, если это пароль будет не менее 20 символов в длину. Если он состоит из слов, то слов должно быть хотя бы 12 и не взятых из одного и того же известного текста. Вы можете сами придумать себе краткий стишок и, при вводе пароля, сокращать его.


2. Длиные пароли влекут за собой долгую разблокировку диска. Поэтому нужно быть очень осторожным. Обязательно внимательно смотрите, что вас устраивает задержка на экране ввода пароля. Помните, что когда вы вводите пароль, вы можете ошибиться, и, при длительной задержке, это будет очень неприятно. Вы можете проверить, какая будет задержка ещё до того, как диск зашифруется. Это делается стандартно, после того как вы вводите пароль, VeraCrypt даёт вам возможность перезагрузить компьютер и ввести пароль ещё без шифрования жёстких дисков.

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


3. Если жёсткий диск не новый и уже содержит конфиденциальные данные, то VeraCrypt позволяет при щифровании также произвести очистку диска.

Дело в том, что некоторыми аппаратными средствами можно произвести восстановление данных, которые ранее были записаны на жёсткий диск, причём даже если эти данные уже были перезаписаны. Заметьте, очистка диска без удаления этих данных. Речь идёт об очистке именно диска с точки зрения восстановления нешифрованных данных. Данные же будут зашифрованы.

Поэтому, вы можете выбрать количество дополнительных перезаписей. Это сильно увеличит продолжительность шифрования, поэтому, если лучше выбирать 1 проход или 3 прохода. Больше, наверное, смысла нет.


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


5. Обязательно создайте диск восстановления. VeraCrypt создаёт его в формате iso-образа. Он может быть записан на отдельный CD или DVD диск, либо на специально подготовленную флешку, если ваш компьютер умеет загружаться из флешек. Учтите, что для каждого пароля iso-образ должен быть свой. То есть нельзя использовать старый образ восстановления для того, чтобы восстановить даже тот же самый жёсткий диск, но уже зашифрованный с новым паролем.


Диск восстановления вам понадобится, если с загрузочным разделом VeraCrypt что-то случится. Помните, что если вы забыли пароль, то диск восстановления уже не спасёт.

Удобно создавать загрузочные флешки с помощью программы ИзиТуБут. После записи на пустую флешку специального образа через мастер ИзиТуБут, вы просто копируете все необходимые вам для загрузки iso-образы в соответствующие поддиректории директории _ISO загрузочной флешки. Уже при загрузке можно будет выбрать, какой из iso-образов стоит использовать для загрузки. Это могут быть не только образы дисков восстановления для разных дисков, диски восстановления антивирусов, но и образы установщиков операционных систем.

http://www.easy2boot.com/download/


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



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

В том числе, существует различного рода аппаратура, которая позволяет, подключившись по потрам FireWire, Thunderbolt или к шинам PCI и PCI Express (и прочее, типа ExpressCard, PMCIA, CardBus, ExpressCard) считать данные из оперативной памяти даже не выключая компьютера.

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

То есть жёсткий диск, с некоторой вероятностью, расшифруют полностью.



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

Для этого нужно специальное программное или аппаратное обеспечение, однако для сильного противника это абсолютно не проблема.

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

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

(Кстати, не обязательно, что вы узнаете, что диск похищен. Это может быть таможня или скрытное проникновение в квартиру, когда вас там нет)


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