LINUX.ORG.RU

Виртуализация и безопасность. Мнение создателя OpenBSD


0

0

В списке рассылки OpenBSD началось обсуждение по поводу возможности включения технологии виртуализации Xen в эту операционную систему. Было высказано предположение, что виртуализация должна стать приоритетом в связи с вопросами безопасности. Цитата: "Виртуализация, как нам кажется, имеет большое количество преимуществ в плане безопасности".

Создатель OpenBSD Theo de Raadt категорически не согласился с этим предположением: "Вы обкурились чем-то совершенно невозможным и вы должны срочно с нами этим [травой] поделиться". Далее он высказался так: "[Виртуализация] это как нечто красивое и разноцветное, лежащее на полке [магазина], и что вы, наконец, купили".

Он пояснил это изречение следующими словами: "Виртуализация на платформе x86 в самом простом случае обычно выражается в виде запуска дополнительной, практически полновесной версии ядра, содержащей большое количеством ошибок, на основе отвратительной архитектуры x86, которая едва ли имеет правильную защиту страниц [памяти]. Затем вы запускаете другую ОС в другой части этой кучи экскрементов [shit]. Вы находитесь в абсолютном заблуждении, если не сказать, что вы глупы, если думаете, что мировое сообщество софтверных инженеров, которые не могут написать ни ОС, ни приложения без ошибок в безопасности, вдруг написали слой виртуализации их не содержащий".

>>> Подробности

Ответ на: комментарий от Harliff

> Просвятите меня: можно ли из гостевой системы сломать > (получить доступ к) основную? Естественно. И шансов гораздо больше, чем через любую среднестатистическую прогу, так как среднестатистическая прога всё же меньше на несколько порядков, чем ядро ОС с обвязкой.

anonymous
()
Ответ на: комментарий от Harliff

> Просвятите меня: можно ли из гостевой системы сломать
> (получить доступ к) основную?
Естественно. И шансов гораздо больше, чем через любую
среднестатистическую прогу, так как среднестатистическая
прога всё же меньше на несколько порядков, чем ядро ОС
с обвязкой.

anonymous
()
Ответ на: комментарий от anonymous

> так как среднестатистическая
> прога всё же меньше на несколько порядков, чем ядро ОС
> с обвязкой.
Ну, конечно, сломать так же и саму прослойку xen тоже
придётся, но не думаю, что он безглючен.

anonymous
()
Ответ на: комментарий от anonymous

>Для чего вам эти виртуальные машины, каждая из которых - эмуляция x86 к тому же? Вы кластер гоняете чтобы виртуальные писюки работали, или всё же для реальных задач?

для виртуальных задач - не важно каких (мне нужно выделить определенное колличество ресурса динамически, я же написал CoD и AoD) вот у меня есть пул серверов - физических и/или виртуальных (практически все типы виртуалок) и софт, который автоматически ими управляет (запускает, останавливает, создает, клонирует) в результате у меня есть линукс, солярис и виндовс, а опенбсд в пролете. Тео - ССЗБ, извините, но это реалии жизни :)

>Эмулировать сотню писишек, и говорить, что это _улучшает безопасность_ - бред.

а зачем ВЫ такое говорите?

AcidumIrae ★★★★★
()

Я чувствую, сейчас анонимусы зародят на ЛОРе новое движение: atheoism.

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

atrus ★★★★★
()
Ответ на: комментарий от AcidumIrae

> вот у меня есть пул серверов - физических и/или виртуальных (практически все типы виртуалок) и софт, который автоматически ими управляет (запускает, останавливает, создает, клонирует) в результате у меня есть линукс, солярис и виндовс, а опенбсд в пролете.

Только это не имеет отношения к безопасности. Как бы описанная задача - несколько иная. :)

atrus ★★★★★
()
Ответ на: комментарий от atrus

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

+1

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

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

AVL2 ★★★★★
()
Ответ на: комментарий от AVL2

> Но тут, во первых, появляются трудности обслуживания нескольких копий одной и той же ОС

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

Ну и другие возможности. Например, включить гостя в зомби-нет. Или побезобразничать с самим супервизором. Он-то считается локальным приложением. И вопрос о том, а насколько он не дыряв не так бессмысленен. :)

atrus ★★★★★
()

Чувствую у мира опенсорса на одного харизматика стало больше !!

fyrer
()

Иногда Тео трудно понять
Что безопаснее - один физ сервер с двумя сервисами или две виртуалки по одному на одном физ.сервере ? понятно, что на самом деле безопаснее 2 физических сервака по одному сервису. В принципе, Тео так и считает - у него дома штук 50 различных машин с опенбсд, которые пожирают столько энергии что Тео был вынужден продавать футболки чтобы заплатить по счетам за электроэнергию. И с ним можно согласиться если ваш девиз "безопасность любой ценой".
Для остальных оптимально все таки разносить сервисы по виртуалкам - и их тоже можно понять - зависимость "глючности" софта от его размера скорее экспоненциальная а не линейная, таким образом если разложить одну сложную систему на две простые то суммарная "глючность" уменьшится, плюс еще и экономический бонус. не понимаю почему тео спорит с этим ?

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

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

Tester ★★★
()
Ответ на: комментарий от Tester

+1

"Серебрянной пули нет"(С) - поэтому решать что лучше: "12 виртуальных серверов по одной задаче на каждый", "3 виртуальных серверов по 4 задачи", "12 задач на 1 сервер" или "12 нитей в одной задаче" надо для конкретого случая, а не абстрактно.

Зарубать вообще возможность выбора - это "неТру".

nosuchuser
()
Ответ на: комментарий от anonymous

>Я в опенке сижу уже лет так пять

а! таки грибы...

anonymous
()

начинаю подозревать де раадта в троллизме..

p.s. три главных тролля - линус, рмс и раадт ;)

Somewho ★★
()
Ответ на: комментарий от AVL2

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

Почему "ни к чему" ? +) Вы поломали сервер через намед, который работает в одной гост оси. вы рассылаете с неё спам. Но доступа до базы данных (работающей в другой гост оси) у вас нет - для кражи номеров кредиток и паролей придётся поломать хост-систему. а это несколько сложнее.

vtVitus ★★★★★
()
Ответ на: комментарий от anonymous

> нет, это анонимусу надо читать - про inferno и singularity +1 Правда singularity - очередная попытка M$ изобрести собственный велосипед, который не всегда лучше существующих.

Где та сингуларити? так, пара туманных упоминаний об "новых идеях".

anonymous
()

Theo мужык! Здорово про траву завернул. И правда, зечем мне на роутере виртализация...

xenonex
()
Ответ на: комментарий от atrus

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

Изучить, да.

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

Короче говоря, безопасность тут явно не улучшается.

>Ну и другие возможности. Например, включить гостя в зомби-нет. Или побезобразничать с самим супервизором. Он-то считается локальным приложением. И вопрос о том, а насколько он не дыряв не так бессмысленен. :)

угу. тут просто +1

AVL2 ★★★★★
()

очень рад. теперь bsd будет наконец в той заднице, что заслуживает. и причем, я полностью согласен с TDR, только я наблюдаю эти яйца с другой стороны профиля. виртуализация это система инкапсуляции, т.е. средство повышения НАДЕЖНОСТИ! ГДЕ ТУТ О БЕЗОПАСНОСТИ? ВСЕ БЗДИШНИКИ КОНКРЕТНО ОБКУРЕННЫЕ, ЕСЛИ ЕЩЕ БЕРУТСЯ ПУБЛИЧНО СПОРИТЬ ПО ТАКОЙ ЕРУНДЕ!!!

anonymous
()
Ответ на: комментарий от atrus

>Только это не имеет отношения к безопасности. Как бы описанная задача - несколько иная. :)

а при чем тут безопасность? я выше написал "тео прав, но истнина дороже" :)))

самое просто заявить: "это небезопасно и поэтому нам это не нужно" - это политика страуса. жить тоже "небезопасно" и меня удивляет как тео еще не самоуничтожился :)))

AcidumIrae ★★★★★
()
Ответ на: комментарий от anonymous

>Забыл добавить - помимо работы одного глючного ядра под другим, между ними ещё и лежит глючный xen и эмулирует глючную x86 архитектуру. Ну и как вся эта солянка может повысить безопасность, вопрошает Тео. Даже теоретически это не возможно.

После такого дополнения хочется сказать что автар флеймер и у него нетрадиционная ориентация. Ну хоть удосужился чтоль почитать что такое xen и как это работает. Хотя наверно вот из-за всех таких придурков лор и интересно читать :)

anonymous
()
Ответ на: комментарий от anonymous

О по моему Тео сам не хило курнул

anonymous
()
Ответ на: комментарий от anonymous

>Тео зрит в корень, однако всё, что можно придумать уже придумали. В системе Bluebottle не используется аппаратная защита, хотя она многозадачна. При этом получается выигрыш в скорости переключения порождения процессов (примерно в пять раз быстрее Linux) и скорости переключения между процессами (примерно в 50 раз быстрее чем в Linux). Самое смешное, что получить доступ к ресурсам системы или ресурсам других процессов невозможно! И это действительно так. Система не запускает бинарники в обычном понимании этого слова - она компилирует их из специального slim-кода. Бу-га-га )))))

Теперь остается написать компилятор специального x86-кода в это ИДЕАЛЬНО-ЛУЧШИЙ slim-код. )))))

anonymous
()

Theo сам обкурился. И вообще OpenBSD в последние пару лет потихоньку становится отстоем, коему место разве что на роутерах. Ибо: 1. SMP. Мы все знаем, что именно Тео сказал по этому поводу 2. Ну да, виртуализация, банально всеж, но тем-не-менее 3. Пилять, gcc на OpenBSD до сих пор singl-threaded, да и вообще есть ли там нормальная поддержка тредов? Boost ничерта не собрается, точнее boost-thread - ну и в какую топку отправлять Unix-family-OS, которая не могет собрать нормально мультитредовую либу?

Да, в плане секурности OpenBSD рулит, да только нахрен мне такая секурность, если юзать эту ОС невозможно при этом?

anonymous
()

катаюсь по полу))

Theo de Raadt strongly disagreed with this assertion, "you've been smoking something really mind altering, and I think you should share it."

some1
()
Ответ на: комментарий от AcidumIrae

> самое просто заявить: "это небезопасно и поэтому нам это не нужно"

Это заявление не соответствует действительности. Я прошёл по ссылкам и прочёл, что OpenBSD сейчас работает как гость в Xen, а будет и в режиме host. Но чуть позже.

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

atrus ★★★★★
()
Ответ на: комментарий от AcidumIrae

> а при чем тут безопасность? я выше написал "тео прав, но истнина
> дороже" :)))
Тео и говорил как раз: "увеличить эффективность распределения
ресурсов это да, поможет, но вот некоторые обкуренные дятлы
утверждают, что это увеличивает так же и безопасность".
Только всё равно пускать кучу _разных_ операционок -
это несколько необычная ситуация, по-моему. А вот если
hostOS==guestOS, то тогда зачем xen? Чем OpenVZ не
устраивает?

anonymous
()
Ответ на: комментарий от atrus

ДЫк, на ЛОРе не принято ходить по сцылкам, а принято сразу лить говно на всё что не линукс.

mitek
()
Ответ на: комментарий от Aceler

ну наконец то это начали осознавать широкие массы =]. x86 RIP уже со времен 80286.

Ex ★★
()

Полностью поддерживаю автора - виртуализация даёт всего лишь ЕЩЁ ОДИН компьютер. Такой же дырявый, как и ОС, которая будет над ним вертеться. А данные так и остаются голыми. :(

anonymous
()
Ответ на: комментарий от Tester

> если разложить одну сложную систему на две простые то суммарная "глючность" уменьшится

Ерунду не надо молоть? Или определяй что есть "глючность" или используй нормальные термины.

Если я правильно понял логику, то в данном случае повышается УСТОЙЧИВОСТЬ системы, точнее даже не она, а failover - возможность обслуживания клиентов в случае сбоя одной из систем. Так для этого куда практичнее иметь отдельный физический сервер, чем клепать десять ОС на _одних_и_тех_же_физических_девайсах_. Если винт упадёт, ВСЕМ ДЕСЯТИ системам наступает пипец.

anonymous
()
Ответ на: комментарий от anonymous

> В системе Bluebottle не используется аппаратная защита, хотя она многозадачна. При этом получается выигрыш в скорости переключения порождения процессов (примерно в пять раз быстрее Linux) и скорости переключения между процессами (примерно в 50 раз быстрее чем в Linux). Самое смешное, что получить доступ к ресурсам системы или ресурсам других процессов невозможно! И это действительно так. Система не запускает бинарники в обычном понимании этого слова - она компилирует их из специального slim-кода.

Это интересно. Но если правда, что не используется ни одна из защит, предоставляемая процессором 386+, то никакой slim-код не поможет защитить ядро от процессора.

Скорее всего Вы ошибаетесь в том, что в Bluebottle не используется защита. К примеру, в 386+ система может использовать следущие типы защит:

1. Виртуальные страницы.

2. Сегментные регистры.

3. Уровень привелегий процесса (0-3).

Неужели Bluebottle не использует ничего из вышеперечисленного?

alman ★★★
()
Ответ на: комментарий от anonymous

> Читать: в системе Bluebottle не используется НИКАКАЯ защита. Напомнить флейм на RSDN об этом?

Да, интересно было бы взглянуть.

alman ★★★
()
Ответ на: комментарий от Harliff

> Просвятите меня: можно ли из гостевой системы сломать (получить доступ к) основную?

Напрямую наверняка нельзя. Но весьма вероятно то, что и хост и гость будут в одной IP-подсети. Т.е. получил контроль над гостем и...

alman ★★★
()
Ответ на: комментарий от anonymous

Неспеша идут работы по внедрению rthreads. Когда-нибудь сделают нормальную поддержку SMP...

KBAKEP
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.