Назад | Перейти на главную страницу

Возможно ли иметь 100% безопасный виртуальный частный сервер?

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

Очевидно, есть кое-что, что вы можете сделать, чтобы они ничего не прочитали ...

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

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

  3. И даже если бы вы могли это остановить, похоже, они могли бы просто читать оперативную память VPS напрямую.

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

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

Итак, мои два вопроса:

  1. Это верно? Верно ли, что невозможно на 100% защитить данные на VPS от хоста, не увидев их, сохранив при этом доступ к ним для VPS?

  2. Если возможно сделать его на 100% безопасным, то как? Если это невозможно, то что ближе всего к сокрытию данных с веб-хостинга?

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

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

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

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

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

Кроме того, в сообществе безопасности уже давно существует консенсус, что "100%" безопасности достичь невозможно. Задача специалиста по безопасности состоит в том, чтобы оценить возможные векторы атак, усилия, необходимые для их использования, и сравнить прогнозируемую стоимость атаки со стоимостью затронутых ею активов, чтобы убедиться, что для атаки не будет финансового стимула и способность проводить атаку будет ограничена небольшим (в идеале нулевым) кругом людей или организаций, не заинтересованных в активах, которые он пытается защитить. Подробнее по этой теме: http://www.schneier.com/paper-attacktrees-ddj-ft.html

Да.

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

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