В прош­лом году я про­вел под­робное иссле­дова­ние тех­нологии шиф­рования, исполь­зующей­ся в сетевых хра­нили­щах Synology. Единс­твен­ный слой защиты в виде шиф­рования сетевых папок не устро­ил меня ни пред­лага­емым уров­нем ком­форта, ни обес­печива­емым уров­нем безопас­ности. «Хорошо бы, — думал я, — если бы в NAS мож­но было вклю­чить шиф­рование дис­ков на аппа­рат­ном уров­не, а поверх соз­дать зашиф­рован­ный том, а пап­ки, так и быть, зашиф­ровать тем, что есть». Похоже, меч­ты сбы­вают­ся — но не сов­сем так, как хотелось бы.

Ры­нок «домаш­них» сетевых хра­нилищ насыщен пред­ложени­ями. Для тех, кого пуга­ет само сло­во NAS, — линей­ка WD My Cloud Home, фай­лы в которой хра­нят­ся в виде порезан­ных на кусоч­ки бло­бов в базе дан­ных, а соз­дать сетевую пап­ку и орга­низо­вать стри­минг на умный телеви­зор — задача, штат­ными спо­соба­ми не реша­емая. Более кон­серва­тив­ные поль­зовате­ли, энту­зиас­ты и сег­мент SOHO могут выбирать из пред­ложений Synology, QNAP и Asustor.

В моделях всех про­изво­дите­лей, за исклю­чени­ем «домаш­них» устрой­ств Western Digital, под­держи­вает­ся шиф­рование дан­ных по алго­рит­му AES-256. Нес­мотря на исполь­зование одно­го и того же алго­рит­ма, детали реали­зации у раз­ных про­изво­дите­лей могут отли­чать­ся нас­толь­ко, что даже срав­нивать меж­ду собой раз­личные схе­мы получа­ется с боль­шим тру­дом. Так, в ком­пании Synology сде­лали став­ку на шиф­рование сетевых папок — eCryptFS. В QNAP пош­ли дру­гим путем.

 

Архитектура защиты

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

  1. Self-encrypting drive (SED). Шиф­рование SED выпол­няет непос­редс­твен­но кон­трол­лер жес­тко­го дис­ка — при усло­вии под­дер­жки со сто­роны про­шив­ки. Далеко не все модели дис­ков под­держи­вают SED; про­ще все­го получить такой диск, разоб­рав внеш­ний накопи­тель WD My Book (толь­ко одно­дис­ковые модели; в двух­диско­вых шиф­рование реали­зова­но на уров­не кон­трол­лера USB). В NAS от QNAP, в тех моделях, где под­держи­вает­ся SED, вклю­чить защиту мож­но как для отдель­ного дис­ка, так и для все­го пула — орга­низо­вав, таким обра­зом, пол­ностью зашиф­рован­ный SED пул хра­нения. Шиф­рование SED — отличный «нулевой» слой шиф­рования, защища­ющий дан­ные, нап­ример при отправ­ке дис­ков в гаран­тий­ный сер­вис.

  2. Шиф­рование тома. Тра­дици­онно имен­но этот тип шиф­рования исполь­зовал­ся во всех устрой­ствах QNAP. Дан­ный тип шиф­рования — прог­рам­мный; его вклю­чение нес­коль­ко сни­жает про­изво­дитель­ность дис­ковой под­систе­мы. Впро­чем, раз­ница не кри­тич­на. Шиф­рование тома может защищать как тома, рас­положен­ные на кон­крет­ном дис­ке, так и мно­годис­ковые тома, рас­положен­ные в прос­транс­тве хра­нения объ­еди­нения физичес­ких жес­тких дис­ков.

  3. Шиф­рование сетевых папок. Этот тип шиф­рования нам уже зна­ком по иссле­дова­нию шиф­рования Synology. В NAS от QNAP дан­ный тип защиты появил­ся срав­нитель­но недав­но, а соз­давать зашиф­рован­ные пап­ки на зашиф­рован­ных томах ста­ло воз­можно и вов­се бук­валь­но на днях. Неуди­витель­но, что реали­зация от QNAP отста­ет от ана­лога в Synology DSM по час­ти хра­нения, управле­ния и защиты депони­рован­ных клю­чей.

 

Шифрование SED: физический, или «нулевой», уровень защиты

Шиф­рование по методу self-encrypting drive — SED — воз­можно при исполь­зовании спе­цифи­чес­ких моделей дис­ков, шиф­рование которых реали­зова­но аппа­рат­но в рам­ках кон­трол­лера и под­держи­вает­ся про­шив­кой. Пос­ледняя ремар­ка име­ет зна­чение: подав­ляющее боль­шинс­тво сов­ремен­ных кон­трол­леров обла­дает воз­можностью аппа­рат­ного шиф­рования, но воз­можность эта акти­виру­ется лишь в моделях, пред­назна­чен­ных для спе­цифи­чес­ких при­мене­ний. Эти при­мене­ния далеко не всег­да под­разуме­вают исполь­зование в дата‑цен­трах. К при­меру, популяр­ные внеш­ние дис­ки WD My Cloud пос­тавля­ются с дис­ками, в которых фун­кция SED акти­виро­вана.

К сожале­нию, сво­бод­ного дис­ка с SED для экспе­римен­тов у меня не наш­лось, поэто­му про­тес­тировать работу фун­кции в NAS от QNAP я не смог.

Ин­терес­ный момент: шиф­рование SED в NAS от QNAP мож­но исполь­зовать для соз­дания пол­ностью зашиф­рован­ных мно­годис­ковых пулов хра­нения. На таком зашиф­рован­ном пуле хра­нения мож­но затем соз­дать обыч­ный или зашиф­рован­ный логичес­кий раз­дел.

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

 

Шифрование тома

В QNAP впер­вые была реали­зова­на имен­но защита на уров­не тома. Этот тип защиты дос­тупен для боль­шинс­тва накопи­телей QNAP, как тех, что осна­щены про­цес­сорами Intel, так и осно­ван­ных на архи­тек­туре ARM.

За­шиф­рован­ный том мож­но соз­дать в виде ста­тич­ного раз­дела или в виде раз­дела поверх пула хра­нения (в том чис­ле зашиф­рован­ного SED). Шиф­рование тома — прек­расный пер­вый слой шиф­рования, который работа­ет на любых дис­ках, даже тех, которые не под­держи­вают SED. Обратная сто­рона — ско­рость: при исполь­зовании шиф­рования тома наб­люда­ется неболь­шая потеря про­изво­дитель­нос­ти, а вре­мя, тре­бующееся накопи­телю для любых опе­раций с зашиф­рован­ным раз­делом, исчисля­ется в минутах.

 

Основные концепции

Шиф­рование тома реали­зова­но на осно­ве шиф­ра AES-256 при помощи стан­дар­тно­го механиз­ма cryptsetup (LUKS) с одним исклю­чени­ем: пароль поль­зовате­ля пре­обра­зует­ся в крип­тогра­фичес­кий ключ ути­литой storage_util собс­твен­ной раз­работ­ки QNAP. Соот­ветс­твен­но, что­бы смон­тировать зашиф­рован­ный раз­дел за пре­дела­ми NAS от QNAP, необ­ходимо про­вес­ти пре­обра­зова­ние, вос­поль­зовав­шись сов­мести­мым NAS от QNAP (это не обя­затель­но дол­жно быть то же устрой­ство, на котором был соз­дан том). Нас­коль­ко мне извес­тно, экви­вален­та этой ути­лите в Linux не сущес­тву­ет.

  • Ре­али­зация: cryptsetup (LUKS); ути­лита собс­твен­ной раз­работ­ки (storage_util) для пре­обра­зова­ния пароля в ключ.
  • Шиф­рование тома с дан­ными: нет. Зашиф­ровать мож­но толь­ко новый том при его соз­дании.
  • Рас­шифров­ка тома с дан­ными: нет. Мож­но лишь уда­лить том и соз­дать его заново.
  • Сме­на или отзыв ском­про­мети­рован­ного пароля: да. Пароль мож­но сме­нить в любой момент. Это дол­го (минут пять), но воз­можно.
  • Ключ шиф­рования: пароль (пре­обра­зовы­вает­ся собс­твен­ной ути­литой от QNAP) или файл с клю­чом раз­мером 256 байт.
  • По­тен­циаль­ные уяз­вимос­ти: см. раз­дел «Сох­ранение клю­чей».

За­шиф­рован­ный том мож­но заб­локиро­вать, в резуль­тате чего том будет раз­монти­рован. Это тоже занима­ет доволь­но мно­го вре­мени (при­мер­но пять минут на нашей тес­товой сис­теме QNAP TS-453Be). Веро­ятно, с точ­ки зре­ния раз­работ­чиков бло­киров­ка зашиф­рован­ного тома не счи­тает­ся рутин­ной опе­раци­ей и, соот­ветс­твен­но, не нуж­дает­ся в опти­миза­ции.

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

Раз­бло­киро­вать том мож­но, вве­дя пароль или пре­дос­тавив файл с клю­чом.

Раз­бло­киров­ка тома на тес­товом устрой­стве QNAP TS-453Be занима­ет око­ло пяти минут. Это еще одно дей­ствие, которое поль­зовате­ли не будут совер­шать регуляр­но, а посему в опти­миза­ции не нуж­дающееся.

Па­роль шиф­рования мож­но сме­нить через поль­зователь­ский интерфейс. Сме­на пароля так­же отно­сит­ся к заняти­ям ред­ким и потому, оче­вид­но, не нуж­дающим­ся в опти­миза­ции. (В скоб­ках: и заг­рузка NAS тоже отно­сит­ся к таким не нуж­дающим­ся в опти­миза­ции про­цес­сам. Мне хотелось бы взгля­нуть на пол­ный спи­сок таких вещей, что­бы знать точ­но, что имен­но, с точ­ки зре­ния раз­работ­чиков QTS, я не дол­жен делать регуляр­но.) Сме­на пароля тре­бует раз­монти­рова­ния зашиф­рован­ного тома (пять минут) и его пос­леду­юще­го мон­тирова­ния (еще пять минут). Ито­го — десять минут на сме­ну пароля.

 

Детали реализации

Как уже было ска­зано, QNAP исполь­зует механизм cryptsetup и шифр AES-256. Под­робные инс­трук­ции по мон­тирова­нию зашиф­рован­ных томов есть на стра­нице Mounting QNAP encrypted volumes; пароль для это­го необ­ходим.

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

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

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

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

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


  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    4 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии