> Вместо решения конкретных проблем - мантры о стандартах индустрии.Это ты сейчас свои отсылки к стандартам хорошо охарактеризовал.
> И говном я назвал не PaX, а paxd.
Да мне всё равно, что ты назвал. Главное, ты опустился до вербальных метаний фекалиями.
> Да я и не скывался, лол.
Ты хотел казаться. Тон в первом комментарии был соответствующий. И только потом ты убежал в ужимки и прыжки, вкусовщину и физиологизмы.
> Предположение о том,
> что пользователь в общем случае будет вдумчиво анализировать, а не "отключать,
> чтобы работало" - нелепость и абсурд, да.
Действительно, нелепость и абсурд. Это ведь твоё соломенное чучело, про поведение пользователей "в общем случае".
>> Нет, именно в ущерб.
> Это так
ЧТД.
> PAX MPROTECT (не включённый по-умолчанию примерно нигде, кстати) такого не позволяет, да.
Он включён по умолчанию примерно везде, где система работает на ядре с grsecurity. Пользователей softmode - проценты от процентов, если они вообще есть. Уверен, что постоянных нет, включают временно. И так было всегда.
> Я тебе даже больше скажу: до того, как появился pledge, был период
> (годы), когда в OpenBSD был только W^X pt 1 и всё.
Ничего нового ты мне не расскажешь, я эти процессы лично наблюдал.
> PAX MPROTECT - это сиюминутное решение, "починить" здесь и сейчас, не считаясь
> с потерями.
Это решение, которое зарекомендовало себя с лучшей стороны. За ним стоят обоснованные решения разработчиков и многолетний опыт пользователей, среди которых и я.
> у PAX MPROTECT всё те же per-binary исключения и выключенность по-умолчанию
> примерно везде.
Определись уже, выключенность или включённость. Хотя бы в рамках одного коммента. Смотреть жалко на эти вихляния.
> Но да, сейчас PAX MPROTECT позволяет "одной кнопкой" зафорсить W^X pt 2,
> а OpenBSD - нет. Но это не значит, что PAX MPROTECT
> лучше или правильнее. Безопаснее - да, если речь не про ПО,
> которому нужен mprotect с неотломанным +x.
Там, где он нужен, он именно лучше и именно правильнее. Потому что практический выигрыш в плане усложнения эксплуатации уязвимостей перевешивает те мелкие хлопоты, которые PAX_MPROTECT способен создать.
> Аргументы: это неудобно. И непрактично.
Это не аргументы. Тебе неудобно, а мне удобно. Тебе непрактично, а мне практично. И это даже не патовая ситуация. Потому что ты теоретик, а я пользователь grsecurity с многолетним стажем его применения для личных и рабочих нужд. И ладно б я один такой был.
> Существование того же PaX во многом обусловлено тем, что selinux сложен и неудобен.
Этот перл вообще без комментариев. Sapienti sat.
> Конкретно отзыв prot_exec, а не осмысленное внедрение pledge добавляется тривиально.
Тривиально для пользователей, которым разработчики OpenBSD даже расстановку аналогов PaX-флагов решили не доверять? ;)
> Чем стонать тут про отсутствие выбора
Так это ты здесь стонешь, как тебе всё неудобно и говно. Тогда как отсутствие выбора в озвученных рамках - это сухой факт.
> попатчили бы уже то, что нужно. Но нет, испускать шум интереснее. Бог в помощь.
Мне в системах с grsecurity не нужно ничего патчить. PAX_MPROTECT включён по умолчанию, исключения заданы, всё работает. Могу себе позволить повысказываться об особо важных и весомых мнениях, вроде твоего.
>> Сделать патч, пересобрать, развернуть.
> Отослать патч автору ПО, добиться включения в кодовую базу, забыть навсегда.
То ли дело строчку в /etc/paxctld.conf прописать... Непосильная задача!
> Слабый аргумент, как по мне. Если бы было нужно решить какую-то настоящую
> проблему, а не поныть, патч был бы сделан.
Не нужно решать проблему, котрой нет. Это ты будешь носиться с патчами, если захочешь ограничить PROT_EXEC. А у меня в системах с grsecurity ограничения включены по умолчанию.
>> Иллюзия безопасности - это OpenBSD с набором защит ядра уровня ниже PaX начала нулевых.
> OpenBSD, несмотря на все стереотипы, всегда достаточно осторожно относились к внедрению
> всяческий "секурити фич".
С чего ты вообще взял, что я чего-то не знаю и нуждаюсь в твоих рассказах? Ты спросил, уточнил? Нет. Сразу побежал простыню строчить, потому что умным хочешь показаться. Это для тебя главнее, чем любые конструктивные обсуждения и факты. За что и огребаешь, если ещё не понял.
> Важно не только внедрить защиту, но и не сломать нужное ПО, работающее в рамках стандарта
Я тебе про защиты ядра, а ты мне про какое-то сломанное ПО.
> а также не просадить до невозможности производительность.
FUD. Факты где? Фактов нет.
> Ибо OpenBSD - ОС общего назначения.
И сколько людей пользуются этой ОС общего назначения?
> Что касается патчей от PaX, то даже во времена открытого grsecurity не было
> ни одного "серьёзного" дистрибутива, использующего наработки PaX и чтобы они был
> включены по умолчанию.
Что из этого следует? Ты не намекай, ты прямым текстом говори.
> Отдельные наработки, типа того же W^X pt 1
> и 2 перекочевали в NetBSD (отключены по умолчанию) и в HardenedBSD
PaX к NetBSD никакого отношения не имеет. Всё, что и как туда "портировано" из PaX - на совести разрбаботчиков NetBSD.
> Отдельные специализированные [...] используют (или использовали в прошлом) активированный PaX
В Openwall Linux никогда не было ядер с PaX.
> сравнивать с операционными системами общего назначения не вижу смысла, разные поставленные цели
> могут требовать разных инструментов.
Пользователи grsecurity, включая меня, годами используют кастомные ядра с дисрибутивами общего назначения.
> Ну ты написал "прикручивать pledge через инъекцию библиотеки посредством LD_PRELOAD",
> я вот именно про это.
Теперь сходи и посмотри, какую часть твоего коммента я там строчкой выше процитировал. Ты же воспринимать прочитанное в контексте не умеешь, а особо ценное мнение в области защиты систем у тебя уже есть. Парадокс! Даннинга-Крюгера.
> Суть pledge - сделать удобный api для privilege revocation, а не слепить
> костыль для принудительного отключения prot_exec.
Сколько раз ты ещё намерен это повторить?
> В любом случае, ты зря думаешь, что я считаю себя экспертом.
> Про враппер прокомментирую отдельно ниже.
Ты ведешь себя соответствующим образом. Будто хочешь казаться. Самолюбование при даче непрошенных разъяснений так и прёт. Оценка ценности собственного мнения - так и закшаливает.
> Я не знаю, какие задачи эти люди решают -> не знаю, насколько
> оправдано их решение.
А я не спрашиваю твоих оценок их решениям. Я тебе указываю на факт, что у сложных механизмов защиты есть свои пользователи, помимо бездумно отключающих SELinux.
> я говорю, что они плохо подходят
Говори на здоровье. На заборах тоже кто-то высказывается.
> Если люди не хотят, чтобы за них был сделан выбор, они и
> в код посмотрят, и патч, если надо напишут, и всё вообще
> на свете сделают и проверят.
Ага, и операционку свою напишут. За пару вечеров. Тебе сколько лет, уважаемый? С понятием запретительно высоких издержек знаком?
> А _по_умолчанию_ должен быть максимально безопасный
> вариант, но в пределах допустимого стандартом, если заявлена поддержка оного.
Кому должен? Почему должен? Потому что ты так сказал? В OpenBSD могут делать всё, что захотят, в том числе промывать мозги своим доверчевым пользователям. А свои претензии на универсальные критерии можешь употребить по назначению.
> Важно, что это неудбно. Зачем использовать более сложный вариант при наличии
> более простого при равном итоге?
Это тебе важно, что это неудобно. Это тебе неудобно. Это тебе выбор не нужен. А кому-то другому, представь себе, и важно, и удобно, и наличие выбора ценно. Мама с папой за всех говорить не отучили.
>> Да неужели прогресс? Уже не "говно" и не "абсурд", а "ИМХО, неудобно".
> Говно - это paxd. Абсурд - это подход с настройкой возможности prot_exec
> извне приложения, потому и неудобно.
А, нет, не прогресс.
> Ага. Костыли для отключения костыля. Но спорить не буду - делает то,
> что обещает делать.
Да хоть спорь, хоть соглашайся. Ах, Моська, знать она сильна, что лает на слона!
> Вот тут есть маленько, продолбался.
Ты везде продолбался и продолжаешь. Но поймёшь это нескоро, похоже, если вообще поймёшь.
> В целом согласен
А это не важно, согласен или нет. Цель анализа в другом. Носом тыкать не стану, всё ты понимаешь прекрасно.
> хотя и большой проблемы в более позднем отзыве prot_exec
> не вижу - инициализация обычно это в худшем случае секунды,
> это не успеют использовать. Но да, prot_exec отзовётся уже при первом
> вызове pledge, который нужно делать как можно раньше.
Потому не видишь, что у тебя в голове вместо относительно глубокого и широкого понимания, условно достаточного для обоснованного вынесения суждений по этим вопросам - какой-то отдельный юз-кейс. Типа того же браузера.
> Последнее не будет работать, т.к. pledge позволяет только уменьшать список доступных классов
> доступа (обратное было бы небезопасно) в пределах процесса.
Всё будет работать. Просто ты подумать не потрудился: а вдруг собеседник не глупее тебя и имел ввиду не включение-отключение, а поэтапную безвозвратную установку ограничений, но в заданных местах. Например, на этапе инициализации запретить использование PROT_EXEC, а после listen() - доступ к файлам.
> Настраивать ограничения для отдельной функции в стороннем (по отношению к приложению) конфиге
> мне в любом случае не кажется хорошей идеей.
А я не собираюсь обсуждать, насколько это хорошая идея.
> Использовать LD_PRELOAD - тоже. Хотя бы потому что LD_PRELOAD игнорируется для suid
> и sgid бинарников, лепить ещё один костыль для обхода этого -
> странно.
Только переменная среды игнорируется, а содержимое /etc/ld.so.preload - нет. Костыль лепить не нужно. А вот знать, о чём говоришь, или молчать, о чём знаешь мало - не повредило бы.
> очевидно, сложнее чем отсутствие какой либо настройки. При равном (в итоге)
> результате - зачем?
Сколько апломба-то, госссподи... Равный результат существует только у тебя в голове. Как и все якобы существенные трудности в случае с PaX. На практике нет никакого равного результата. С PaX я задаю ограничения для всей ситсемы, сразу, и затем либо ослабляю их для отдельных приложений, либо эти приложения не работают и поверхность атаки не открывают. В любом дистрибутиве. Для любых приложений, свободных и проприетарных. Это не только удобно мне, но и соответствует best practices. Не может pledge дать сравнимый по качеству результат. Просто потому что в случае PaX ограничения легко снимаются по белому списку, а в случае pledge - выставляются по чёрному списку. С совершенно несопоставимыми трудозатратами. Это факты.
А нравятся они тебе или нет, удобно тебе это или нет, ставишь ли ты выше требований безопасности априорную поддержку устаревших стандартов или нет - сугубо твоё личное дело.
>> судишь о вещах, о которых имеешь самое поверхностное представление.
> Каким именно образом? Я не использовал Hardened Gentoo, и не в курсе,
> что там paxd называется paxctld.
Не там, а практически везде. И не называется, а аналог. Даже в дебианах есть пакет paxctld, но нет пакета paxd. Это самые базовые факты "из жизни экосистемы", которые тебе неизвестны. Что такое paxmark и как он применяется, ты тоже не знаешь, раз Hardened Gentoo не пользовался. Точно так же ты почти ничего не знаешь ни о функциональности PaX/grsecurity, ни о реализации, ни о практических аспектах применения. Просто где-то что-то прочитал, в уме одну фантазию с другой сопоставил, плюс-минус предложенную доктрину принял и пошёл в интернете на PaX тяфкать. Сидишь тут, на серьёзных щах мне, пользователю grsecurity с многолетним стажем рассказываешь, как тут у меня, оказывается, всё неудобно, ненадёжно и какие мне патчи нужно написать/куда отправить, чтобы мои, б-ть, задачи решить. Это даже не смешно. Это убого.
> Это именно что сорта говна.
Воспитание твоё - сорт говна.
> Ссылку на остатки от paxd на гитхабе я тебе скинул - такой
> демон был. Так что пытаясь обличить меня в недостаточном знании вопроса,
> ты обличил в нём и себя, так как продемонстрировал, что не
> знаешь про paxd.
Я о нём даже не не знаю, а не помню. Автора знаю, пересекался с ним в IRC, но не более. Судя по описанию и интересам автора, это нишевый кусок софта для Arch Linux, которым я никогда не пользовался и который к PaX/grsecurity и передовым (для своего времени) начинаниям в построении защищённых дистрибутивов и тулчейна не имеет никакого отношения. Всё происходило в Hardened Gentoo, где флаги выставляются пакетным менеджером, представь себе. paxctld - демон от разработчика grsecurity. И вместо него ты упоминаешь какую-то нишевую альтернативу. Не отвертишься теперь.
> Хотя как по мне, можно ничего не знать
> ни про paxd, ни про paxctld - и то и другое
> костыли и так делать не надо. Надо хотя бы пакеты с
> правильными xattrs собирать.
Ага, надо, потому что ты, анонимный не-эксперт, сказал. Который не читал, но осуждает. И да будет тебе известно, рассуждальщик, что аналог "пакетов с xattrs" - это прошлое PaX. Когда-то флаги выставлялись через ELF-заголовки: https://wiki.gentoo.org/wiki/Hardened/PaX_flag_migration_fro...
Естественно, файлы с заголовками, модифицированными на поздней стадии сборки пакетов (или на ранней стадии установки пакетов, если делать это в дебианах через хуки dpkg), сохраняли значения флагов, будучи запакованы в архив любого формата. Но сообщество пользователей grsecurity, включая дистростроителей, в своё время отдало предпочтение флагам в xattrs и демону paxctld. Причём, не сговариваясь. Потому что это удобнее. Но тебя забыли спросить! Ты бы всем глаза открыл, уж я не сомневаюсь.
> кажется, вполне могу обосновать правильность своей позиции.
Нельзя обосновать правильность свей позиции в категориях а ля "неудобно", "ненадёжно", "неправильно" и т.п. без технической конкретики.
> Если это не провокация, то демонстрация невежества.
С твоей стороны. В очередной раз, и не только невежества.
> Заморачиваться лень, простой контрпример - KARL.
Не лень, а ничего ты толком не знаешь и ляпнуть лишнего боишься. Сравниваешь зрелый быстрый CFI и плагины для автоматического устранения уязвимого к Specter кода - с KARL! Ты ещё про securelevel вспомни.
> Да, я в курсе, что это не внуриядерный механизм
А это как раз совершенно вторично.
> а скрипты сбоку, но так или иначе, это именно пример защиты ядра.
Если бы ты прочитал и попытался усвоить прочитанное, то понял, что я не делал утверждений об отсутствии механизмов защиты ядра в OpenBSD, а высказался, что по уровню они не дотягивают даже до PaX начала нулевых.
> А то, что в OpenBSD стараются решать проблемы
> наведением корректности, а не "митигациями" - это хорошо.
Ты хоть сам понимаешь, что такое "митигации"? И чем они на практике от "наведения корректности" отличаются? Полнотой, там, комплементарностью, существованием в контексте модели угроз? Многоуровневостью? Учётом реальных практик эксплуатации уязвимостей? К тому же, из достижимой на практике корректности напрямую не следует никаких свойств безопасности.
> Не забывай, что в OpenBSD значительно более простое и компактное ядро, чем в Linux
Да, уж если б ты не напомнил, я бы и не вспомнил. Очень важное и глубокое уточнение. Спасибо. Как бы я без тебя. А если чуть серьёзнее, то хватаешься за любую возможность показаться умным.
> даже динамически загружаемые модули не умеет уже, например. И серьёзных дыр
> _в_ядре_ довольно давно не было (что, конечно же, может быть и
> не показательно).
Не было опубликовано. Это больше говорит об интересе, а вернее, отсутствии такового со стороны исследователей безопасности.
> В целом, за grsec я перестал следить после того, как они закрыли
> код.
А раньше следил по публикациям в интернете? ;)
> Сделали что-то хорошее - молодцы. Забавно, что ты соскочил со
> сравнения подхода по включению W^X pt2 на сравнение возможностей OpenBSD и
> PAX в целом.
На все твои субъективные доводы и очерденые перепевки од pledge я ответил. Где соскок? Ты мне ещё рамки ставить будешь, строчить простыни воды, а за короткую фразу претензии предъявлять?
> Это разные ОС, разные подходы и разные ядра.
> Точнее, PaX - не ОС, а набор патчей, к ядру linux
> (в основном). Который, на самом деле, тоже не ОС, а только
> ядро.
Очередная банальная тирада не по существу.
> Короче, неплохо, что PaX существует и в каких-то ситуациях он может быть
> полезен и применим, но не надо сравнивать опциональные меры безопасности (применимые
> не всегда) с безальтернативными (без злого вырезания функционала из кода не
> заставишь перестать работать).
Так это pledge опциональный. В твоих фантазиях он есть везде, а на деле - чуть менее, чем нигде. И ни через флаги, ни посредством MAC, мандатно, ты его не включишь, если для тебя и за тебя его уже не включили. Только ручками, только в каждом отдельно взятом случае. Ну или хаками, которые тебе не нравятся. Придумал себе критерии опциональности и безальтернативности, в отрыве от какой-либо модели угроз, и пыжишься. Пытаешься свободу выбора для владельца системы повернуть изъяном безопасности. Возможность в одно действие получить защиту, для которой в случае pledge требуется пройти путь от исходников до бинарников в системе - пытаешься выставить недостатком. В цирк иди работай, по специальности, зрителей веселить.
Для атакующего что pledge, что PAX_MPROTECT - обе защиты одинаково "безальтернативны".
> А я только про конкретный наброс.
Это не наброс, а констатация факта.
>> Сперва на "ты" перешёл в фамильярной форме
> Это не была попытка задеть, мы в интернете, тут общение на ты
Я к тебе на вы обратился.
> задело.
Мечтай. Руки развязало.
> Ты принимаешь это слишком близко к сердцу
Я принимаю это так, как считаю нужным и удобным лично мне. Огребаешь ты не за тыкания и физиологизмы, а за поведение в целом, каковое характерно для обширной группы лиц. Считай, что по случаю отдуваешься "за всех".
> называть [...] не говном отказываюсь.
А я тебя и не прошу. У меня другие методы.
> Хамством являются _необоснованные_ прямые личные оскорбления.
Загляни в словарь.
> Но мы уходим от изначальной темы совсем уж далеко
Мы только этим и занимаемся.
> Сложно удержаться от соблазна потроллить, когда человек просто не хочет открывать для
> себя новое, потому что уже есть привычные решения.
Вот за этим ты сюда и возвращаешься: убедить себя, что ты можешь потроллить или научить человека чему-то новому, задавать тон и тему разговора. Чтобы казаться себе умнее него, возвыситься за его счёт, инфантильно самоутвердиться. Отсюда твой апломб, неуважение к чужому мнению, а также неуёмное стремление давать непрошенные советы, ликбезы и нести прочий бред с умным видом. Но я знаю, что ты ощущаешь свою некомпетентность и что тебя это задевает. Больше тебе скажу, мой юный друг: если ты действительно веришь в тот бред, который несёшь, то со временем глупость его станет тебе очевидна. И это тоже заденет.
> А иногда это
> вызывает раздражение, когда начинает казаться, что троллят тебя. Там где ты
> поправил меня по существу - я сказал тебе спасибо, и это за дело.
Да грош цена твоему спасибо. Ты же ведёшь себя как малолетний невоспитанный хам, говнами всё вокруг клеймишь. Кого ты обмануть-то хочешь, меня или себя? Или крестик сними, или штаны надень.
> А в целом, меня устраивает, как я выражаю мысли.
Да кто бы сомневался.
> Ты пишешь сюда не потому что тебе очень приятно общаться со
> мной, а потому что у тебя есть возражения, вот давай на
> них и сосредоточимся.
Сейчас всё брошу и буду с тобой серьёзно дискутировать.
> И да, экспертом я себя не считаю.
А кем ты себя считаешь?