Тимоти Равье (Timothee Ravier) из компании Red Hat, мэйнтейнер проектов Fedora Silverblue и Fedora Kinoite, предложил способ ухода от применения утилиты sudo, использующей suid-бит для повышения привилегий. Вместо sudo для выполнения обычным пользователем команд с правами root предлагается задействовать утилиту ssh с локальным соединением к той же системе через UNIX-сокет и проверкой полномочий на основе SSH-ключей...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=60317
Вот это да.......
> Вот это да.......На третий день Зоркий Глаз заметил что...
> sudo systemctl daemon-reload
...что у соседнего сарая был suid-ный бит! :)
Вот это действительно будет дырища, которая может ещё и не работать на некотором энвайрменте регулярно
Развитие юникс архитектуры остановилось со смертью plan9. Вот и приходится изобретать эрзац технологии.
А как же инферно?
А что мешает, ставьте версию для raspberry pi и играйтесь
Вот именно что играйтесь. А надо работать, и не послезавтра, уже вчера.
> А что мешает, ставьте версию для raspberry pi и играйтесьИ результатом этих игрищ ожидается - что именно? Более того - зависеть от 1 производителя железок это полный попадос. Если они завтра снимут ту или иную модель с производства - то чего?
Никому не интересен plan9. Куда интереснее, что челу с тыренным ssh-ключом раньше нужно было для sudo знать пароль юзверя, а теперь нет. Пляски вокруг сокетов и их защиты - это отдельные прекрасные грабли
Так себе аргумент. Ничего не мешает иметь ключ с паролем для повышения привилегий.
Пароли умерли, сейчас работает только многофакторка.
Но один из факторов - пароль. Так что не умерли, а дополнились.
> Пароли умерлиНичего они не умерли. На машине обязан быть парольный аккаунт для rescue-нужд. В случае сетевых проблем хостинг-провайдера, бывает, что единственный способ получить доступ к машине -- это подключиться через консоль и ввести там пароль. Создавайте такой аккаунт всегда. Это реально выручает.
> Пароли умерли, сейчас работает только многофакторка.Поразвелось тут хайпонашек. Еще анализы кала сдавайте блин для входа в систему.
Они их уже на клавиатуру сдали.
А ты в курсе что при генерации пары ключей, закрытый ключ можно запаролить? И тогда надо иметь и сам закрытый ключ и пароль от него вместо просто пароля от юзера.
А ты в курсе, что есть методы увода ключей вот прям уже расшифрованных?
Так же как и введенный пароль из /etc/shadow можно увести. Так что запароленый ключ все еще безопаснее.
Нафиг никому не сдались ваши ключи... Эксплоиты на повышение прав гораздо надёжнее и стабильно работают десятилетиями
> Так же как и введенный пароль из /etc/shadow можно увести. Так что
> запароленый ключ все еще безопаснее.Так там не пароли и хеши от них. А если атакующий перехватывает ваш ввод - окей, а зачем ему ваши ключи и пароли тогда?! Он и так вас уже поимел. Весь ввод он и так знает, если он доступы хотел - ну, окей, засечь когда вы будете по ssh рулить да вкатить пару лишних команд в input.
Вы конечно можете попробовать обойтись кастомной наэкранкой, типа как некоторые вебморды банков, но через сколько вы взвоете с такого менеджмента серверов?
>Куда интереснее, что челу с тыренным ssh-ключом раньше нужно было для sudo знать пароль юзверя, а теперь нет.Не знаю как здесь, но в KepassXC Yubikey служит вторым фактором защиты, т.е. надо и пароль вводить и токен вставить.
> Не знаю как здесь, но в KepassXC Yubikey служит вторым фактором защиты,
> т.е. надо и пароль вводить и токен вставить.И теперь sudo станет в 5 раз гиморнее - для легитимного админа. Который будет искать кей, будет тратить больше времени на фигню, раздолбает себе usb-порт и проч. Во имя луны.
Хаксор же посмеется с этих потуг, эскалирует на соседнем CVE ибо на SUID бите мир клином не сошелся, да и используют его все же уже довольно аккуратно - что является поводом изучить соседние вектора атак. В этом месте Зоркий Глаз обычно замечает что у сарая на то что стены нет, но и крышу кто-то стырил, можно, вот, на парашюте десантироваться. Не то чтобы это сильно нужно было - зато какой пафос! Это ж можно на видео снять и на ютубчик выложить. Будет - вот - самореклама безопасничка.
> Не знаю как здесь, но в KepassXC Yubikey служит вторым фактором защиты,
> т.е. надо и пароль вводить и токен вставить.И теперь sudo станет в 5 раз гиморнее - для легитимного админа. Который будет искать кей, будет тратить больше времени на фигню, раздолбает себе usb-порт и проч. Во имя луны.
Хаксор же посмеется с этих потуг, эскалирует на соседнем CVE ибо на SUID бите мир клином не сошелся, да и используют его все же уже довольно аккуратно - что является поводом изучить соседние вектора атак. В этом месте Зоркий Глаз обычно замечает что у сарая на то что стены нет, но и крышу кто-то стырил, можно, вот, на парашюте десантироваться. Не то чтобы это сильно нужно было - зато какой пафос! Это ж можно на видео снять и на ютубчик выложить.
А кто запрещает разнести ключи для sshd, на который заходят из сети, и для sshd, который слушает на локальном сокете для предоставления root shell? И какие пляски нужны, если трафик через сокет зашифрован?
> Никому не интересен plan9.Да. И это проблема. А если бы был, то вместо облаков и кубернетесов просто писали бы софт.
Не, эту дичь так просто не изжить? plan9 не поможет - "модно-молодежные" и "сферические разработчики в ваккууме" все равно нашли бы на чем еще хайповать и ресурсы жечь.
Да и инфоцыганам же тоже надо деньгу зашибать на бессмысленных "курсах" - не про кубернетесы, так еще что-то бы придумали.
Это не дичь, это результат того, что немодные и немолодёжные продолжают оберегать свои костыли и работаетнетрогай вопреки требованиям индустрии. И инфоцыгане тут именно поэтому — пролают надёжный рецепт сбережения костылей. Plan9 не панацея, но градус неадеквата снизил бы значительно.
> Вот это действительно будет дырища, которая может ещё и не работать на
> некотором энвайрменте регулярноНе то чтобы дырища, если все сделать правильно. Но вообще отличный способ подвесить кому-то контринтуитивный бэкдор в систему, весьма креативно так то :)
> Добавляем проверку полномочий и включаем двухфакторную аутентификацию, допускающую доступ к root только при вставке USB-токена Yubikey.Как? Что-то пропущено? Как Private ключ перенести правильно на флешку?
Кажется даже статья по хранению private-ключей на юбиках с резервом будет нужнее
Заменю вам статью. Подходит любой ключ с поддержкой FIDO2, даже самодельный.
Вставляем ключ, пишем
ssh-keygen -t ed25519-sk или ssh-keygen -t ecdsa-sk (если ключ старый).
Все, мы храним ключ в аппаратном токене.openssh настроен правильно во всех дистрах свежести уровня 8 рхел или выше(нужен openssh 8.2), настраивать ничего не нужно. Работает даже в винде, даже в openwrt c Dropbear.
https://codeberg.org/KOLANICH/Fuck-GuanTEEnomo
TL;DR: Майкрософт ворует лампочки в подъезде у автора.
Однако про конфликт интересов (member of FIDO => заинтересован в впаривании) вроде правильно все пишет. Ничего личного, это бизнес...
После этого не значит в результате этого. Майкрософт, как один из основных участников рынка и флагман индустрии, естественно будет входить во множество разных групп по интересам. Но ты можешь попробовать показат в цифрах, сколько миллионов в месяц MS зарабатывать на «впаривании» токенов. В одном ты прав: это действительно бизнес, а не личная месть автору.
> миллионов в месяц MS зарабатывать на «впаривании» токенов. В одном ты
> прав: это действительно бизнес, а не личная месть автору.Тем не менее лично я с гитхаба ушел, потому что такое навязчивое желания меня осчастливить, с ножом к горлу, "а не то!" - несколько напрягает. Без таких "благодетелей" моя жизнь - намного лучше.
И кстати удачи им в "контроле цепочек поставок" и прочей гестаповщине. Я им быренько объясню что "D" в DVCS означает. Но они конечно могут заморозить гитхаб и не принимать новые комиты - особенно сделанные вне гитхаба, если хотят :)
Никак не надо переносить.
Ключ генерится прямо на затычке, и половина закрытой части её никогда не покидает. От слова "совсем". Это про те что с приставкой "sk-".
На локалхост выгружается открытая часть и вторая половина ключа.
При каждом установлении соединения нужно погладить кота^w ключ. Ну или кинуть в него ссаной тряпкой (результат тот же). Типа, подтверждение присутствия кожаного мешка.* Это я FIDO (как мог) описа́л. Есть и другие варианты.
** И да, если у вас RuToken Lite, то это таки просто флэшка с обсфусцированным протоколом доступа. Там действительно можно "перенести", но работать будет только под виндой/(возможно) эмулятором.
Ну вообще говоря для рутокена линуксовые дрова вполне себе есть и работают
> Ну вообще говоря для рутокена линуксовые дрова вполне себе есть и работаютКак обычно какой-то blob-only крап, вне ядра, без сорцов, которому надо на честное слово поверить что все офигенно? Или таки смогли что-то менее позорное? А может еще и сорц фирмвари есть - чтобы проверить что все и правда честно, м?
Rutoken ECP поддерживаются в OpenSC, никаких блобов и проприетарщины.
> Rutoken ECP поддерживаются в OpenSC, никаких блобов и проприетарщины.Ну ок, это уже не позор-позор. А сорц фирмвари там как, тоже дают? Почему-то самый интересный вопрос - как обычно заскипан. Доверять какой-то серебряной пуле - без сорцов оной - и за что мы тут, спрашивается, боролись? Чтобы отдать топ секреты какой-то блоботе? А после этого никого не надо назвать "д@била кусок" случайно? Так, на правах называния вещей своими именами.
Сорц полустандартного OpenGPGCard тоже не доступен, лишь обрезок старого кода под basiccard, в котором явно обозначено что много кода пропущено из-за патентов
Yubikey/google titan/ещё некоторые альтернативные реализации полностью проприетарныеЕсть nitrokey 3 с открытой прошивкой (https://github.com/Nitrokey/nitrokey-3-firmware), однако там обращение с ключами сильно менее защищённое чем в смарткартах, потому что вместо намертво приклееной к плате неразборной капли, там полноценный sram+cryptoчип+процессор (Однако есть возможность обновить прошивку, что приятно)
Выглядит как забор из костылей, при том непонятно ради чего? Я так и не понял, чем suid помешал? Вроде десятилетиями всё ок было...
Выдавался этот бит только тем программам, что действительно могут понадобиться всем пользователям на хосте, типа ping...
Это тайный план заставить всех использовать флэшки. А USB настолько дыряв, что теперь не только майор может всунуть что ему надо, но и обычный рядовой.
теперь есть андройд, где понятие пользователя сильно изменено: в нём каждая программа является отдельным пользователем, а суперпользователем является, как я понял, исключительно гугл.
> теперь есть андройд, где понятие пользователя сильно изменено: в нём каждая
> программа является отдельным пользователем, а суперпользователем является,
> как я понял, исключительно гугл.Можно dev режим врубить и анлокнуть систему/бут. Но вообще индеец правильно понял за кого его считает белый человек.
Нет. Лучше черес TCP который надо выставить в облако гугл или мигрософт это будет безопаснее
А давайте... пусть systemd живёт в облаках!
10+ лет держу открытую вкладку терминала с su (и в проде и на домашнем ПК) без всяких суден, и неразу не было проблем :]
>>> и неразу не было проблем <<<Мда... то что вы конкретно нафиг никому не сдались, это ничего не значит; так что не учите плохому и не советуйте тут откровенную дичь!!!
ПС: Это из той же серии что и: линукс безопаснее чем виндоус; там почти нет вирусов, а антивирус там совсем не нужен, - а на практике, если вы реально станете чей-то целью, то вас возъимеют во все дыры, так что лучше чтобы этих дыр было поменьше; вы же сами буквально булочки свои раздвигаете!
ППС: Вангую, что в последующие 10 лет, угроз под линус станет офигеть как много!!! Так что я реадьно не понимаю тех, кто сделал ставку на это дырочное изделие в критически важных отраслях!!!
> Это из той же серии что и: линукс безопаснее чем виндоус; там почти нет вирусов, а антивирус там совсем не нуженА зачем нужен антивирус (ну кроме тех, кто их продаёт) ?
Антивирус, он как вояка, всегда готовится к прошедшей войне.
> Так что я реадьно не понимаю тех, кто сделал ставку на это дырочное изделие в критически важных отраслях!!!а на что ещё делать ставку?
мелкомягкий доверия не внушает.
солярисы тоже буржуйские, и тоже закрытые.
остаются только линь да фря.во всех случаях надо заметить, что всё данное ПО разрабатывается не у нас.
кроме того, главный разработчик всем известного ядра имеет весьма специфического батю, являющегося видным финским политиком, мечты которого давеча сбылись в отношении вступления в известную организацию.
поэтому ситуация настораживает вне зависимости от ставок.
Переезжайте в финку и будет всё разрабатыватся у вас :)
Если что дойдёте ножками или на велике до Линуса с его батей и всё выскажете лично за рюмкой чая.
Европа тоже маленькая, сесть в поезд и доехать - так же удобно как с метро, можно и за час самолётом долететь за сотку евро.
В зоне шенгена и пограничного контроля то нет, те из документов спросят только билет при посадке в транспорт.
> вы конкретно нафиг никому не сдалисьА откуда ты знаешь, какой у него прод?
С самого начала просто по ссш сам к себе (и где нужно) логинюсь под рутом.
su юзаю только в скриптах.
sudo вообще не ставлю.
Если я правильно понял, вместо отдельных суидных программ типа судо предлагается раздать рутовый доступ через локальный ссш. Но доступ к нему только для избранных. Ну да, ну да - безопасТность. В судо можно строго прописать ряд программ который пользователь может запускать. А тут каждый избранный получает все и может поставить систему в неудобное положение без особых усилий.
Да. ВСё это "решение" выглядит как знатный геморрой с несуществующей выгодой.
Можно интегрировать функциональность suid в модифицированный sshd, попутно выкинув и него всё, относящееся к сети.
> В судо можно строго прописать ряд программ который пользователь может запускать. А тут каждый избранный получает все и может поставить систему в неудобное положение без особых усилий.То есть документацию на ты SSH ни разу не читал, что там можно и что нельзя не знаешь, но мнение имеешь. Если уж на то пошло, механизмы ограничений что можно и что нельзя, как и каким образом в SSH куда мощнее, чем в sudo. Но для 99.99999% опеннетных админов локалхоста зайти по ключу — это уже высший пилотаж.
> механизмы ограничений ... SSH куда мощнее, чем в sudoСмелое заявление, требует подробностей.
В sudo можно ограничивать хост, группу, пользователя (как реального, так и целевого, можно требовать пароль любого), отдельные переменные окружения, программы и аргументы программ, в том числе регулярками. Настройки надежно защищены. А есть ли, например, в SSH аналог NOEXEC?
А вот и подтверждение моего тезиса о том, что админы локалхоста документацию не читают.> Смелое заявление, требует подробностей.
Требует. И ты знаешь, где их взять. Всё, что тебе нужно это уметь читать по английски и немного воображения, чтобы осознать предложенную модель. Мои джуны справляются, даст бог и ты сможешь.
Это нужно шел пользователя чем то заменить. Иначе, команды не ограничить.
самое главное то и не раскрыто: чем ssh-коннект под root безопаснее sudo ??
если мне понадобится запуск проги не под root а под другим пользователем, придется делать еще один ssh с запуском socat под указанным пользователем ??
т.е. набирается куча костылей с socat под каждым пользователем...
Запускайте прогу тоже под рутом. бгг.Гори оно огнём, какая срамота...
> Запускайте прогу тоже под рутом. бгг.т.е. я запускаю скрипт по очистке какойлибо диры в глубине /var/www не под ограниченным www-data а под root а в скрипте классическая ошибка бармина "rm -rf / var/www/тра/ля/ля" то системе приходит звезда. чёта не панятна
> Гори оно огнём, какая срамота...
:)
что вы как маленький - от рута делаете sudo -u username ваш_скрипт
> что вы как маленький - от рута делаете sudo -u username ваш_скрипттогда зачем мне прокладка в виде работающего sshd с socat под рутом. с судо они мне не нужны :)
> тогда зачем мне прокладка в виде работающего sshd с socat под рутом.
> с судо они мне не нужны :)чтоб было :) люди старались, делали, а вы: "ненужно"
не надо быть такой букой
> из компании Red Hatждем запихвание этих костылей в systemd!
Не шути так, а то тебя услышат и реализуют.
На Фре вообще не интересно.
Каждая программа должна быть слинкована с libsystemd, так победим.
В 1990-х и 2000-х M$, своим гетзефаком, победить не смогла, но теперь смогла возглавить.
А QR код? QR код будет встроенный? А веб сервер?
А ещё надо метрики экспортировать в промку и логи в ёлку!
Но все же нескучный rest апи должен быть сначала!
выглядит как фигня. sudo пароль забывает через некоторое время, и даже получив доступ к консоли пользователя не зная его пароль до рута ещё надо добраться. А тут либо полный доступ, либо полный доступ при воткнутой флехе. Ну такое себе решение имно.
В судо каждому пользователю можно прописать что он может запустить. Можно разграничить между разными большими админами, так себе админами и понарошку. Тут ты либо полный рут (можешь добровольно самоограничиться), либо никто. Я тут написал про это выше - заминусовали.
Можно, но я не видел чтобы так кто-то делал для реального чела, а вот для запуска команд из скриптов без пароля такое да - удобно.
Конечно удобно - запускать все исходно из под рута. Для очистки совести можно сбросить привелегии под нужного пользователя. Если никто не смотрит, можно и не сбрасывать.
Ну для скриптов да. Которые люди запускают. Это для людей или нет?
> не видел чтобыman 5 sudoers. В примерах.
> выглядит как фигня"а мы гланды удалять научились... через оппу! автогеном!"
Новое поколение пришло улучшайкать - встречайте. Открыло для себя man ssh - а ман на sudo и для чего та вообще - некогда читать, йа-у-мамы-разработчик!> sudo пароль забывает через некоторое время
или сразу. Или вообще о нем не вспоминает. И внезапно это еще может быть и отдельная, а не общая для юзера настройка. Как и то, чей там пароль спросить.
И никаких тебе шансов тихо потырить ключик и подбирать пароль хоть на мильене компов до посинения без всяких следов в логах (а эта еще и в почту админу нажалуется... хотя да, нет у девляпса никакой почты на linoops paas).
В общем, безобразие полнейшее, развили тут диды немодные. Я уже пишу фичреквест о включении этой нужной и полезной фичи в системдрянь!
А енту суду вашу небезопастную надо выбросить-выбросить. (давно кстати что-то не слышно о попытках пириписькать-пирипськать - ведь они ж даже уже вроде научились парсить конфиг от убунты и редхата - правда, что делать дальше пока не знали... эх, наверное грант кончился и сессия началась)
Ээээ... sudo su - не, не слышал?
Почему не "sudo su su" или не "sudo su su su su su"? Чем простое "sudo -i" не устраивает, зачем su лишний раз запускать?
Да можно и так. А можно и просто su написать. И sudo не нужен. Я про степень наркомании - это может быть нужно только чтобы sudo не писать каждый раз... Не более того.
> зачем su лишний раз запускать?Без этого сакрального заклинания на FreeBSD какой-то древней версии шелл неправильно работал. Это только в комментариях на опеннете все заучивают доки от и до на весь софт и хард прежде, чем компьютер включить. А в реальности просто запоминают заклинания и кастуют не зная почему так. Это, кстати, причина того, почему всё новое априори воспринимается «опытными» «юникс» «админами» в штыки: старые заклинания перестают работать, и нужно запоминать бессмысленный набор букв заново.
ok, google
будет ли работать sudo -i если у пользователя shell=nologin ?
Годнота. При сборке софта из исходников может пригодится.
Не сочтите за офтопик. Но определенно дежавю. Знавал одного профессора. В статью он вставлял картинку таким образом: в документ Word он помещал электронную таблицу Excel, в которую вставлена картинка.
> Не сочтите за офтопик. Но определенно дежавю. Знавал одного профессора. В статью
> он вставлял картинку таким образом: в документ Word он помещал электронную
> таблицу Excel, в которую вставлена картинка.Лет 10 назад из одной монопомии баги присылали - скриншот текстовой инфы с экрана в jpg, засунутый в эксель. Причём если б только один чел. такое присылал. Ну и сидишь заглядываешь и гадаешь, как такое можно вообще придумать.
Люди из абстрактного для них буфера обмена вставили jpg-фрагмент в программе, которой чаще всего пользовались.
Скорее всего они не в курсе какого-то там jpeg-формата и просто рады, что у них всё сработало.
Вроде такой опытный, а удивляетесь.
Опытный пользователь MS Office, Word, Excel. А чем можете похвастаться вы?
Тимоти Равье (Timothee Ravier) из компании Red Hat, мэйнтейнер проектов Fedora Silverblue и Fedora Kinoite, в курсе, что такое sudo и как им пользоваться? Что именно он пытается "заменить"? Где ограничение списка команд, которые пользователь может выполнять от имени рута?
В документации к SSH, которую ты никогда не читал. Впрочем, тебе на локалхосте и не надо.
Невозможно эффективно ограничить шелл. Самообман.
Автор и правда упорот и считает что suid надо менять на ssh :facepalm:
Он работу работает. Что полезного сделали вы?)
> Он работу работает. Что полезного сделали вы?)Тоже работу работаю. Но стараюсь работать хорошо, а не "лишь бы работало" как похоже делает Тимоти.
На риторический вопрос можно было и не отвечать.)
Пока ты стараешься, кто-то делает.
uzer@hvost: /home/uzer $ ssh uzer_doasnyi@localhost doas echo "kokoko"Проще для этих целей тупо внутренний ssh замутить.
$ alias chpok="ssh uzer_doasnyi@localhost doas "
$ chpok ps ax
Доизолировались. Кругом рута им подавай.
И как ограничивать команды, например, разрешить без пароля только определённые команды и даже с определёнными аргументами, а для остальных требовать пароль?
Если я правильно понял, тут предлагается или все команды без пароля, или все команды через аппаратный ключ,что не удобно а иногда и невозможно.
Давно известный метод. Из минусов -- нельзя ограничить повышение привилегий конкретными командами, плюс требуется постоянно запущенный демон. Из плюсов -- возможность использовать все pam-модули, доступные для sshd. Как бы, не рокетсаенс, а просто хорошо забытое старое. Собственно, автор это всё ради двухфакторки мастерил: к sudo трудно подцепить подобные вещи, а у sshd всё уже реализовано.Тут, однако, надо понимать, что это надо очень аккуратно конфигурировать: крайне желательно, чтобы sshd для повышения привилегий был вообще отдельным демоном. Потому что если у вас это дело завязано на основной sshd и вы используете какой-нибудь sssd для авторизации, то если навернётся сеть, вы не сможете повысить привилегии, даже если вживую подойдёте к консоли.
А вообще, лучше конечно всегда иметь запасной вариант в виде sudo или su. Старые топорные проверенные технологии на низком уровне -- всегда выручают.
Ну,вот,что вы тут за легаси топите. Совсем непрогрессивный админ. Закопать все секюршеллы как никому не нужное и входить исключительно с ноги.
sudo использует ровно тот же pam стек уже тысячу лет.
> sudo использует ровно тот же pam стек уже тысячу лет.Проверил. Однако да, был не в курсе: считал, что sudo устроен гораздо проще.
Тогда не понятно, чего ради всё это.
так сразу ж написали - это очередной победитель суид бита пожаловал. Вот огромный переусложненный дерьмодемон постоянно висящий, вместе с его клиентами - это норм, а суид бит нинуна и запритить.И rest api там совершенно некуда прикручивать, а ему ведь performance review не только в конце этого года хочется пройти, а и в следующем тоже.
> sudo использует ровно тот же pam стек уже тысячу лет.Еще он sudoedit использует. Мы же жить не можем без постоянного редактирования чего там, правильным редактором. Так что вот вам тут вулнов пачку на ровном месте. Дурацкая suid'ная программа.
Ты же в курсе, что sudoedit запускает редактор от пользователя, а поднимает привилегии только (и только) для замены переданного параметром файла? Да?
Почему нкльзя тогда просто использовать ssh?
Пора бы добавить ListenStream в сам sshd а не костылить прослойки inetd style.
В принципе, идея неплохая, только на сокете должен висеть не sshd, а новая софтина, со встроенной системой разделения полномочий на конфиге того же sudo, с проверкой программы-клиента (благо оба процесса на одном хосте крутятся), с удалением всего относящегося к сети, и т.д.
Я зашёл в эту статью и с первых строк начал искать слово "docker". Не нашёл. Поэтому пишу его сюда: ваш редхатчик накушался докера.>Fedora Kinoite is a reliable, atomic, safe and containerized platform for the KDE Plasma desktop,
> предложил способ ухода от применения утилиты sudo, использующей suid-бит для повышения привилегий.Предлагаю универсальный классический способ ухода от suid-бит в GNU/Linux: https://www.opennet.dev/openforum/vsluhforumID10/5622.html#8 рассматривать пункт №2
ЗЫ:sudo не нужен.
Если пользователю надо сменить пользователя на root то есть утилита su.
Обычному пользователю не надо выполнять команды с привилегиями.
Если вдруг, всё таки, надо выполнить привелигированную команду обычному пользователю, например, выключить/перегрузить комп, то для этого есть файл /etc/inittab (/etc/shutdown.allow).
ЗЫЗЫ:Ах забыл, поцтеринг уже в некоторых, падших, дистрах успел удаллить /etc/inittab, (/etc/shutdown.allow) и /etc/security/capability.conf ? Тогда вместо предложенных костылей, можно просто выкинуть systemd, вернуть init, pam и использовать CAP.
ЗЫЗЫЗЫ:
Насколько понял мысли древних, уровень безопасности B3 как раз и подразумевает использование CAP для расширения безопасности MULTICS. Не давать всего рута, а только необходимый кусочек полномочий.
dbus, policykit для выключения и прочего.
> dbus, policykit для выключения и прочего.Это противоречит классической системе безопасности UNIX: DAC, MAC, CAP + INTEGRITY, AUDIT, ACCOUNTING.
dbus, policykit - делает дыру для доступа минуя классичесические для UNIX системы безопасности. Ну и реализация от потеринга ... Подробнее:
https://www.linux.org.ru/forum/security/15600248?cid=15622030
https://www.linux.org.ru/forum/security/15600248?cid=15600880
можно и предыдущие посты прочесть.
> dbus, policykit для выключения и прочего.У меня правельно собранный GNU/Linux, без: dbus, policykit, systemd, JIT, PBF, ...
> sudo не нужен.И страдать, как Тимоти Равье?
> Если пользователю надо сменить пользователя на root то есть утилита su.
Никогда не надо, кроме ремонта.
> Обычному пользователю не надо выполнять команды с привилегиями.
Постоянно надо. Для установки ПО, монтирования съемных устройств, настройки сети.
>> Обычному пользователю не надо выполнять команды с привилегиями.
> Постоянно надо. Для установки ПО, настройки сети.Это явно задачи суперпользователя. Пишу с системы где даже у root нету таких полномочий, а вы говорите задачи обычного пользователя.
> монтирования съемных устройств,
И обычным пользователем монтировать. кучу способов, хотябы в /etc/fstab прописать, или его поцтеринг вам тоже удалил?
udev под рутом выполняется и правило можно добавить для автомонтирования своих флешек.> Для установки ПО
Выше привёл ссылки на linux.org.ru где для установки ПО обычным пользователем используют dbus+polkitd - ад и израель. Уж лучше sudo держать. CAP может решить даную задачу тоже.
> Предлагаю универсальный классический способ ухода от suid-бит в GNU/Linux:Там порылся мааааааленький фэйл!
1. Мнение разрабов дистрибутива:
groupadd wireshark
usermod -a -G wireshark vasya
chown root:wireshark /usr/bin/dumpcap
chmod a-rwxst,u+rwx,g+x /usr/bin/dumpcap
setcap cap_dac_read_search,cap_net_admin,cap_net_raw=ep /usr/bin/dumpcap
Извините, господа, надо трогать явно системные файлы, вопрос как это все с пакетником отвзаимодействует, меняется модель безопасности, не особо очевидным образом.В общем - это более интрузивный по изменениям в системе метод. И потому хотя формально оно как бы да, реально - вот - эти соображения не айс. В идеале мы эксплуатируем ОС с бинарями и их правами, атрибутами и проч в стоковом состоянии. Чтобы не брать на себя лишний майнтенанс и не тригерить IDS/системный мониторинг/верификацию состояния ОС и проч подозрительными действиями.
я пришел к похожему сценарию. только с sudo и без systemd.1) есть простой user. он логинится с консоли, от него запускается X, от него работают недоверенные бинарники. прав на sudo он не имеет, закрытых ключей ssh тоже не имеет, в интересных группах типа root, wheel и adm не состоит. umask 0022.
2) user имеет право сделать так:
ssh superuser@localhost
логин парольный.3) superuser имеет право на sudo (парольный), держит у себя в $HOME конфиденциальную инфу, не запускает недоверенные бинарники и X приложения, хранит в ~/.ssh свои ключи (парольные), которыми ходит по другим хостам. umask 0077.
где дырки в этой схеме, какие нехорошие сценарии осуществимы (кроме "украдут диск и все файлы украдут") ?
Почему просто не использовать два входа в систему под двумя разными пользователями на разных терминалах?Речь о том, что sudo имеет suid-бит, которого наличие в системе не приветствуется.
не надо бояться человека с ружьем^W^W^W suid бита.
это раньше хаксоры таким программам на вход подавали гигабайт NOP-ов и шеллкод.
но сейчас-то все иначе. ведь правда ? да ?
> sudo имеет suid-битИ механизм контроля: кто, как и когда им пользуется.
Приплыли. Одна половина комментирующих не понимает, что предлагается, вторая — понимает, но как работает OpenSSH понятия не имеет. Почитайте уже доку на OpenSSH дальше PermitRootLogin, чудики вы мои локалхостные. Тимоти дело говорит. Жаль, что большинство тут не догоняет, и вместо этого агрится на RH и systemd.
Мне казалось что суид программа - позволяет как раз обойти ограничения технологии ограничения доступа, когда стройная система оказывается работать по писанному, а нужно просто пнуть молотком чтоб заработало. Причем любому пользователю.
тоесть смысл как раз в том чтобы любой юзер мог запустить программу, которая бы сработала "от рута".
ну и причем тут токен тогда? что он вообще тут делает?
> Тимоти дело говоритСкорее занимается таким замечательным делом, как имитирование работы. Переливание из пустого в порожнее - очень плодотворная работа.
Чудики тыр-тыр-прайзные держат по серверу с докером и вебмордой на каждую юникс-утилиту. А локалхостники дело говорят.
Рут без пароля из любой точки системы. Видимо из соображений инклюзичности, чтобы любой тупой "хакер" мог "взломать" систему.
Я написал программу, выставил ей suid, и нахрена мне все это,описанное выше?
Сдаюсь. - Не знаю - почему это удаляет какой-то АВТОБОТ!!!
Да, и вот Михаил Шигорин и раньше указывал - opennet.ru/openforum/vsluhforumID3/129528.html#199 -
"Некоторые используют ssh root@localhost, чтобы убрать ещё один привилегированный бинарник;"
Так что трюк "известный". Но если докладчика зовут "Тимоти", то это "wow".
> Сдаюсь. - Не знаю - почему это удаляет какой-то АВТОБОТ!!!Потому что у мудобота бывают заскоки и последние несколько дней его плющило. Скажи спасибо что у него туррелей автоматических нет, иначе он бы уже человечество децимировал нахрен.
> Так что трюк "известный". Но если докладчика зовут "Тимоти", то это "wow".
Широко известный в узких кругах видимо. "Остап знал дюжину способов элевации без suid'ного бита".