Дырявые диски. Почему не стоит полагаться на шифрование средствами NAS

Шифрованием пользуются все. Будь то BitLocker в Windows, LUKS в Linux, кросс-платформенный VeraCrypt или встроенная в смартфоны Android и Apple система шифрования, мы привыкли к определенному набору функций. Привыкли к мгновенной смене пароля, уничтожению данных через удаление ключа шифрования, к высокой стойкости шифрования. Казалось бы, специализированные NAS тем более должны оправдывать все эти ожидания. Но на деле во многих NAS ситуация с шифрованием весьма печальна, и виной тому — файловая система eCryptFS.

Шифрование в сетевых накопителях (NAS)

Рынок сетевых хранилищ для домашних и офисных пользователей выглядит достаточно интересно. Самые массовые модели — Western Digital, производителя жестких дисков. NAS от WD привлекают низкой ценой, иногда даже отрицательной: диск в накопителе обходится дешевле такого же диска отдельно. При этом шифрования данных в тех самых массовых моделях WD просто нет. Нет совсем, как класса.

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

В роли догоняющих выступают такие производители, как ASUS (Asustor) и TerraMaster. Не выдержав конкуренции, сошли с дистанции Thecus и малоизвестные у нас Drobo и Buffalo. В отличие от Western Digital, большинство моделей этих производителей поддерживает шифрование, позволяющее защитить пользовательские данные. Производители поделились на два лагеря: представители одного из них (QNAP, Thecus) используют шифрование на уровне тома (volume-based encryption), в то время как второй лагерь (Synology, Asustor, TerraMaster) предпочитает шифрование отдельных сетевых папок на уровне файловой системы. У каждого способа есть свои преимущества и недостатки. Нас интересуют представители второго лагеря, использующие для шифрования криптографическую файловую систему eCryptFS.

eCryptFS в NAS: достоинства и недостатки

Во всех исследованных NAS, использующих шифрование сетевых папок, защита реализована средствами стандартной для Linux файловой системы eCryptFS, о которой можно почитать здесь или здесь. С точки зрения производителей NAS, eCryptFS обладает рядом достоинств:

  1. Уже готовое, проверенное решение: не нужно разрабатывать самостоятельно (обычно качественно реализовать вещи, которые относятся к безопасности, у производителей NAS не получается, поэтому использование готовых компонентов — меньшее зло).
  2. Стандартная реализация шифрования позволяет просто скопировать зашифрованную папку, к примеру, на другой накопитель — и данные останутся зашифрованными. При этом смонтировать и расшифровать такую папку получится стандартными средствами на любом компьютере с Linux. Приятный бонус: зашифрованные файлы можно скопировать и на диск, отформатированный в NTFS или FAT32/exFAT.
  3. Бесплатно: не нужно платить за лицензии, снижается себестоимость устройства.
  4. Безопасное резервное копирование: для создания и поддержания резервных копий (в том числе инкрементных) нет необходимости расшифровывать данные и монтировать зашифрованные сетевые папки. На самом деле администратор может даже не знать пароли от каждой из зашифрованных папок — данные все равно будут корректно скопированы или восстановлены. Изменения в незашифрованных файлах отражаются и в зашифрованных. Важный с точки зрения безопасности момент: нет необходимости хранить ключи шифрования в самом NAS, что делает резервное копирование не только удобным, но и безопасным. Впрочем, не буду незаслуженно хвалить производителей NAS: об этой возможности eCryptFS знают далеко не все, а воспользоваться ей достаточно сложно. Например, в Synology тебе придется установить приложение Hyper Backup и разобраться с принципом его работы — или пользоваться rsync из командной строки.
  5. Поскольку шифруются отдельные сетевые папки, не имеет значения, на каком из физических или логических накопителей они расположены. Главное, чтобы была поддержка на уровне файловой системы. Впрочем, шифрование сетевых папок на внешних накопителях, которые можно подключить к NAS через USB, не поддерживает ни один известный мне производитель NAS независимо от того, какая на внешнем устройстве файловая система. (В накопителях Asustor можно назначить один или несколько встроенных дисков в качестве архивных; для таких дисков шифрование доступно.)
  6. Каждый пользователь может зашифровать свою папку своим собственным паролем. Таким образом обеспечивается защита данных каждого авторизованного пользователя NAS от других авторизованных пользователей.
  7. Шифруются как сами данные, так и имена папок и файлов. Но не структура каталогов, количество и размер файлов.

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

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.


Олег Афонин: Эксперт по мобильной криминалистике компании «Элкомсофт»

Комментарии (5)

  • Статья хороша, осталось ощущение открытия новых (для меня) знаний. За ссылку на OpenAFS отдельное спасибо. А вот не хватает абзаца про то, как грустно будет администраторам если в их сети используются и форточки, и пингвин и яблоки... Вот где катастрофа... Ну а про пользователей забывающих пароли я промолчу.

  • А что лучше? Сразу идея взять что-то в духе raspberry pi + какой хаб/адаптер для юсб. А там уже вот тебе линукс, настраивай, защищай. Да и не дорого. Или есть что готовое?

    • Тяжело нормально защитить систему "с нуля", не обладая соответствующей квалификацией (а ей мало кто обладает даже из тех, кому положено по должности). К примеру, программисты Western Digital в устройстве WD My Cloud EX2 (предшественник модели Ultra) умудрились проигнорировать доступное в платформе аппаратное ускорение шифрования. В результате шифрование там работало мучительно медленно (а у конкурентов на той же платформе проблем особых не возникало). У Raspberry Pi, скорее всего, не хватит производительности для нормальной работы многослойного шифрования.

      Я вот думаю, что надёжнее всего собрать что-то на Windows. Первым уровнем будет BitLocker + TPM (или Intel PTT, неважно); причём в любой момент можно переключить на схему защиты BitLocker + TPM + PIN (здесь под PIN имеется в виду любой пароль). Вторым уровнем можно использовать шифрование на уровне сетевых папок посредством EFS, которые будут автоматически расшифрованы (для конкретного пользователя), когда пользователь залогинится в систему. Но никто не мешает реализовать любые фантазии - например, контейнеры VeraCrypt. Нулевой уровень требует диска с SED; в качестве такового может выступать загрузочный SSD (многие SSD поддерживают SED и Opal). А вот найти доступный по цене HDD с поддержкой SED - задача нетривиальная; мне не удалось. Администрировать всё это счастье посредством https://docs.microsoft.com/en-us/windows-server/manage/windows-admin-center/overview

  • А что с представителями первого лагеря? Понятно, что он не так популярен и ценник в России где-то в 2 раза выше, чем зарубежом. Шифрование отдельных папок также есть, оно такое же по сути, как у второго лагеря?

    • По-разному. Например, Thecus использует недокументированный способ шифрования тома; требует задать пароль, который больше никогда и нигде не используется; создаёт файл-ключ, который нужно записать на флешку. Вставил флешку в любой момент (во время или после загрузки) - том размонтировался; извлёк - остался смонтированным. Никаких других вариантов нет. У Qnap более развитая, но и более сложная система, в которой нужно отдельно разбираться.

Похожие материалы