Вопросов:
- если виртуальная машина повреждена (взломана), чем я могу рисковать на других виртуальных машинах, работающих на той же физической машине?
- Какие проблемы безопасности возникают между виртуальными машинами, работающими на одном физическом хосте?
- Есть ли (вы можете сделать) список этих (потенциальных) недостатков и / или проблем?
Предупреждение:
Я знаю, что существует много типов / решений для виртуализации, которые могут иметь различные недостатки. Тем не менее, я в основном ищу общие проблемы безопасности в технологиях виртуализации, а не конкретную ошибку поставщика.
Пожалуйста, предоставьте реальные факты, (серьезные) исследования, опытные проблемы или технические объяснения. Быть конкретной. Не (только) не высказывайте свое мнение.
- Примеры:
Два года назад я слышал, что могут быть проблемы безопасности, связанные с MMU (я думаю, доступ к основной памяти других машин), но я не знаю, является ли это практической угрозой на сегодняшний день или просто теоретическим исследованием предмет.
РЕДАКТИРОВАТЬ: Я также обнаружил, что эта атака "Flush + Reload" способна получить секретные ключи GnuPG на том же физическом компьютере, используя кэш L3 CPU, даже если GnuPG работает на другой виртуальноймашине. GnuPG был исправлен с тех пор.
Ответы:
Конечно, можно использовать другую виртуальную машину, работающую на том же оборудовании, если использовать ее. Кроме того, можно существовать. Ваш вопрос цитирует некоторые недавние работы, показывающие один. Я не собираюсь здесь рассказывать о каких-либо конкретных подвигах или PoC, но я с удовольствием расскажу, как их можно сделать.
Эксплойты, которые используются в этом контексте, естественно отличаются от тех, которые работают, когда вы работаете на той же машине, на которой вы пытаетесь использовать сервис, и они имеют тенденцию быть немного сложнее из-за повышенной изоляции. Тем не менее, некоторые общие подходы, которые могут быть использованы для выполнения такого эксплойта, включают в себя:
Конкретные атаки будут возникать и исправляться с течением времени, поэтому неверно классифицировать какой-либо конкретный механизм как пригодный для использования, пригодный для использования только в лабораторных условиях или неиспользуемый. Как вы можете видеть, атаки, как правило, являются сложными и сложными, но какие из них осуществимы в конкретное время - это то, что быстро меняется, и вам нужно быть готовым.
Тем не менее, векторы, которые я упомянул выше (с возможным исключением последнего в некоторых случаях) просто не существуют в голых металлических средах. Так что да, учитывая, что безопасность - это защита от подвигов, о которых вы не знаете, и о которых нет ничего общего с теми, которые были обнародованы, вы можете получить небольшую защиту, работая на голом металле или на по крайней мере, в среде, где гипервизор не размещает виртуальные машины для всех и каждого.
В целом, эффективная стратегия безопасного программирования приложений состоит в том, чтобы предполагать, что на компьютере запущены другие процессы, которые могут контролироваться злоумышленником или быть злонамеренными, и использовать методы программирования, учитывающие эксплойты, даже если вы думаете, что иначе не гарантируете такого процесса существует в вашей виртуальной машине. Однако, особенно с первыми двумя категориями, помните, что тот, кто касается оборудования, побеждает первым.
источник
В теории нет. Весь смысл гипервизора состоит в том, чтобы изолировать виртуальные машины друг от друга.
На практике были (и могут быть в будущем) ошибки безопасности в различных гипервизорах, которые могли позволить одной виртуальной машине влиять либо на гипервизор, либо на другие виртуальные машины на одном хосте. Меры безопасности, такие как sVirt (для KVM / QEMU), предназначены для решения этой проблемы.
источник
Редактировать: я думал, что эта тема была сделана несколько месяцев назад, но она только что возродилась, и теперь OP просит больше «реальных фактов, цитируемых исследований» и т. Д., Так что я понял, какого черта.
Подвиги такого рода:
Нельзя сказать, что невозможно взломать гипервизор и получить доступ к другим виртуальным машинам. Мы также не можем количественно оценить, насколько велик риск, за исключением того, что этот опыт показывает нам, что он довольно низок, учитывая, что вы не найдете много историй атак, использующих эксплойты гипервизора.
Вот довольно интересная статья об обратном, которая предполагает, что было проведено более нескольких атак на основе гипервизора.
Однако, поскольку технологии теперь зависят от гипервизоров сейчас как никогда, такие эксплойты будут исправлены и защищены от них с большей срочностью, чем почти любой другой тип эксплойта.
Вот выдержка из полугодового отчета о тенденциях и рисках IBM X-Force 2010:
(Пожалуйста, откройте это изображение в новой вкладке, чтобы просмотреть его в полном размере.)
Обратите внимание на измеренный процент уязвимостей Escape to hypervisor, который звучит для меня довольно страшно. Естественно, вы захотите прочитать оставшуюся часть отчета, так как в нем гораздо больше данных для подтверждения заявлений.
Вот история о возможном эксплойте на гипервизоре Playstation 3, что забавно. Может быть, не так сильно влияет на ваш бизнес, если только ваш бизнес не Sony, и в этом случае он чрезвычайно эффективен.
Вот замечательная статья от Эрика Хоршмана из VMware, в которой он вроде как звучит как подростковый, полный анти-микро, но это все же хорошая статья. В этой статье вы найдете такие лакомые кусочки:
Борьба среди конкурентов. Но, вероятно, самая ясная вещь, которую он говорит во всей статье, такова:
источник
Постоянно цитируемый Тео де Раддт из проекта OpenBSD:
Немного подстрекательский, но его точка зрения хорошо принята. В теории виртуализация должна обеспечивать полную изоляцию между виртуальными машинами и их хостом. На практике иногда случаются уязвимости, которые позволяют опытным злоумышленникам обойти эти средства защиты и получить доступ к другим виртуальным машинам или, что еще хуже, к их хосту (см . Эмпирическое исследование воздействия безопасности на хосты враждебных виртуальных сред ). Как упоминает Райан Райс, такого рода уязвимости встречаются довольно редко (что не означает, что их там нет) и часто не раскрываются поставщиками, но они существуют.
Если вас беспокоят потенциальные атаки такого типа (и я думаю, что в какой-то степени это так), я рекомендую не смешивать зоны безопасности на одном виртуальном хосте или кластере виртуальных хостов. Например, у вас будет выделенный кластер виртуальных хостов с двумя узлами для виртуальных машин DMZ, выделенный кластер для промежуточного программного обеспечения и выделенный кластер для защищенных активов. Таким образом, в случае, если уязвимость используется таким образом, что злоумышленник может подорвать другие виртуальные машины или, что еще хуже, сам гипервизор, ваша модель безопасности все еще остается нетронутой.
источник