From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 16 13:05:59 2019 Received: (at 37744) by debbugs.gnu.org; 16 Oct 2019 17:06:00 +0000 Received: from localhost ([127.0.0.1]:46461 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iKmkJ-0005dt-Cb for submit@debbugs.gnu.org; Wed, 16 Oct 2019 13:05:59 -0400 Received: from eggs.gnu.org ([209.51.188.92]:60838) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iKmkH-0005de-Tl for 37744@debbugs.gnu.org; Wed, 16 Oct 2019 13:05:58 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:46924) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iKmk9-0002RE-Ot; Wed, 16 Oct 2019 13:05:49 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=58362 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iKmk6-0004YM-Hl; Wed, 16 Oct 2019 13:05:47 -0400 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Tobias Geerinckx-Rice Subject: Re: bug#37744: Per-user profile directory hijack (CVE-2019-17365 for Nix) References: <87o8yjsr8o.fsf@gnu.org> <87blujsqq0.fsf@gnu.org> <87y2xno85o.fsf@nckx> <87d0eyuqzd.fsf@gnu.org> <87mue2nkrj.fsf@nckx> <8736fttby6.fsf@gnu.org> <87tv89rnva.fsf@gnu.org> <878spksty3.fsf@gnu.org> <20191016142221.qys2y2cb4spmwscq@pelzflorian.localdomain> <87ftjsoh40.fsf@nckx> <20191016151922.5fanqbt6kiv4offx@pelzflorian.localdomain> <87eezcogtf.fsf@nckx> Date: Wed, 16 Oct 2019 19:05:44 +0200 In-Reply-To: <87eezcogtf.fsf@nckx> (Tobias Geerinckx-Rice's message of "Wed, 16 Oct 2019 17:23:08 +0200") Message-ID: <87ftjsk4d3.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 37744 Cc: 37744@debbugs.gnu.org, guix-i18n@gnu.org, "pelzflorian \(Florian Pelz\)" , guix-security@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi! Thanks for your feedback Tobias, Florian, and Julien! Taking that into account, I propose this (I=E2=80=99ve also changed the tit= le to make it hopefully clearer): --8<---------------cut here---------------start------------->8--- (entry (commit "FIXME") (title (en "Insecure @file{/var/guix/profiles/per-user} permissions= ")) (body (en "The default user profile, @file{~/.guix-profile}, points to @file{/var/guix/profiles/per-user/$USER}. Until now, @file{/var/guix/profiles/per-user} was world-writable, allowing the @command{guix} command to create the @code{$USER} sub-directory. On a multi-user system, this allowed a malicious user to create and populate that @code{$USER} sub-directory for another user that had not yet logged in. Since @code{/var/@dots{}/$USER} is in @code{$PATH}, the target user could e= nd up running attacker-provided code. See @uref{https://issues.guix.gnu.org/issue/37744} for more information. This is now fixed by letting @command{guix-daemon} create these directories= on behalf of users and removing the world-writable permissions on @code{per-user}. On multi-user systems, we recommend updating the daemon n= ow. To do that, run @code{sudo guix pull} if you're on a foreign distro, or run @code{guix pull && sudo guix system reconfigure @dots{}} on Guix System. In both cases, make sure to restart the service afterwards, with @code{herd} or @code{systemctl}."))) --8<---------------cut here---------------end--------------->8--- If this is fine with you, I hereby request translation of this entry. :-) I=E2=80=99ll commit the change within a few hours if there are no objection= s. Ludo=E2=80=99.