The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Уязвимость в гипервизоре VMM, развиваемом проектом OpenBSD"
Отправлено недобрый, 20-Фев-20 22:33 
> Ну то есть ещё раз: если для некоторых приложений не ОТКЛЮЧИТЬ pax-защиты,
> они работать не будут.

А если отключить - будут. Ещё раз: это whitelisting, лучшая практика по индустрии. Тебе она близка в аспектах secure by default. И как ты тут пыжишься и решаешь за всех, какой PaX неудобный и неправильный, что говно и что абсурд, отлично характеризует лично тебя, а не предмет "обсуждения".

> Как кого-то это говно может устраивать?
> гораздо лучше надрачивать
> предлагать пользователю решать самому - абсурд

Раскрылся, эксперт.

>> В OpenBSD всё решили за пользователя: только следование стандарту, только в ущерб безопасности.
> Решили, но не в ущерб безопасности. Хром на ведре с PAX-патчами не
> становится безопаснее, потому что для него PAX всё равно выключается.

Нет, именно в ущерб. В PaX без MPROTECT работают процессы, для которых он явно отключён, а в OpenBSD без аналогичной защиты работает всё, что не собрано с pledge.

>> Выбор оставили только разработчикам, то есть, себе любимым - тот самый pledge.
> Нет, не себе любимым, а всем.

Не всем, а только тем, кто готов взять на себя бремя модификации и пересборки исходников.

> Вообще-то знаю, я даже написал про это в сообщении, на которое ты
> отвечаешь: "Ну да, "W^X part two" оно тоже умеет, но это
> скорее посмеяться".

Когда нет аргументов по существу, остаётся только "смех" и физиологизмы.

>> Даже в линуксе. А в OpenBSD - выбора нет. Если тебе этот выбор не нужен - это твоё и только твоё дело.
> Повтори мантру про выбор ещё, чо.

И повторю.

> сделай патч, это 1-2 строки кода примерно будет.

Сделать патч, пересобрать, развернуть. С PaX обхожусь без этих лишних трудозатрат, оставляя ресурсы для более важных вещей.

> Наружная крутилка для внутренней логики работы программы - это абсурд и иллюзия
> безопасности.

Иллюзия безопасности - это OpenBSD с набором защит ядра уровня ниже PaX начала нулевых.

> Не делай, пожалуйста так (хак с LD_PRELOAD). Ты совсем не понял суть
> pledge, если хочешь делать так.

Это тебе кажется, что я не понял. Wishful thinking. Хочешь казаться экспертом, а демонстрируешь неспособность понимать смысл написанного в контексте.

> Там уже перестали при каждом чихе рекомендовать делать setenforce=0?

Знаю людей, которые пишут собственные политики для систем с усиленной защитой ядра (grsecurity). Потому что - сюрприз! - штатные политики никуда не годятся, ибо накладывают слишком общие и потому почти бесполезные ограничени. Так вот, они не делают setenforce=0. Представь себе, целевая аудитория систем с заявкой на повышенную защищённость - не только хомячки, за которых нужно делать выбор. И задачи они решают не только по защите локалхоста от мнимых угроз.

> В целом же, я про другое. Использовать selinux для включения W^X для
> отдельно взятого приложения, конечно же, можно, только очень неудобно.

Удобно или нет, но это можно сделать, и находятся люди, которые делают, в рамках кастомных более запретительных политик MAC.

> огораживать приложения им, ИМХО, неудобно.

Да неужели прогресс? Уже не "говно" и не "абсурд", а "ИМХО, неудобно".

> И pledge, повторюсь, задуман ради бОльшего, нежели отзыв prot_exec.

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

> Это принципиально неверный способ использования pledge. Его предполагается вызывать после
> того, как приложение закончило инициализацию, подгрузило все модули и перед тем,
> как оно перешло в main loop. Так как предлагаешь ты, ничего
> нормально работать не будет.

А теперь давай разберём это твоё "экспертное" мнение.

Во-первых, тебя сносит в обсуждение собственных мыслей о pledge. Если б ты постарался понять (или не сделал бы вид, что не понял), о чём тебе собеседник пишет, то заметил, что речь шла о включении запрета на использование PROT_EXEC. И его-то нужно включать как можно раньше: что через хак с LD_PRELOAD, что через штатное использование pledge() в исходниках. В main loop, как ты выразился, можно включать другие запреты, которые при включении на более ранних стадиях помешали бы нормальной инициализации приложения.

Во-вторых, поверхностно воспринимаешь написанное или вовсе плохо представляешь себе предмет обсуждения, что опять же выдаёт в тебе эксперта уровня комментов на опеннете.

Более сложный рантайм-враппер, подгруженный через LD_PRELOAD, на этапе инициализации способен заменить любые символы в таблице связывания процедур и соответственно обернуть любые процедуры в код, который вызывает pledge() и затем обёрнутую процедуру (например, системный вызов bind или точку входа в main loop). При желании такой враппер можно даже сделать настраиваемым через конфиг, где описывать набор правил: в момент вызова какой процедуры - какие ограничения включать. По тому же принципу, например, в линуксе можно включать SECCOMPv2 без изменения исходников и пересборки.

> Мне, конечно, следовало написать "потенциально небезопасно".

"Потенциально небезопасно" - высказывание с объёмом, близким к бесконечности и обратно пропорциональным же содержанием. Лучше б ты вообще промолчал.

> Знатоком сортов говен не являюсь.

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

>>> pledge() предполагает, что будет использоваться автором программы, а не пользователем;
>> Вот именно. Защищённая система, где включать защиты можно только разработчикам. ;)
> Нет. Они или есть и включены изначально, или их просто нет.

Я вот до сих пор не пойму, это такой троллинг, или всё-таки эмоциональный пересказ глубоко воспринятой доктрины? Ну сказал бы "или они просто не работают" - нет, ляпнул "их просто нет". Тут и добавить нечего.

> Опциональная безопасность = не безопасность. История "успеха" setenforce 0, то есть, простите,
> selinux, тому пример.
>>> Не  нужно пытаться делать из openbsd pax
>> При всём желании не получится. Не доросли.
> Провокация не удалась

Это и не провокация, а констатация факта. В PaX (и grsecurity) в начале нулевых уже были защиты от эксплуатаций уязвимостей ядра, пять лет назад появился CFI, а относительно недавно - GCC-плагины для защиты от атак на микроархитектуру (Spectre). В OpenBSD же на ядерном поприще если и делается что, так только под лозунгами наведения корректности. Явный курс на безопасность они оставили ещё в начале нулевых и с тех пор даже не пытались на него вернуться.

> я не намерен ни хамить, ни оправдываться.

Ты уже нахамил. Сперва на "ты" перешёл в фамильярной форме, затем физиологизмами свои писульки приправил. Или ты считаешь, что только прямые личные оскорбления хамством являются?

> Ваше право думать так, как вы думаете.

С этого надо было начинать. А уж если и заканчивать, то без "говен" и "надрачивать" по тексту выше.

> Почему я думаю так как я думаю я уже написал.

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

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру