Предотвращение кражи данных на удаленно развернутых серверах, подверженных физическому доступу [закрыто]

13

Я пытаюсь придумать способ защитить серверы Linux, которые подвергаются физическому доступу. Моя конкретная платформа - это Linux-серверы небольшого форм-фактора на материнской плате PC Engines марки alix2d13 . Небольшой размер представляет дополнительный риск удаления из помещения злоумышленником.

Предполагая, что есть физический доступ к серверу:

1) ROOT-PASSWORD: вы подключаете консольный кабель к серверу и получаете запрос пароля. Если вы не знаете пароль, вы можете перезагрузить аппарат в однопользовательском режиме и сбросить пароль. Вуаля, вы получаете root-доступ.

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

2) GRUB_PASSWORD. Если вы выключите компьютер, достанете жесткий диск и смонтируете его на другой рабочей станции, вы сможете просмотреть /bootкаталог, в котором находится файл grub.cfg, внутри которого вы можете найти пароль GRUB. Вы можете изменить пароль GRUB или удалить его.

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

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

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

giomanda
источник
3
Если вы не хотите быть рядом, чтобы вводить пароль для расшифровки при каждой загрузке, вы ничего не можете сделать. Расшифровка может быть осуществлена ​​путем связи с сетевым сервисом, который доступен только в том случае, если он находится в соответствующей сети. Это не очень безопасно, но достаточно, чтобы охватить случай, когда вор не пытается получить доступ к данным, находясь на месте. Но целевой злоумышленник может даже украсть машину, не выключая ее. Я полагаю, что для поддержания заряда батареи в течение нескольких минут не потребовалось бы много энергии.
Касперд
12
Хороните его в бетоне. Это, безусловно, предотвратит кражу!
Майкл Хэмптон
14
Не совсем понятно, что это за модель угрозы. Вы хотите устройство, которое неуязвимо для физического компромисса? Это будет очень сложно и дорого. Компьютеры не являются хранилищами. Если вы хотите хранилище, вам нужно хранилище.
Дэвид Шварц
3
@BlueCompute Вопрос может возникнуть и в профессиональной среде, поэтому он должен остаться здесь.
Нильс
3
@giomanda И это «threa т модель». И отчасти это означает, что вы должны полностью понимать, что вы защищаете и от чего вы его защищаете. Вы можете использовать команду SEAL Team Six для защиты форта Нокс от Аль-Каиды, но не для защиты своего нового плазменного телевизора от соседских воров.
Дэвид Шварц

Ответы:

18

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

Эндрю Шульман
источник
14
И даже тогда сомвон с физическим доступом может заменить клавиатуру, используемую для ввода пароля загрузки, и, таким образом, выучить пароль ...
Хаген фон Айцен
2
Решение @HagenvonEitzen: возьмите с собой собственную клавиатуру и защитите физический порт USB (или PS / 2) на коробке.
Жюль
10
@JulesMazur Контратака: Evil Maid перепрошивает встроенную прошивку.
CVn
1
@ MichaelKjörling Defense: пароль встроенного ПО, физически, надежно заблокированный серверный блок.
Жюль
6
@ MichaelKjörling, ты никогда не будешь слишком безопасен с бродячими бандами злых девок, угоняющими клавиатуру и / или прошивку
Жюль
10

Известное мне решение - зашифровать диск и использовать модуль TPM: Trusted Platform Module.

Таким образом, теперь есть способ расшифровать жесткий диск как:

Приложения полного шифрования диска [...] могут использовать эту технологию [TPM] для защиты ключей, используемых для шифрования жестких дисков компьютера, и обеспечения аутентификации целостности для надежного пути загрузки (например, BIOS, загрузочного сектора и т. Д.). сторонние продукты полного шифрования диска также поддерживают TPM. Однако TrueCrypt решил не использовать его. - Википедия

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

ColOfAbRiX
источник
Это верно. С доверенным платформенным модулем, зашифрованным диском и подписью UEFI для постороннего невозможно прочитать диск или изменить загрузчик, чтобы обойти шифрование.
longneck
Было бы интересно узнать, существует ли перо USB с TPM для добавления этой функции на любой компьютер.
ColOfAbRiX
1
Нет, потому что биос должен управлять tpm.
longneck
3
При физическом доступе даже TPM мало что сделает ... вы можете легко перехватить данные с микросхемы TPM во время загрузки компьютера или получить доступ ко всей памяти компьютера без предупреждения компьютера (и, таким образом, TPM "откроется"). "ключ просто отлично).
2
TPM попадет на устройство PCI на шине, которое не отвечает на перечисление PCI, но перезаписывает ОС через DMA позже.
Джошудсон
7

Полное шифрование диска - хорошая идея для ноутбуков и небольших домашних серверов.

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

Для вашего домашнего использования может быть достаточно установить креативное оборудование DIY, которое:

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

Для журналистов и разоблачителей, сталкивающихся с некоторыми крупными компаниями или могущественными государственными органами в качестве своих врагов, это, вероятно, все еще недостаточно безопасно. У этих трехбуквенных агентств может быть судебно-медицинское оборудование, необходимое для извлечения открытого текста из ОЗУ даже через несколько минут после отключения питания .

pefu
источник
7

Вот простое решение: пересобрать ядро ​​без однопользовательского режима!

Проще говоря, отредактируйте используемое вами ядро ​​linux так, чтобы режим S был переназначен так, как вам нужен режим по умолчанию (3,4,5). Таким образом, любая попытка загрузки в однопользовательском режиме запускает систему в обычном режиме. Возможно, вы могли бы сделать то же самое в сценариях инициализации. Таким образом, не было бы никаких специальных средств для входа в систему, не зная пароля.

Arkain
источник
Если я все еще могу получить доступ к приглашению grub, я все равно могу изменить параметры ядра на init=/bin/bash. Это загрузит вас в оболочку root bash, где вы сможете смонтировать /.
Дженс Тиммерман
Grub всегда можно настроить так, чтобы он не разрешал доступ к своей оболочке.
Аркаин
Как уже указывалось в других ответах на этот вопрос: если опытный злоумышленник получает физический доступ к компьютеру, то ваше ядро ​​восстановления - это не что иное, как старая паутина на пути в гробницу, содержащую ваши драгоценные секретные драгоценности данных. :-)
pefu 15.12.15
3

Идите и спросите на сайте электроники. Я почти уверен, что есть встроенные SOC-проекты, которые шифруют все, и, как только вы это сделаете, «невозможно» реконструировать.

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

Зан Рысь
источник
1

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

Это «запрещает» доступ в том смысле, что никто не может получить доступ к системе впоследствии. Таким образом, он отвечает на вопрос дословно, хотя, возможно, совершенно не хватает ваших намерений.

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

Возможны также решения на основе таймера - если устройство не может пинговать каждые несколько минут / часов / ... домой, оно само уничтожается. Много разных возможностей по этой теме.

Dani_l
источник
По крайней мере, на вращающемся жестком диске его пластинки могут быть трансплантированы на другой диск той же модели, и они будут отлично читать, даже если печатная плата была полностью разрушена. (Не уверен насчет твердотельных накопителей, но я бы не стал рассчитывать, что это будет намного сложнее.) Это то, что компании по восстановлению данных делают все время. Если вы собираетесь делать что-то подобное с какой-либо разумной степенью уверенности (хотя все еще ни в коем случае не уверены!), Поместите небольшое взрывчатое вещество в недра привода. Работает лучше с твердотельными накопителями, чем с вращающимися жесткими дисками по причинам, не связанным с предполагаемой разрушающей силой.
CVn
@ MichaelKjörling Thermite - это то, что нужно. Взрывчатка в жестком диске требует относительно большого взрыва, чтобы фактически уничтожить данные. Вы уничтожите верхнюю тарелку, если взрывчатка на самом деле находится в приводе, но жесткие диски привода довольно здоровенные, они не собираются просто сгореть без довольно опасного количества взрывчатки. Термит очень хорошо прожигает металл.
DanielST
1

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

Чтобы загрузить устройство, как только вы вставляете USB-накопитель в порт (на внешней стороне «хранилища»), оно считывает оттуда ключ FDE и загружает систему. Если «хранилище» когда-либо открыто, переключатель открытия перезагрузит систему, удалив ключ из памяти.

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


источник