From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.1 Message-ID: <8ad4b4ba-bc26-608e-363b-dddd6cea44c5@altlinux.org> Date: Thu, 13 Jan 2022 10:23:00 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.4.1 Content-Language: ru To: devel@lists.altlinux.org References: <20220112171010.GB11057@altlinux.org> <17e50463f00.2807.7fa2a2f3bb6a924ec61a71903b1e5144@gmail.com> <17e520c9b68.2807.7fa2a2f3bb6a924ec61a71903b1e5144@gmail.com> From: Aleksei Nikiforov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [devel] =?utf-8?b?UTog0L/QvtGA0LAg0YDQsNC30YDQtdGI0LDRgtGMIHBy?= =?utf-8?b?aXZpbGVnZWQgZXhlY3V0YWJsZXMg0Y/QstC90L4g0L3QsCDRg9GA0L7QstC9?= =?utf-8?b?0LUg0LTQuNGB0YLRgNC40LHRg9GC0LjQstC+0LI/?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jan 2022 07:23:09 -0000 Archived-At: List-Archive: List-Post: 13.01.2022 09:48, Vladimir D. Seleznev пишет: > On Thu, Jan 13, 2022 at 09:07:45AM +0300, Sergei Epiphanov wrote: >> >> >> Gleb Fotengauer-Malinovskiy 13 января 2022 г. >> 01:18:29 написал: >> >>> Hi, >>> >>> On Thu, Jan 13, 2022 at 12:51:28AM +0300, Sergei Epiphanov wrote: >>>> >>>> "Dmitry V. Levin" 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 снимать. Также можно при этом проверять что этот файл из определённого пакета, а в пакетном менеджере включать/выключать эту фичу. Такой список будет более гибким чем в сборочнице, а в сравнении с ядром - зависит от реализаций. С уважением, Алексей Никифоров