From: Aleksei Nikiforov <darktemplar@altlinux.org>
To: devel@lists.altlinux.org
Subject: Re: [devel] Q: пора разрешать privileged executables явно на уровне дистрибутивов?
Date: Thu, 13 Jan 2022 10:23:00 +0300
Message-ID: <8ad4b4ba-bc26-608e-363b-dddd6cea44c5@altlinux.org> (raw)
In-Reply-To: <Yd/LUACxAZZvBI2/@portlab>
13.01.2022 09:48, Vladimir D. Seleznev пишет:
> On Thu, Jan 13, 2022 at 09:07:45AM +0300, Sergei Epiphanov wrote:
>>
>>
>> Gleb Fotengauer-Malinovskiy <glebfm@altlinux.org> 13 января 2022 г.
>> 01:18:29 написал:
>>
>>> Hi,
>>>
>>> On Thu, Jan 13, 2022 at 12:51:28AM +0300, Sergei Epiphanov wrote:
>>>>
>>>> "Dmitry V. Levin" <ldv@altlinux.org> 12 января 2022 г. 20:10:13 написал:
>>>>
>>>>> On Wed, Jan 12, 2022 at 04:34:06AM +0000, QA Team Robot wrote:
>>>>>> 2 NEW bugs
>>>>> [...]
>>>>>> #41695 libgtop normal ---
>>>>>> Содержит suid-бинарник
>>>>>
>>>>> Я думаю, есть смысл, чтобы ядро за этим следило.
>>>>> Загружаешь ему список разрешённых privileged executables,
>>>>> все остальные запрещены.
>>>>
>>>> Мне это не очень нравится.
>>>> Во-первых, suid можно заменить на запуск через sudo или su.
>>>
>>> И это всяко лучше, чем использование непроверенных suid-ных программ, а
>>> задача состоит именно в ограничении вреда от них.
>>
>> Здесь как раз и проблема. Пример я уже привёл. Приходится ставить на
>> команду выполнение sudo без пароля, что позволяет пользователю самому
>> рулить программой через sudo.
>
> Так идея не в том, чтобы не позволять пользователю рулить системой
> (совсем даже наоборот).
>
> Если вы ставите команду на выполнение через sudo без пароля, вы это
> делаете явно, и явно запускаете команду.
>
> Проблема же произвольных suid-бинарников в том, что при правах доступа
> не строже 4xx1 (*) любой пользователь может её запустить (в т.ч.
> злонамеренный или скомпрометированный), тем самым повысив себе
> привилегии. И даже если процесс сэндбоксится, сбрасывает привилегии,
> всё-равно есть возможность пытаться сколь угодно долго (*) выполнить
> произвольный код в привилегированном окружении до наступления успеха,
> при этом эксплуатируемая ошибка не обязательно должна быть при этом
> именно в запускаемом суидном бинарнике.
>
> Но в любом случае решение, как управлять системой остаётся за
> пользователем в зависимости от его модели угроз.
>
> * В одном проекте была реализована функциональность, запрещающая на
> некоторое время запускать suid-ные команды пользователю, у которого
> анормально завершил работу setuid'ный процесс.
>
> P.S. Re: sudo: why not?
> https://www.openwall.com/lists/owl-users/2004/10/20/6
>
Здравствуйте.
Могу ещё предложить whitelist на уровне пакетного менеджера. При
установке или обновлении пакета, если в нём есть suid/sgid файлы,
сравнивать их с разрешённым списком в пакетном менеджере, и если этот
файл в списке отсутствует, то suid/sgid снимать. Также можно при этом
проверять что этот файл из определённого пакета, а в пакетном менеджере
включать/выключать эту фичу. Такой список будет более гибким чем в
сборочнице, а в сравнении с ядром - зависит от реализаций.
С уважением,
Алексей Никифоров
next prev parent reply other threads:[~2022-01-13 7:23 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-12 17:10 ` Dmitry V. Levin
2022-01-12 18:00 ` Vladimir D. Seleznev
2022-01-12 18:04 ` Vladimir D. Seleznev
2022-01-12 18:07 ` Dmitry V. Levin
2022-01-12 18:23 ` Vladimir D. Seleznev
2022-01-12 23:12 ` Dmitry V. Levin
2022-01-13 5:45 ` Vladimir D. Seleznev
2022-01-12 18:52 ` Alexey V. Vissarionov
2022-01-30 20:47 ` Michael Shigorin
2022-01-12 22:17 ` Gleb Fotengauer-Malinovskiy
2022-01-13 6:48 ` Vladimir D. Seleznev
2022-01-13 7:23 ` Aleksei Nikiforov [this message]
2022-01-13 7:25 ` Anton Farygin
2022-01-13 7:29 ` Vladimir D. Seleznev
2022-01-13 7:45 ` Anton Farygin
2022-01-13 8:17 ` Anton V. Boyarshinov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8ad4b4ba-bc26-608e-363b-dddd6cea44c5@altlinux.org \
--to=darktemplar@altlinux.org \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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