* [devel] q: current sudo default: was it all worth it? @ 2007-05-21 13:45 Michael Shigorin 2007-05-21 13:58 ` Slava Dubrovskiy 2007-05-21 14:20 ` Dmitry V. Levin 0 siblings, 2 replies; 7+ messages in thread From: Michael Shigorin @ 2007-05-21 13:45 UTC (permalink / raw) To: devel [-- Attachment #1.1: Type: text/plain, Size: 1696 bytes --] Здравствуйте. Ещё вопрос к Диме, набодавшись с sudo и в итоге откатив с 1.6.8p12-alt2 на 1.6.7p5-alt6.1 в процессе выяснения причины проблемы после dist-upgrade с сизифа примерно двухмесячной давности на 4.0-branch: что даёт - Enabled env_reset, requiretty and tty_tickets options by default. помимо уже обсуждавшегося облома с использованием sudo и графических программ? На сейчас поймали при таком раскладе (полукиоск): минимальный десктоп от одного пользователя висит на :0.0, при этом есть кнопка запуска браузера на :0.1 (отдельный монитор) от другого пользователя. Помогло в сумме получасовое изучение sudoers(5) и колупание с visudo(8), приведшее к: # Defaults specification Defaults !env_reset Defaults !requiretty Defaults !tty_tickets Наверное, для сервера произведённые изменения теоретически полезны, но вот на десктопе нас с таким дефолтным поведением закидают тухлыми болванками и будут правы. Настойчиво предлагаю такое: - добавить в закомментированном виде эти три строчки в /etc/sudoers в пакете; - добавить приложенный control facility (меня он не устраивает тем, что при отсутствии трогаемых строчек статус останется unknown вместо явной фиксации дефолтов, но сейчас не соображу, как это сделать); - проверить соответствие пакетного состояния кода и /etc/sudoers описанию в sudoers(5) -- сейчас в манпейдже off by default, на деле же эти три опции включены (что документировано только в rpm changelog); - хорошо бы для десктопа этот дефолт сменить на вполне разумный, каковой и положен апстримом. -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ Linux.Kiev http://www.linux.kiev.ua/ [-- Attachment #1.2: sudoers --] [-- Type: text/plain, Size: 565 bytes --] #!/bin/sh . /etc/control.d/functions CONFIG=/etc/sudoers new_summary "sudoers defaults" new_subst server \ '^(#+Defaults !|Defaults )(env_reset|requiretty|tty_tickets)$' \ 's,^#*Defaults \!\?\(\(env_reset\|requiretty\|tty_tickets\)\)$,Defaults \1,' new_subst desktop \ '^(Defaults !|#Defaults )(env_reset|requiretty|tty_tickets)$' \ 's,^#*Defaults \!\?\(\(env_reset\|requiretty\|tty_tickets\)\)$,Defaults !\1,' new_help server "Strict sudoers defaults" new_help desktop "Relaxed sudoers defaults" control_subst "$CONFIG" "$*" [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [devel] q: current sudo default: was it all worth it? 2007-05-21 13:45 [devel] q: current sudo default: was it all worth it? Michael Shigorin @ 2007-05-21 13:58 ` Slava Dubrovskiy 2007-05-21 14:20 ` Dmitry V. Levin 1 sibling, 0 replies; 7+ messages in thread From: Slava Dubrovskiy @ 2007-05-21 13:58 UTC (permalink / raw) To: ALT Devel discussion list [-- Attachment #1: Type: text/plain, Size: 1406 bytes --] Michael Shigorin пишет: > Здравствуйте. > Ещё вопрос к Диме, набодавшись с sudo и в итоге откатив > с 1.6.8p12-alt2 на 1.6.7p5-alt6.1 в процессе выяснения > причины проблемы после dist-upgrade с сизифа примерно > двухмесячной давности на 4.0-branch: что даёт > > - Enabled env_reset, requiretty and tty_tickets options by default. > > помимо уже обсуждавшегося облома с использованием sudo > и графических программ? > > На сейчас поймали при таком раскладе (полукиоск): минимальный > десктоп от одного пользователя висит на :0.0, при этом есть > кнопка запуска браузера на :0.1 (отдельный монитор) от другого > пользователя. > > Помогло в сумме получасовое изучение sudoers(5) > и колупание с visudo(8), приведшее к: > > # Defaults specification > Defaults !env_reset > Defaults !requiretty > Defaults !tty_tickets > В kubuntu последнем две последние строчки присутствуют сразу по умолчанию. -- WBR, Dubrovskiy Vyacheslav [-- Attachment #2: S/MIME Cryptographic Signature --] [-- Type: application/x-pkcs7-signature, Size: 3249 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [devel] q: current sudo default: was it all worth it? 2007-05-21 13:45 [devel] q: current sudo default: was it all worth it? Michael Shigorin 2007-05-21 13:58 ` Slava Dubrovskiy @ 2007-05-21 14:20 ` Dmitry V. Levin 2007-05-21 17:39 ` [devel] sudo env_keep Dmitry V. Levin 1 sibling, 1 reply; 7+ messages in thread From: Dmitry V. Levin @ 2007-05-21 14:20 UTC (permalink / raw) To: ALT Devel discussion list [-- Attachment #1: Type: text/plain, Size: 2668 bytes --] Hi, On Mon, May 21, 2007 at 04:45:41PM +0300, Michael Shigorin wrote: > Ещё вопрос к Диме, набодавшись с sudo и в итоге откатив > с 1.6.8p12-alt2 на 1.6.7p5-alt6.1 в процессе выяснения > причины проблемы после dist-upgrade с сизифа примерно > двухмесячной давности на 4.0-branch: что даёт > > - Enabled env_reset, requiretty and tty_tickets options by default. requiretty в 1.6.8p12-alt2 снова работает так же как и в 1.6.7p5-alt6.1; Я предположил, что requiretty работает лучше чем мой патч, но очень быстро убедился, что это не так. > помимо уже обсуждавшегося облома с использованием sudo > и графических программ? Переход на env_reset, когда нужные переменные явно разрешены в sudoers, решает класс проблем вида CVE-2006-0151 CVE-2005-4158 CVE-2005-2959 CVE-2004-1051 > На сейчас поймали при таком раскладе (полукиоск): минимальный > десктоп от одного пользователя висит на :0.0, при этом есть > кнопка запуска браузера на :0.1 (отдельный монитор) от другого > пользователя. > > Помогло в сумме получасовое изучение sudoers(5) > и колупание с visudo(8), приведшее к: > > # Defaults specification > Defaults !env_reset > Defaults !requiretty > Defaults !tty_tickets Пожалуй, хватило бы Defaults env_keep += "DISPLAY" В FC так сделано по умолчанию, может и нам стоит это сделать. > Наверное, для сервера произведённые изменения теоретически > полезны, но вот на десктопе нас с таким дефолтным поведением > закидают тухлыми болванками и будут правы. Для меня закидывание не является аргументом. Если вам нужен контраргумент, то покажите пальцем на FC. > Настойчиво предлагаю такое: > > - добавить в закомментированном виде эти три строчки > в /etc/sudoers в пакете; !env_reset полезен только в одном случае: нужно запустить софтину "прямо сейчас", при этом security is not my problem. Во всех остальных случаях достаточно env_keep. !requiretty не нужен, поскольку это значение по умолчанию. Когда бывает нужен !tty_tickets, мне тоже не понятно. > - проверить соответствие пакетного состояния кода и /etc/sudoers > описанию в sudoers(5) -- сейчас в манпейдже off by default, на > деле же эти три опции включены (что документировано только в > rpm changelog); Там есть недоделка; исправление вносятся в исходный код документации, которая не воссоздаётся в нужном объёме. > - хорошо бы для десктопа этот дефолт сменить на вполне разумный, > каковой и положен апстримом. Некоторые считают, что для десктопа разумным является %wheel ALL = (root) NOPASSWD: ALL Что из этого следует? То, что представления о разумности порой сильно различаются. -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [devel] sudo env_keep 2007-05-21 14:20 ` Dmitry V. Levin @ 2007-05-21 17:39 ` Dmitry V. Levin 2007-05-21 21:16 ` [devel] q: current sudo default: was it all worth it? Michael Shigorin 0 siblings, 1 reply; 7+ messages in thread From: Dmitry V. Levin @ 2007-05-21 17:39 UTC (permalink / raw) To: ALT Devel discussion list [-- Attachment #1: Type: text/plain, Size: 1562 bytes --] On Mon, May 21, 2007 at 06:20:27PM +0400, Dmitry V. Levin wrote: > On Mon, May 21, 2007 at 04:45:41PM +0300, Michael Shigorin wrote: [...] > > На сейчас поймали при таком раскладе (полукиоск): минимальный > > десктоп от одного пользователя висит на :0.0, при этом есть > > кнопка запуска браузера на :0.1 (отдельный монитор) от другого > > пользователя. > > > > Помогло в сумме получасовое изучение sudoers(5) > > и колупание с visudo(8), приведшее к: > > > > # Defaults specification > > Defaults !env_reset > > Defaults !requiretty > > Defaults !tty_tickets > > Пожалуй, хватило бы > Defaults env_keep += "DISPLAY" > > В FC так сделано по умолчанию, может и нам стоит это сделать. К слову, их патч на sudoers (FC6+) sudo-1.6.8p12-env-reset.patch выглядит так: --- sudo-1.6.8p12/sudoers.env_reset 2006-02-08 16:58:15.000000000 +0100 +++ sudo-1.6.8p12/sudoers 2006-02-08 16:59:02.000000000 +0100 @@ -13,6 +13,14 @@ # Defaults specification +Defaults env_reset +Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR \ + LS_COLORS MAIL PS1 PS2 QTDIR USERNAME \ + LANG LC_ADDRESS LC_CTYPE LC_COLLATE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC \ + LC_PAPER LC_TELEPHONE LC_TIME LC_ALL LANGUAGE LINGUAS \ + _XKB_CHARSET" + # Runas alias specification # User privilege specification Мне кажется, что тут много лишнего... -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [devel] q: current sudo default: was it all worth it? 2007-05-21 17:39 ` [devel] sudo env_keep Dmitry V. Levin @ 2007-05-21 21:16 ` Michael Shigorin 2007-05-22 9:55 ` Dmitry V. Levin 0 siblings, 1 reply; 7+ messages in thread From: Michael Shigorin @ 2007-05-21 21:16 UTC (permalink / raw) To: ALT Devel discussion list [-- Attachment #1: Type: text/plain, Size: 5095 bytes --] On Mon, May 21, 2007 at 06:20:27PM +0400, Dmitry V. Levin wrote: > > помимо уже обсуждавшегося облома с использованием sudo > > и графических программ? > Переход на env_reset, когда нужные переменные явно разрешены в > sudoers, решает класс проблем вида > CVE-2006-0151 > CVE-2005-4158 > CVE-2005-2959 > CVE-2004-1051 Помню, но ведь получается явный tradeoff. Давайте в таких случаях интересоваться в devel@, кому не лень прикинуть use cases и нарисовать control file -- не всегда единоличное решение оказывается приемлемым для других применений. > > Помогло в сумме получасовое изучение sudoers(5) > > и колупание с visudo(8), приведшее к: > > # Defaults specification > > Defaults !env_reset > > Defaults !requiretty > > Defaults !tty_tickets > Пожалуй, хватило бы > Defaults env_keep += "DISPLAY" Возможно, попробую проверить. > В FC так сделано по умолчанию, может и нам стоит это сделать. А давай. > > Наверное, для сервера произведённые изменения теоретически > > полезны, но вот на десктопе нас с таким дефолтным поведением > > закидают тухлыми болванками и будут правы. > Для меня закидывание не является аргументом. Для меня -- является. Сложно писать анонсы того, что ты считаешь имеющим серьёзные недостатки из коробки, о которых хорошо если ведущий майнтейнер в разработческой рассылке постфактум расскажет. Соответственно непубличные дистрибутивы имеют свойство вытесняться всяким непотребством, про который однако же очень много шума. Можно попробовать объяснить более подробно, но мне почему-то кажется, что ты и так прекрасно понимаешь, о чём речь. > Если вам нужен контраргумент, то покажите пальцем на FC. Вот как раз FC для меня не аргумент, в отличие от той строчки самой по себе (если окажется достаточно). > > Настойчиво предлагаю такое: > > - добавить в закомментированном виде эти три строчки > > в /etc/sudoers в пакете; > !env_reset полезен только в одном случае: нужно запустить > софтину "прямо сейчас", при этом security is not my problem. > Во всех остальных случаях достаточно env_keep. > !requiretty не нужен, поскольку это значение по умолчанию. > Когда бывает нужен !tty_tickets, мне тоже не понятно. Спасибо; см. тж. ниже. > > - проверить соответствие пакетного состояния кода и /etc/sudoers > > описанию в sudoers(5) -- сейчас в манпейдже off by default, на > > деле же эти три опции включены (что документировано только в > > rpm changelog); > Там есть недоделка; исправление вносятся в исходный код > документации, которая не воссоздаётся в нужном объёме. Давай попробую сделать на результат хотя бы. > > - хорошо бы для десктопа этот дефолт сменить на вполне > > разумный, каковой и положен апстримом. > Некоторые считают, что для десктопа разумным является > %wheel ALL = (root) NOPASSWD: ALL > Что из этого следует? > То, что представления о разумности порой сильно различаются. Да, конечно. Так у нас на то есть control(8). On Mon, May 21, 2007 at 09:39:54PM +0400, Dmitry V. Levin wrote: > Мне кажется, что тут много лишнего... Аналогично. On Mon, May 21, 2007 at 04:58:39PM +0300, Slava Dubrovskiy wrote: > > # Defaults specification > > Defaults !env_reset > > Defaults !requiretty > > Defaults !tty_tickets > В kubuntu последнем две последние строчки присутствуют сразу по умолчанию. BTW я недостаточно внимательно прочитал manpage: env_reset If set, sudo will reset the environment to only contain the following variables: HOME, LOGNAME, PATH, SHELL, TERM, and USER (in addition to the SUDO_* variables). Of these, only TERM is copied unaltered from the old environment. The other variables are set to default values (possibly modi- fied by the value of the set_logname option). If sudo was compiled with the SECURE_PATH option, its value will be used for the PATH environment variable. Other variables may be preserved with the env_keep option. requiretty If set, sudo will only run when the user is logged in to a real tty. This will disallow things like "rsh somehost sudo ls" since rsh(1) does not allocate a tty. Because it is not possible to turn off echo when there is no tty present, some sites may with to set this flag to prevent a user from entering a visible password. This flag is *off* by default. tty_tickets If set, users must authenticate on a per-tty basis. Nor- mally, sudo uses a directory in the ticket dir with the same name as the user running it. With this flag enabled, sudo will use a file named for the tty the user is logged in on in that directory. This flag is *on* by default. -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ Linux.Kiev http://www.linux.kiev.ua/ [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [devel] q: current sudo default: was it all worth it? 2007-05-21 21:16 ` [devel] q: current sudo default: was it all worth it? Michael Shigorin @ 2007-05-22 9:55 ` Dmitry V. Levin 2007-05-22 10:01 ` Michael Shigorin 0 siblings, 1 reply; 7+ messages in thread From: Dmitry V. Levin @ 2007-05-22 9:55 UTC (permalink / raw) To: ALT Devel discussion list [-- Attachment #1: Type: text/plain, Size: 920 bytes --] Hi, On Tue, May 22, 2007 at 12:16:45AM +0300, Michael Shigorin wrote: > On Mon, May 21, 2007 at 06:20:27PM +0400, Dmitry V. Levin wrote: > > > помимо уже обсуждавшегося облома с использованием sudo > > > и графических программ? > > Переход на env_reset, когда нужные переменные явно разрешены в > > sudoers, решает класс проблем вида > > CVE-2006-0151 > > CVE-2005-4158 > > CVE-2005-2959 > > CVE-2004-1051 > > Помню, но ведь получается явный tradeoff. Давайте в таких > случаях интересоваться в devel@, кому не лень прикинуть use cases > и нарисовать control file -- не всегда единоличное решение > оказывается приемлемым для других применений. Если уж на то пошло, то env_reset включил upstream: http://git.altlinux.org/people/ldv/packages/?p=sudo.git;a=commitdiff;h=v1.6.8p12-30-gf8e1e2d $ sed -n '/Upgrading.*1\.7/,/Upgrading.*1\.6\.8/p' /usr/share/doc/sudo-1.6.8p12/UPGRADE -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [devel] q: current sudo default: was it all worth it? 2007-05-22 9:55 ` Dmitry V. Levin @ 2007-05-22 10:01 ` Michael Shigorin 0 siblings, 0 replies; 7+ messages in thread From: Michael Shigorin @ 2007-05-22 10:01 UTC (permalink / raw) To: ALT Devel discussion list On Tue, May 22, 2007 at 01:55:07PM +0400, Dmitry V. Levin wrote: > Если уж на то пошло, то env_reset включил upstream: Понял, спасибо. -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ Linux.Kiev http://www.linux.kiev.ua/ ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2007-05-22 10:01 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2007-05-21 13:45 [devel] q: current sudo default: was it all worth it? Michael Shigorin 2007-05-21 13:58 ` Slava Dubrovskiy 2007-05-21 14:20 ` Dmitry V. Levin 2007-05-21 17:39 ` [devel] sudo env_keep Dmitry V. Levin 2007-05-21 21:16 ` [devel] q: current sudo default: was it all worth it? Michael Shigorin 2007-05-22 9:55 ` Dmitry V. Levin 2007-05-22 10:01 ` Michael Shigorin
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git