The OpenNET Project / Index page

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

В sudo устранена уязвимость, позволяющая переписать файл на системах с SELinux

31.05.2017 23:54

В утилите sudo, применяемой для организации выполнения команд от имени других пользователей, выявлена опасная уязвимость (CVE-2017-1000367). Проблема позволяет переписать любой файл в системе, например, /etc/shadow, и проявляется только если пользователю делегировано выполнение определённых привилегированных операций в /etc/sudoers, в системе включен SELinux и sudo собран с поддержкой SELinux. Уязвимость устранена в обновлении sudo 1.8.20p1, а также в пакетах дистрибутивов RHEL 6/7, Fedora, Ubuntu, Debian, SUSE и openSUSE.

Уязвимость эксплуатируется через создание символической ссылки на исполняемый файл sudo, с заданием для ссылки имени, содержащем пробел, после которого следует число. При разборе файла /proc/[pid]/stat после запуска по такой ссылке программа sudo пытается определить номер устройства tty, к которому прикреплён текущий процесс, но так как в качестве разделителей /proc/[pid]/stat применяются пробелы, запуск через ссылку с пробелом в имени нарушает порядок разбора и позволяет подставить фиктивный номер устройства, не связанный с каким-то уже существующим устройством в каталоге /dev. Используя данный фиктивный номер устройства sudo не может найти терминал текущего процесса в каталоге /dev/pts, после чего пытается найти устройство в каталоге /dev.

Атакующий может подобрать момент и создать новый псевдотерминал в момент, когда sudo уже проверил /dev/pts но ещё не начал проверку в /dev (например, используя inotify для отслеживания открытия каталога), и установить на него символическую ссылку в каталоге /dev (например, каталог /dev/shm доступен всем на запись), после чего данный файл будет воспринят sudo как текущий терминал. При указании роли SELinux через опцию "-r role" в командной строке при вызове sudo, данное устройство будет использовано для stdin, stdout и stderr. Заменив символическую ссылку с псевдотерминала на реальный файл, можно переписать его содержимое (sudo выводит в stderr все аргументы командной строки в случае ошибки, например, можно вместо опции передать '--\nHELLO\nWORLD\n'). К примеру, можно получить полномочия root, переписав /etc/shadow или /etc/sudoers.

  1. Главная ссылка к новости (http://www.openwall.com/lists/...)
  2. OpenNews: При портировании во FreeBSD утилиты doas, аналога sudo от OpenBSD, возникла опасная уязвимость
  3. OpenNews: В дерево исходных текстов OpenBSD принят код замены sudo
  4. OpenNews: Уязвимости в sudo, OpenOffice, Sympa, Libxml2, gdk-pixbuf, QuickTime, RealPlayer и Pidgin
  5. OpenNews: В sudo найдена уязвимость, потенциально позволяющая получить root-доступ
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/46633-sudo
Ключевые слова: sudo
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (111) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.3, Аноним (-), 00:19, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –27 +/
    Чем su не угодил. не понимаю людей ставящих на пк левый бесполезный софт.
     
     
  • 2.5, Аноним (-), 00:21, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –8 +/
    Впрочем как и sekinux.
     
  • 2.7, grsec (ok), 00:34, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +37 +/
    Зачем логины разные, когда есть root.
     
     
  • 3.12, Аноним (-), 01:35, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Так и работаем:

    # ls -l $(which init)
    lrwxrwxrwx 1 root root 9 Jan  1  02:31  /sbin/init -> /bin/bash

    # ls -l /proc/1/exe
    lrwxrwxrwx 1 root root 0 Jan  1  02:31  /proc/1/exe -> /bin/bash


    Говорят что вот с systemd загрузка чуть-чуть стала быстрее. Вы сразу в bash вместо init ходите как я!! - Вот это значит быстрее!

     
     
  • 4.16, VINRARUS (ok), 05:10, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    А ходил бы в shell (или ещо лучше в ash) ещо б быстрее стала.
     
  • 4.21, Аноним (-), 07:27, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Если хотите сразу в bash, то просто в параметрах grub добавьте init=/bin/bash. ;) Но в современных редакциях дистрибутивов это может не сработать. Зато хороший способ сбросить забытый пароль.
     
     
  • 5.28, X3asd (ok), 08:46, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Зато хороший способ сбросить забытый пароль.

    ну да, верно...

    если забыл пароль от LUKS -- то всегда поможет старый добрый dd if=/dev/zero ...

    ну а то что потрутся файлы -- ды хрен с ними -- главное что я-у-мамы-хакер

     
  • 4.62, Аноним (-), 13:48, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    systemd приd порядок навеd!
     
     
  • 5.116, Аноним (-), 21:17, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > systemd приd порядок навеd!

    su там уже "исправили", так что да, ждём объявления от Рыжего, что судо в таком виде нинужна и вкорячивание собственного, несовместимого (а как иначе?) в системдупу.

     
  • 5.117, Аноним (-), 21:29, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    'sudod' coming soon (+QRcode & httpd)?
     
     
  • 6.119, Crazy Alex (ok), 22:30, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Там и так удод на удоде...
     
  • 3.129, Др Анон (?), 14:18, 06/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >  Зачем логины разные, когда есть root.

    Т.е. сидеть от рута - плохо, а сидеть от пользователя имеющего права рута - гуд?
    Тот же пароль пользователя с приставкой sudo. Может кто расскажет в чём соль этого sudo?

     
     
  • 4.130, Аноним (-), 02:32, 07/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    pkexec же есть при желании...
     
  • 2.9, Аноним (-), 00:43, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Не понимаю людей, сравнивающих системы контроля доступа и обычную программу для входа от лица какого-либо пользователя.
     
     
  • 3.48, Аноним (-), 12:18, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Не понимаю людей, сравнивающих системы контроля доступа и обычную программу для входа
    > от лица какого-либо пользователя.

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

    По теме, у этих двух систем есть много общего, но есть и существенные различия. Некоторые из которых (на данный момент) возможны только в одной из них. И это меня успокаивает, на предмет того что sudo ни куда не денется!

     
     
  • 4.85, Аноним (-), 16:12, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У меня претензий нет вообще к sudo, просто выше писали про сравнение su. sudo вообще является, на мой взгляд, куда более гибкой и удобной утилитой, нежели, чем su.

    Да, sudo меня полностью устраивает, если что. :)

     
     
  • 5.93, _ (??), 16:57, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >sudo вообще является, на мой взгляд, куда более гибкой и удобной утилитой, нежели, чем su.

    Но у каждой медали - две стороны. И именно по этому в топике - пролом через sudo, а не через su ... вот такие вот пирожки с котятами :)

     
     
  • 6.113, vi (ok), 20:22, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >>sudo вообще является, на мой взгляд, куда более гибкой и удобной утилитой, нежели, чем su.
    > Но у каждой медали - две стороны. И именно по этому в
    > топике - пролом через sudo, а не через su ... вот
    > такие вот пирожки с котятами :)

    Вы имеете в виду то, что чем проще велосипед, тем он надежнее и более предсказуемый? Тут, я думаю, не надо сильно спорить.

    Одно здесь хорошо, очередную дырочку закрыли! А так как аналогов sudo не очень много (ИМХО), и велосипедить в данном секторе будут только самые отъявленные (или самые одаренные), то такие нужные и важные инструменты как su и sudo потихонечку "оттачиваются"!

     
     
  • 7.115, Аноним (-), 21:13, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/

    > Одно здесь хорошо, очередную дырочку закрыли! А так как аналогов sudo не
    > очень много (ИМХО), и велосипедить в данном секторе будут только самые
    > отъявленные (или самые одаренные), то такие нужные и важные инструменты как
    > su и sudo потихонечку "оттачиваются"!

    Рыжий же уже вроде как высказал своё фи насчёт su и забацал замену.


     
     
  • 8.122, vi (ok), 23:25, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Да и пусть с ним, и дай Бог ему здоровья Он стахановец по коду Да и встряску б... текст свёрнут, показать
     
  • 2.14, turbo2001 (ok), 03:23, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –7 +/
    Может это из-за ubuntu? Там sudo популярен, во всех мануалах он используется для запуска команд из-под рута.
     
     
  • 3.15, Аноним (-), 03:59, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +18 +/
    Думаю, виноват латинский алфавит, так как во всех мануалах sudo набирают буквами именно этого алфавита.
     
     
  • 4.94, _ (??), 16:58, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    _руки_ же!!! :-)
     
  • 2.18, Аноним (-), 07:02, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Для su нужно знать пароль рута.
     
     
  • 3.30, анон (?), 09:59, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Забавно, что в Suse для sudo тоже нужно знать пароль рута.
     
     
  • 4.32, Аноним (-), 10:08, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Если настроить его по-человечески, то не нужно.
     
  • 4.35, Аноним (-), 10:19, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    У вас какой-то неправильеный Suse. Наверное он делает неправильный sudo.
     
  • 4.50, пох (?), 12:41, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Default targetpw - во всех линуксах нынче, кроме redhat-derivatives Потому что... большой текст свёрнут, показать
     
     
  • 5.56, Michael Shigorin (ok), 13:07, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Потому что все скопипастили эту ненужность у убунты (в смысле, там вообще весь конфиг
    > по умолчанию из одной бочки).

    Где-то и головой думали, что в пакет класть.

    > Ну, а что вы хотите от линуксов - у нас еще и PermitRootLogin во всех sshd_conf

    ...without-password, бишь "по ключу".  У _нас_.

    PS: https://cve.basealt.ru/informatsiia-ob-uiazvimosti-cve-2017-1000367.html :]

     
     
  • 6.66, Аноним (-), 14:19, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем потёр коммент со ссылкой на unixforum? А если конкретно, то опрос о su и sudo на нём. Вон внизу ссылку на Пикабу не потёр почему-то!
     
     
  • 7.73, Michael Shigorin (ok), 15:26, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Зачем потёр коммент со ссылкой на unixforum?

    Не видел.  Возможно, нарвались на автомодератора из-за ссылки -- особенно если пишете через tor (см. тж. https://www.opennet.ru/openforum/vsluhforumID3/111371.html#89).

     
     
  • 8.95, _ (??), 17:02, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Lessons are learnt и подул на воду Ну а с другой стороны, лучше пере ... текст свёрнут, показать
     
  • 6.69, пох (?), 14:58, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > ..without-password, бишь "по ключу"

    человек, настроивший ключи, вполне сможет и сам включить.
    Я предпочитаю персональные логины и персональные ключи - потому что если все логинятся рутом, не остается записи, у кого именно надысь сперли ключ. Гадай на кофейной гуще и реверс-адресах хостов.

    Плюс рутовый логин обожает ssh'шный червяк, отличный повод сразу в DENY добавлять, наши люди "так не стучат".

     
     
  • 7.79, Michael Shigorin (ok), 15:48, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Я предпочитаю персональные логины и персональные ключи - потому что если все
    > логинятся рутом, не остается записи, у кого именно надысь сперли ключ.

    Ну так uid==0 может быть у более чем одного персонализованного логина.

     
  • 7.87, Аноним (-), 16:30, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > если все логинятся рутом, не остается записи, у кого именно надысь сперли ключ

    Сразу видно, кто не дочитал документацию OpenSSH до конца. Штатным способом можно логиниться рутом, со своим персональным ключом, имя которого будет записано в лог. См. раздел CERTIFICATES в man ssh-keygen и описание опции TrustedUserCAKeys в mah sshd_config.

     
     
  • 8.99, пох (?), 17:59, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –5 +/
    а, очередные пыонэры с неспокойными ручонками нахреначили очередное ненужно Нет... текст свёрнут, показать
     
  • 5.65, Аноним (-), 14:10, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > во всех линуксах нынче, кроме redhat-derivatives

    В Дебьяне нет по умолчанию.

     
     
  • 6.71, пох (?), 15:23, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > В Дебьяне нет по умолчанию.

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

    Кстати, кто б мне объяснил физический  смысл строки с root (пихаемой тоже во все дистрибутивные конфиги всех вендоров) ? Для настолько альтернативно-одаренных, которые из под рута ТОЖЕ дергают sudo вместо su -c (не то чтоб совсем не имело смысла, но если оно тебе регулярно надо - скорее всего ты делаешь что-то не то)?

     
     
  • 7.72, Michael Shigorin (ok), 15:25, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > Кстати, кто б мне объяснил физический  смысл строки с root
    > (пихаемой тоже во все дистрибутивные конфиги всех вендоров) ?

    Давайте как-то иначе обобщать:

    # grep ^root /etc/sudoers
    # rpm -qf /etc/sudoers
    sudo-1.6.8p12-alt12.x86_64
    # _

    > Для настолько альтернативно-одаренных, которые из под рута ТОЖЕ дергают sudo

    "От одарённых для одарённых"(tm), видимо.

     
  • 7.74, Аноним (-), 15:33, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > жить с этим невозможно, в отличие от редхатовского, который
    > делали люди и для людей, но на первый раз получить доступ
    > и переделать сойдет

    5 минут на настройку единожды потратить не судьба? Как маленькие, честное слово. Один раз настраиваешь и раскидываешь по машинам. В чём проблема то? У меня "свой" конфиг уже 6 лет, ничего лишнего в нём не было по умолчанию.


     
     
  • 8.83, пох (?), 15:59, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    мы используем дистрибутивы, а не наколенный аналог lfs, ровно потому, что они вы... большой текст свёрнут, показать
     
     
  • 9.96, Аноним (-), 17:26, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    В REHL редко что-то меняют Там пакеты старее, чем в Debian Если ты про вся... текст свёрнут, показать
     
     
  • 10.101, пох (?), 18:13, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    ты не в теме Пакеты в центосе ровно те же самые что в rhel, с опозданием на две... текст свёрнут, показать
     
     
  • 11.103, Аноним (-), 18:26, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Хз, в центе пакеты посвежее бывают Но может я действительно не знаю, потому что... текст свёрнут, показать
     
     
  • 12.104, Аноним (-), 18:28, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Скачал из пакета свежий конфинг За почти 6 лет ничего не изменилось Defaults e... текст свёрнут, показать
     
  • 7.78, Аноним (-), 15:44, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > (жить с этим невозможно, в отличие от редхатовского, который
    > делали люди и для людей, но на первый раз получить доступ
    > и переделать сойдет)

    Да-да, вот он, ваш прекрасный редхатовский sudoers: https://bugzilla.redhat.com/show_bug.cgi?id=1196451
    CLOSED ERRATA
    Всё для людей.

     
     
  • 8.84, пох (?), 16:09, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    да, ужасная страшная катастрофа - у парашутистов-торопыг ломается nopasswd это,к... текст свёрнут, показать
     
     
  • 9.89, Аноним (-), 16:45, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Это не только NOPASSWD ломает, это много чего ломает Если хочешь использовать s... текст свёрнут, показать
     
     
  • 10.102, пох (?), 18:17, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    совсем не хочу Я и говорю - не люди это были, а роботы туповатые ... текст свёрнут, показать
     
     
  • 11.112, Аноним (-), 19:34, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Да, роботы Нет, не туповатые Просто роботы, которые не хотят эмулировать польз... текст свёрнут, показать
     
  • 5.77, Аноним (-), 15:41, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Default: targetpw - во всех линуксах нынче, кроме redhat-derivatives.

    Чего-о? Вообще-то только в suse, которая к редхату никакого отношения не имеет.
    Знатоки... Убивать надо таких знатоков!©

     
  • 2.19, Аноним (-), 07:21, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Дейсвительно. Давайте уж как в венде. Одной учётки администратора хватит всем! Ты может ещё и из под рута сидишь? Может всё-таки в следующий раз почитаешь, что делает sudo и что делает su, прежде чем бесполезные комментарии писать?
     
     
  • 3.40, Аноним (-), 11:08, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Дейсвительно. Давайте уж как в венде. Одной учётки администратора хватит всем! Ты
    > может ещё и из под рута сидишь? Может всё-таки в следующий
    > раз почитаешь, что делает sudo и что делает su, прежде чем
    > бесполезные комментарии писать?

    Похвально, конечно, что ты читаешь - мало кто читает в наше время. Однако мне читать ничего не надо - у меня Gentoo и тут su. Работаю вроде от пользователя.

     
     
  • 4.45, F (?), 11:36, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Однако мне читать ничего не надо - у меня Gentoo

    Надо. Очень много надо. И, главное, не ставь Gentoo на любую mission critial систему, которой когда-либо будет заниматься кто-то, кроме тебя.

     
     
  • 5.55, пох (?), 12:58, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Надо. Очень много надо. И, главное, не ставь Gentoo на любую mission
    > critial систему, которой когда-либо будет заниматься кто-то, кроме тебя.

    да ладно, пусть себе ставит. Я когда вижу генту в таком месте - сразу расслабляюсь, потому что ну в самом худшем случае - окажется что "оно каждую ночь само себя пересобирает из наисвежайших версий софта(c)", непременно еще с march=точной версии не самого распространенного процессора, и это можно просто отключить. А если оно уже развалилось - тем лучше, меньше возни.

    А вот если стоит какой-нибудь redhat - может быть что угодно, вплоть до кастомных модулей в selinux, самосборных критических пакетов (а сборочная система ушла вместе с автором) и диверсий в конфигах.

     
  • 4.46, Crazy Alex (ok), 11:54, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А у меня Gentoo и sudo. По куче причин - от просто хорошей привычки до нескольких настроенных беспарольных команд. И что?
     
  • 4.58, Аноним (-), 13:20, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > мне читать ничего не надо

    Книжки умные ты тоже не читаешь?

    > у меня Gentoo

    Понятно. Читать ему не надо.

    > и тут su

    В Генте у тебя может быть всё что угодно. Мог бы и собрать sudo, ничего бы не сделалось с тобой за эти пару секунд.

     
  • 3.57, Michael Shigorin (ok), 13:09, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Может всё-таки в следующий раз почитаешь, что делает sudo и что делает su

    Следующий уровень: https://www.opennet.ru/openforum/vsluhforumID3/73378.html#19

    > прежде чем не шибко полезные комментарии писать

     
     
  • 4.70, Andrey Mitrofanov (?), 15:12, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>что делает sudo и что делает su
    > Следующий уровень: https://www.opennet.ru/openforum/vsluhforumID3/73378.html#19
    >> прежде чем не шибко полезные комментарии писать

    Захватывающе... Каждый раз. Испугаться и бежать прочь, вспоминая привычные строчки со screen и su/sudo.

    С 2004-го люди ""[We]'ve been discussing privately how we might re-design su"" -- это ж какое упорство надо?!

     
  • 2.39, Аноним (-), 11:03, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Тебя заминусила школота, у которой первый линукс уже использовал sudo, и не заставшая su по умолчанию.

    На Пикабу меня так же заминусили за вопрос в комментах под постом "Мария Захарова откомментировала...". Я спросил "Кто такая, чем знаменита?" И ведь даже ответить не могут, потому что все её знают из телевизора, а признаться что смотришь телевизор - дурной тон. Вот и минусуют - типа "стыдно не знать, все знают!"

    Ньюфаги иногда забавляют, да. Так втопить за sudo только потому, что не видели линукса без него. Похоже, я начинаю понимать фанатов Systemd.

     
     
  • 3.61, Аноним (-), 13:40, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –3 +/
    sudo есть почти во всех крупных дистрах Первое что я сделал - как раз настроил ... большой текст свёрнут, показать
     
  • 3.80, Аноним (-), 15:53, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > не заставшая su по умолчанию.

    Это как это? Его что, из POSIX выкинули? Или в каких-то дистрибутивах настолько забили на стандарт, что убрали su?

     
  • 2.60, user455 (?), 13:29, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Чем su не угодил. не понимаю людей ставящих на пк левый бесполезный софт.

    на десктопе без sudo никуда.

    на сервер при помощи sudo можно делегировать пользователю выполнение некоторых комманд. не очень гибко и удобно, но тем не менее.

    проблем с безопасностью на сервере он особо никаких не решает, т.к. нет особой разницы между

    # rm -fr /*

    и

    $ sudo rm -fr /*

    но тем не менее одна из самых главных фич sudo на сервере -  он позволяет работать с личными пользовательскими настройками консоли. всякие pyenv-ы, prompt-ы и т.д. к примеру когда на сервер логинится много кто и у всех свои предпочтения.

     
     
  • 3.67, anonymous (??), 14:40, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > нет особой разницы между

    Есть. Иди учи матчасть.

    man sudoers

     
     
  • 4.126, user455 (?), 20:43, 04/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    дружище, я думаю матчасть я знаю лучше тебя. по крайней мере не хуже точно. sudoers использую очень активно.

    я в своем сообщении написал про sudoers

    > на сервер при помощи sudo можно делегировать пользователю выполнение некоторых комманд. не очень гибко и удобно, но тем не менее.

    и плохо понимаю при чем тут sudoers в принципе. обсуждали разницу между sudo и su - .

    в sudoers для админа как правило выставлено выполнение _любых_ комманд от рута. и в этом случае разницы никакой нет, что ты выполняешь деструктивную команду с суду, либо без суду от рута.

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

     

  • 1.11, Аноним (-), 01:11, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > При разборе файла /proc/[pid]/stat

    facepalm. Ещё и strtok()'ом поди.

     
     
  • 2.17, Онононононим (?), 06:48, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Вот не надо ехидничать, не посмотрев исходники.

    https://github.com/millert/sudo/commit/b3fe46ce6534ebcb6fb0e91d24ac4d387f31544

     
     
  • 3.23, Аноним (-), 07:31, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    +     /*
    +      * Field 7 is the tty dev (0 if no tty).
    +      * Since the process name at field 2 "(comm)" may include spaces,
    +      * start at the last ')' found.
    +      */
    +     char *cp = strrchr(line, ')');
    +     if (cp != NULL) {
    + char *ep = cp;
    + const char *errstr;
    + int field = 1;
    +
    + while (*++ep != '\0') {
    +     if (*ep == ' ') {
    + *ep = '\0';
    + if (++field == 7) {

    Даа, там ещё круче. Недооценил, чо.

     
  • 2.20, Аноним (-), 07:25, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Ещё и strtok()'ом поди.

    Нет.

    strtok_s() вполне безопасно разбирать.


     
     
  • 3.22, Аноним (-), 07:29, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >> Ещё и strtok()'ом поди.
    > Нет.
    > strtok_s() вполне безопасно разбирать.

    Нет такой функции. Есть strrok_r (POSIX). Она потокобезопасна и реентабельна.

     
     
  • 4.24, Какаянахренразница (ok), 07:39, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    s-суффиксы это то, что Непросохт продвигает в стандарт, не?..
     
     
  • 5.25, Аноним (-), 08:07, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да, действительно спутал. Товарищ выше прав.
     
  • 4.63, Аноним (-), 13:51, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >>> Ещё и strtok()'ом поди.
    >> Нет.
    >> strtok_s() вполне безопасно разбирать.
    > Нет такой функции. Есть strrok_r (POSIX). Она потокобезопасна и реентабельна.

    реентерабельная

     

  • 1.29, Нанобот (ok), 09:17, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    а какой вообще правильный способ получения этих данных из ядра?
     
     
  • 2.31, пох (?), 09:59, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    для большинства - никакого В смысле, не нужно это никому Для такой специфичной... большой текст свёрнут, показать
     
     
  • 3.41, Нанобот (ok), 11:13, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    да хрен с этим большинством
    как мне, в случае необходимости, программно узнать ppid или rss или stime процесса?
     
     
  • 4.49, пох (?), 12:26, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > как мне, в случае необходимости, программно узнать ppid или rss или stime процесса?

    а причем тут sudo и этот баг?
    с pid/rss все по прежнему, как двадцать лет назад - в линуксе их принято читать из /proc/$pid/status (что в не-hardened линуксах доступно с правами юзера, а если у тебя hardened - так ты, значит, и не хочешь, чтобы кто угодно мог узнать), в bsd - через анус, поскольку kmem дают на почитание не всем, proc монтировать нынче не принято, поэтому придумана отдельная (дыра) через sysctl.

     
     
  • 5.105, Нанобот (ok), 18:31, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > а причем тут sudo и этот баг?

    Я пытался поставить себя на место разработчиков sudo и понять, что можно было бы сделать, чтоб не допустить эту ошибку (думал, может существуют альтернативные способы получения этой информации, лишённые недостатков как при парсинге /proc)

     
     
  • 6.106, пох (?), 19:06, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Я пытался поставить себя на место разработчиков sudo

    так им не ppid надо.

    > лишённые недостатков как при парсинге /proc

    для sudo, которая существует на свете много дольше, чем линуксы, основной недостаток /proc вот в этом вот:
    > ls -la /proc/

    total 4
    dr-xr-xr-x   2 root  wheel  512 Jan  3  2012 .
    drwxr-xr-x  19 root  wheel  512 Apr 18 22:38 ..

    ;-)
    И формат status у всех свой, даже если он там и будет.
    А еще есть системы, где и вовсе /proc никакого нет.

     
  • 3.47, Crazy Alex (ok), 12:08, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как самый минимум - с sudo не надо на каждый чих вводить пароль, при этом можро не сидеть в рутовой консоли. Шансы начудить по ошибке это явно уменьшает.
     
     
  • 4.68, Аноним (-), 14:57, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну на самом деле я немного не согласен. Я после 10 ввода ввожу уже на автомате. Как-то раз чуть не потёр важные файлы, благо вовремя остановил и успел восстановить частично.
     
     
  • 5.92, Crazy Alex (ok), 16:54, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    на сервере - есть такое дело, да. Но речь изначально шла об убунтах/локалхостах, там не так часто приходится рутом что-то делать, обычно это именно "на первый раз ввёл пароль, потом автоматом". Плюс каждое написанное sudo тоже напоминает, что надо перепроверить, что делаешь. Не гарантия ни разу, но польза есть.
     
     
  • 6.97, Аноним (-), 17:39, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > на сервере

    Будешь удивлён - на локалхосте :) Просто автоматом уже набираю для apt, например.

    > на первый раз ввёл пароль, потом автоматом

    Я параноик - у меня каждый раз надо вводить пароль.

    > Плюс каждое написанное sudo тоже напоминает, что надо перепроверить

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

     
  • 6.124, Ordu (ok), 12:53, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > каждое написанное sudo тоже напоминает, что...

    следующей введённой командой должна быть sudo bash: сколько уже можно вводить этот долбаный sudo.

    > напоминает, что надо перепроверить, что делаешь.

    use PS1, Luke. Раскрась руту приглашение ко вводу в shell так, чтобы оно резало глаза. Воткни туда что-нибудь красненькое, обязательно \$ в конце, чтобы видеть # вместо $. Не надо делать рутовый PS1 слишком длинным -- всё же удобство редактирования команд важно, но ярким и "опасно" выглядящим -- обязательно. И сигналы ACHTUNG! ACHTUNG! твой мозг будет получать не тратя время на ввод команды sudo.

     
  • 3.64, Аноним (-), 14:04, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/

    >[оверквотинг удален]
    > стала. Зачем убунтоиды ее навязывают всему миру - я без понятия,
    > поскольку в их дефолтной конфигурации (именно от них ее растиражировали остальные)
    > вся польза старательно помножена на ноль -
    > Defaults targetpw   # ask for the password of the target
    > user i.e. root
    > ALL     ALL=(ALL) ALL   # WARNING! Only
    > use this together with 'Defaults targetpw'!
    > afair, этим изобретением мы обязаны именно убунте. Найдите тут десять отличий от
    > банального использования su (которая как раз написана хорошо, поскольку неведомой херни
    > там на два порядка меньше) ?

    Аналоги sudo есть? С тем же функционалом и без "неведомой херни", пусть хоть на порядок меньше. Ну и конечно же хотелось бы, что бы код был как картина маслом ;)

     
     
  • 4.75, пох (?), 15:39, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Аналоги sudo есть? С тем же функционалом и без "неведомой херни", пусть

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

    > хоть на порядок меньше. Ну и конечно же хотелось бы, что
    > бы код был как картина маслом ;)

    идеала все равно не будет - там сложный парсер, его аж дважды, помнится, с нуля переписывали, там нужно аккуратно обращаться с токенами, чтобы passwordless sudo не сделалась внезапно общехалявной для каждого nobody, и еще много всяких подводных камней даже для случая, когда у тебя там только trusted users, и sudo именно для замены su, а не для индивидуального доступа к отдельным фичам (который все равно защищает только от честных людей).

     
  • 4.76, Michael Shigorin (ok), 15:41, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Аналоги sudo есть? С тем же функционалом и без "неведомой херни",
    > пусть хоть на порядок меньше.

    http://git.altlinux.org/people/ldv/packages/?p=sudo.git

     
     
  • 5.81, Аноним (-), 15:55, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > http://git.altlinux.org/people/ldv/packages/?p=sudo.git

    Этот ваш альтовский sudo давным-давно поломан. Описанные в мане опции не работают. Молодцы, продолжайте в том же духе.

     
     
  • 6.82, Michael Shigorin (ok), 15:59, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >> http://git.altlinux.org/people/ldv/packages/?p=sudo.git
    > Этот ваш альтовский sudo давным-давно поломан. Описанные в мане опции не работают.

    А именно?

    > Молодцы, продолжайте в том же духе.

    Ну не набрасывать же тень на плетень, как это делаете Вы.

     
     
  • 7.90, Аноним (-), 16:51, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    -E например. Остальное не проверял, потому что не нужно было.
     
     
  • 8.91, Аноним (-), 16:53, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    P S И не надо рассказывать, что -E 8212 это дыра Во-первых, дырой оно было ... текст свёрнут, показать
     
     
  • 9.107, пох (?), 19:12, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    ваще-то - дыра Проблема что опция доступна пользователю, а оверрайд, блокирующи... текст свёрнут, показать
     
     
  • 10.111, Аноним (-), 19:31, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот и именно, что если дать дураку sudo 8212 он найдёт способ отстрелить себе... текст свёрнут, показать
     
  • 8.98, Michael Shigorin (ok), 17:46, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А теперь покажите пальцем место в мане из этого пакета, где эта опция описана ... текст свёрнут, показать
     
     
  • 9.100, Аноним (-), 18:03, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Когда ставил 7 версию 8212 была Что, убрали Ну и ладно, всё равно живых пол... текст свёрнут, показать
     
     
  • 10.108, пох (?), 19:13, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    ну-ка, ну-ка, с этого места поподробнее - это у кого у нас такие скрипты Не a... текст свёрнут, показать
     
     
  • 11.110, Аноним (-), 19:28, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, не ansible Если интересует предмет моей боли 8212 это скрипт запуска GU... текст свёрнут, показать
     
     
  • 12.114, пох (?), 21:03, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    хха, если бы так - хватило бы env_keep DISPLAY - это-то совершенно безобидно З... текст свёрнут, показать
     
     
  • 13.120, Аноним (-), 22:43, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Во-первых, не безобидно Запускать в иксах что попало от рута 8212 дело риско... текст свёрнут, показать
     
     
  • 14.125, пох (?), 15:55, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    ну так не запускай что попало и от рута - полагаем, вы уже прослушали лекцию си... текст свёрнут, показать
     
  • 12.127, Michael Shigorin (ok), 17:41, 05/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    А какой красавец писал GUI-приложение с рутовыми привилегиями вместо привилегиро... текст свёрнут, показать
     
     
  • 13.128, пох (?), 23:22, 05/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    а смысл Если запускать его в trusted окружении читай, из под собственного юзе... текст свёрнут, показать
     
  • 5.86, пох (?), 16:14, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > http://git.altlinux.org/people/ldv/packages/?p=sudo.git

    sudoedit зачем-то починен, а не выброшен нафиг ;-)

     
  • 4.118, Аноним (-), 21:31, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/

    > Аналоги sudo есть? С тем же функционалом и без "неведомой херни", пусть
    > хоть на порядок меньше. Ну и конечно же хотелось бы, что
    > бы код был как картина маслом ;)

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

     
     
  • 5.121, пох (?), 22:50, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Опенята клепали же свой аналог doas,

    вам мало roaming в sshd и насквозь гнилой libressl, чтобы понять, что это будет еще хуже, чем sudo?
    (особенно, когда попытаешься отвязать от общего чудо-проекта - включая вот ровно обсуждаемые грабли. Они линуксоспецифичны, сюрприз, да?)

     

  • 1.37, Аноним (-), 10:31, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Как можно запретить выполнение команды конкретному пользователю, например ls не запрещая другим пользователям? Пока тока acl на ум приходят
     
     
  • 2.38, Andrey Mitrofanov (?), 10:35, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Как можно запретить выполнение команды конкретному пользователю, например ls не запрещая
    > другим пользователям? Пока тока acl на ум приходят

    rbash или подобное, может быть.

     
  • 2.52, Аноним (-), 12:50, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    selinux, однако :) точнее rbac
     

  • 1.54, mumu (ok), 12:51, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Очень красивый метод описан. Не какое-то там осточертевшие переполнение, а красиво и со вкусом.
     
  • 1.59, iZEN (ok), 13:24, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    Зачем его используют на локалхосте? Есть же su.
     
  • 1.109, Гость (??), 19:19, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    А чего все так возбудились-то? Если я правильно понял, то нужен физический доступ.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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