> При чём тут мои критерии? Приложения (хромиум, java) перестанут работать.Что ты тут ёрничаешь? Перестанут работать, только если не будет способа снять для них запрет. В PaX этот способ есть. Выбор между режимами явного включения и явного отключения запретов (механизмов защиты), softmode - тоже есть.
По умолчанию (softmode не включён) механизмы должны явно отключаться, и это общепринятый подход "белого списка", который является лучшей практикой в отрасли. Лично тебе важнее стандарты, которые писались буквально в прошлом веке - так это лично твоё дело, и только.
> Лично ты
Отвечаю взаимностью.
> следить за тем, чтобы приложения [не] были сломаны _необходимо_.
Тирада о банальностях. paxctld и paxmark ранее в Hardened Gentoo созданы именно для этого, но тебя снова не устраивает.
> OpenBSD не нарушает стандарт, а дополняет его.
Ты или притворяешься, или действительно не понял, что я сказал? OpenBSD не предоставляет пользователям выбора: нарушать стандарт по умолчанию (или по явному волеизвявлению а ля softmode в PaX), но усилить безопасность, или не нарушать стандарт, но в ущерб безопасности.
В OpenBSD всё решили за пользователя: только следование стандарту, только в ущерб безопасности. Выбор оставили только разработчикам, то есть, себе любимым - тот самый pledge.
В PaX - кроме того, что можно включать/отключать защиты, никто не мешает собрать ядро без PAX_MPROTECT и следовать стандартам хоть до посинения, из коробки.
> Использовать MAC для того, "чтобы браузер не мог вылезти за пределы ~/Downloads"
> - это забивать гвозди микроскопом.
Твоё мнение очень важно для всех. Ты даже не понял, о чём речь, потому что не знаешь, что SELinux позволяет устанавлливать запрет, аналогичный PAX_MPROTECT, и выбор у пользователя есть, хотя бы и в такой форме. Даже в линуксе. А в OpenBSD - выбора нет. Если тебе этот выбор не нужен - это твоё и только твоё дело.
> бывает, наверное. В любом случае, в случае с pledge, _пользователю_ не
> придётся ничего настраивать.
Не только не придётся, но и возможности нет. Кроме хаков с LD_PRELOAD и аналогичных.
> это история больше не про "защиту браузера", а про разграничение доступа
Ознакомься и не позорься: https://akkadia.org/drepper/selinux-mem.html
>> патчить исходники и собирать свои бинарники
> Именно. И протаскивать патчи в апстрим ПО (типа если платформа = опенбсд,
> то pledge(...)).
> Чтобы потом другим пользователям не нужно было патчить самим.
Что и требовалось доказать. Двойные стандарты как они есть: бремя модификации исходников, сборки и распространения пакетов - тебя не смущает. А "сломанные приложения" и "неправильные" paxctl(d) - смущают. Whitelisting - плохо, blacklisting - хорошо. Цирковое училище оканчивал?
>> прикручивать pledge через инъекцию библиотеки посредством LD_PRELOAD
> lol
Действительно, смешно. Это ведь единственный способ усилить защиту памяти аналогично PAX_MPROTECT/SELinux без затрат на пересборку/распространение, который оставлен пользователям OpenBSD её разработчиками.
>> это нелепость и действительно неудобно.
> Неудобно и, главное, небезопасно, ставить ручками флаги paxctl'ем или запускать костыледемон
Ну-ка, ну-ка, чем небезопасно?
> paxd.
paxctld. Сразу видно знатока.
> pledge() предполагает, что будет использоваться автором программы, а не пользователем;
Вот именно. Защищённая система, где включать защиты можно только разработчикам. ;) Дальше очередная тирада о банальностях. Вчера заучил и додумал, сегодня с умным видом повторяешь.
> Не нужно пытаться делать из openbsd pax
При всём желании не получится. Не доросли.