Защита данных в сетевых хранилищах: шифрование на уровне папок

17 сентября, 2020, Oleg Afonin
Рубрика: «Разное»
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

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

А что, если речь идёт не о персональном компьютере, не о смартфоне или планшете, а о специализированном устройстве, основная и единственная цель которого – надёжное и безопасное хранение больших объёмов данных? Наверное, в таких устройствах шифрование данных реализовано на высшем уровне? Производители сетевых хранилищ не стесняются открытым текстом писать о защищённости, шифровании «как у военных» и прочих приятных уху и глазу вещах. Но если копнуть чуть глубже, выясняются удивительные вещи.

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

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

Особое место занимает компания Synology, домашние сетевые накопители которой отличаются красивым, хорошо оптимизированным софтом, качественной, хоть и не самой производительной, аппаратной платформой и длительным периодом поддержки – за соответствующие деньги. Популярностью пользуются и устройства основного конкурента – компания QNAP. В роли догоняющих выступают такие производители, как ASUS (Asustor), TerraMaster и Netgear. Не выдержав конкуренции, сошли с дистанции Thecus и малоизвестные у нас Drobo и Buffalo, которая может похвастаться вынесенной в начало статьи рекламной картинкой.

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

Неоднозначное шифрование

Возможно ли представить ситуацию, в которой на обычном домашнем компьютере окажется невозможно сменить пароль к зашифрованным данным (если, конечно же, использовался именно пароль, а не аппаратный модуль с ключом)? Возможно ли шифрование, которое не позволяет моментально уничтожить информацию, потому что ключи не хранятся в одном месте, а равномерно распределены по всему диску? Или ситуацию, в которой неавторизованному пользователю доступна полная структура файловой системы, количество и размер зашифрованных файлов? Современные схемы шифрования дисков в Windows, macOS и Linux не допускают подобных сценариев.

Однако многие производители специализированных сетевых хранилищ, даже те из них, которые предлагают «безопасное шифрование AES-256» не используют шифрование тома. Вместо этого шифрованию подвергаются отдельные папки, а в них – отдельные файлы с использованием шифрующей файловой системы eCryptFS. Насколько стойким является шифрование eCryptFS в сравнении с шифрованием всего диска, какие у него есть особенности, преимущества и недостатки? Попробуем разобраться.

Шифрование средствами файловой системы: безопасность

Encrypting File System — общее название для класса криптографических файловых систем, которые шифруют данные на уровне отдельных папок и файлов. Криптографические файловые системы предоставляют возможность «прозрачного шифрования» данных. Цель криптографических файловых систем – защита данных от несанкционированного доступа при физическом доступе как к накопителям, извлечённым из компьютера, так и к самому компьютеру (в том числе и от других авторизованных пользователей компьютера, авторизованных в собственных учётных записях).

От каких именно угроз способно, а от каких – не способно защитить шифрование средствами файловой системы?

Стойкость защиты: невысокая. Да, производитель может использовать шифрование AES с 256-битным ключом, но энтропия пароля среднего пользователя (что это такое и как подсчитать) намного ниже 256 бит. При этом отозвать скомпрометированный пароль или изменить его нельзя: потребуется длительная процедура перешифровки метаданных всех файлов или даже самих файлов. В сетевых хранилищах от Synology раз установленный пароль шифрования сменить нельзя: можно лишь сначала расшифровать, а потом заново зашифровать папку. Скорость перебора паролей к eCryptFS относительно VeraCrypt или даже BitLocker высокая (65,537 итераций SHA-512 по умолчанию против 500,000 у VeraCrypt), что также не добавляет ей стойкости.

Если диск извлекут из NAS: стойкость защиты в лучшем случае соответствует стойкости пароля шифрования; в худшем (ключи шифрования хранятся на самом диске) – нулевая. При этом даже в лучшем случае (зашифрованная папка не смонтирована, пароль – неизвестен) неавторизованный пользователь:

  • Получит доступ к дереву файловой системы (структуре папок)
  • Узнает точное число файлов и объём зашифрованных данных
  • Узнает точный размер каждого зашифрованного файла, что позволит произвести профилирование по размеру (поиск совпадений по размерам файлам)
  • Сможет произвольно удалить один или несколько файлов и папок
  • Сможет скопировать метаданные и произвести атаку на пароль

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

Защита от физического доступа к NAS: низкая. Криптографическая файловая система не защитит файл /etc/shadow от редактирования. Да, для этого может потребоваться извлечь диск из устройства – но при использовании шифрования сетевых папок в качестве единственного эшелона обороны системные файлы никак не защищены.

Удалённые атаки, зловредное ПО, вирусы-шифровальщики: если зашифрованная папка смонтирована, то влияние шифрования папок на реальную безопасность данных нулевое. Если же папка не смонтирована, то степень защиты зависит от того, хранятся ли ключи в самом NAS или же пользователь вводит пароль каждый раз при доступе к зашифрованной папке. К слову, от вирусов-шифровальщиков помогает защититься использование файловой системы BTRFS с регулярным созданием «теневых копий».

Сильные стороны eCryptFS

Во всех исследованных NAS, использующих шифрование сетевых папок, защита реализована средствами стандартной для Linux файловой системы eCryptFS, о которой можно почитать здесь или здесь. Почему такие производители, как Synology и Asustor (а в моделях с процессорами Intel — в качестве доступной опции и QNAP), выбрали шифрование на уровне сетевых папок, а не более распространённый вариант шифрования на уровне тома с использованием LUKS? Дело в том, что при всех своих недостатках eCryptFS обладает и целым рядом достоинств.

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

Слабые стороны eCryptFS

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

  1. Шифрование папок не является «сквозным шифрованием». Анализ зашифрованной папки позволит узнать следующую информацию:
    1. Структуру папок
    2. Количество и размер зашифрованных файлов
    3. Объём зашифрованных данных
  2. Ограничения на длину имени файла. В зашифрованной eCryptFS папке длина имени файла (или папки) не может превышать 143 символа ANSI или 47 символов иероглифической записи (почему так). Это ограничение идёт с давних времён, и связано оно в первую очередь с тем, что криптографические файловые системы – своеобразные «костыли», работающие поверх обычных файловых систем. К примеру, зашифрованное имя файла ~/.bashrc может выглядеть следующим образом:
    dWek2i3.WxXtwxzQdkM23hiYK757lNI7Ydf0xqZ1LpDovrdnruDb1-5l67.EU--
  3. (Synology DSMx) Для зашифрованных папок не поддерживается NFS.
  4. Ключ шифрования – хэш от пароля. Почему это плохо? Если данные зашифрованы непосредственно паролем или его хэшем, смена пароля приводит к необходимости перешифровки всех файлов. Именно по этой причине в сменить пароль нельзя; можно лишь расшифровать и заново зашифровать папку – развлечение на несколько дней, если речь идёт о большом объёме данных). Как делать правильно? Разделять ключи шифрования данных и ключи шифрования ключей шифрования. Собственно пароль в правильной схеме шифрования должен использоваться исключительно для шифрования ключей, которыми, в свою очередь, будут зашифрованы сами данные (так, к примеру, сделано в реализации EFS в Windows).
  5. Потенциально низкая энтропия пароля. Простая логика: если ключ шифрования не сохранять на устройстве (что является эквивалентом отсутствия шифрования), то пароль придётся вводить каждый раз для доступа к зашифрованным данным. В такой ситуации большинство пользователей использует пароль с чрезвычайно низкой энтропией, восстановить который в случае атаки будет довольно просто. И мало того, что пароль может быть с невысокой энтропией, так его ещё и сменить не получится.
  6. Метаданные шифрования хранятся в каждом файле. Это приводит к тому, что быстро и надёжно удалить зашифрованную информацию невозможно. Удаление зашифрованной папки не приводит к безвозвратному уничтожению зашифрованных данных (а вот быстрое форматирование тома BitLocker или FileVault 2 – приводит).

Чем может грозить утечка таких данных, как объём зашифрованной информации, количество файлов и размер каждого файла? Как минимум – отказом «правдоподобного отрицания». Соответственно, к зашифрованным папкам применимы такие атаки, как профилирование по размеру файлов, что позволяет узнать содержимое зашифрованной папки, если размер заданного количества файлов совпадает с размером файлов, известных атакующему.

Рекомендации: как обезопасить зашифрованные данные

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

  1. Запомните: единожды установленный пароль шифрования сменить не получится без полной расшифровки папки с последующим шифрованием файлов новым паролем. Внимательно отнеситесь к выбору пароля. Установите длинный пароль с высокой энтропией, желательно – набор случайных символов. Имейте в виду, что скорость атаки на eCryptFS высокая, и пароль с низкой энтропией может быть восстановлен очень быстро.
  2. Ни в коем случае не сохраняйте ключ шифрования в самом устройстве. Если необходимо автоматически монтировать зашифрованные папки, сохраните ключ на внешнем USB накопителе.
  3. Если ключ шифрования сохраняется на USB накопителе (например, в случае офисного NAS), обеспечьте физическую безопасность этого накопителя.
  4. Проконтролируйте процесс создания и сохранения резервного ключа (в Synology это файл с расширением .key, который будет сохранён на компьютере автоматически после создания зашифрованной папки). Этот ключ имеет смысл сохранить в зашифрованном виде (в архиве с паролем или на зашифрованном диске).
  5. Продумайте стратегию автоматического монтирования зашифрованных папок. Автоматическое монтирование зашифрованных данных при загрузке – эквивалент отсутствия безопасности.

Заключение

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

 


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
НАШИ НОВОСТИ