Received: by 2002:a05:7412:5112:b0:fa:6e18:a558 with SMTP id fm18csp804681rdb; Tue, 23 Jan 2024 16:09:59 -0800 (PST) X-Google-Smtp-Source: AGHT+IHQ6ehIMmOTIAsAAIv/eGbdbDgTfEdoFk8rdA06MDx4HSovLVwEWB2ya3BcHbh2x0mzHD1a X-Received: by 2002:a05:6a20:e14:b0:19b:fc83:56f0 with SMTP id ej20-20020a056a200e1400b0019bfc8356f0mr18351pzb.51.1706054999690; Tue, 23 Jan 2024 16:09:59 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1706054999; cv=pass; d=google.com; s=arc-20160816; b=caF59XvWmPTeLp9W5Y2BMcacs1WdA6ldBQcM30k27UCQYq617qlOAvOiDcAw9jaao2 a8/PE7T+gLdv3X5MbWTU1XTx6j3VVUsXzx5KGZHp8+EBSyoSeXVX9+e2XCf3OxLCC8Dt WN397DKjHwnSGSPIX9DreMdvhA8kqhnABH28Lj070ncE6WabKmMkHJXgQ3+9WFYczVAG T/a4Q31AU2tp6rv3tMuXpMyY8lKTHIQUBPyjMAxuVG5Vy/QjtlRJiU7/TlMA28Z+FztO iuvLx29sfEe7y1WJLKLYPiHbS762vWkKuwIYPVRuCbhrFKOM38JzlYhDMDbB2YyhNtYz z4OA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date:dkim-signature; bh=fi/zj5voHDPYKB6Z7ghbg+VPHgNO2bSCRicH9ZX7KmE=; fh=xQsIA5/RWwb2eqvp+41AbWnRa01UTxIB8ED45Os4I5I=; b=RZZauQ/SmTYOCGxYtHnvZLpDvJmDNBhLqe0nTHULzyDDhkebosnI7u9/JC8Z89ajQP ZuBQBoAGqozqEJXovW8CzF1sWaErHUZENNtwkvo3JAsnKD7kVm4jJuDXei9KXeD5i/TH 671gKZqNutcdhYfrG+b4TaCtouZ1DYScg0XihS/1HIBrlfptTZCHoI80p5GmowKDdVma HlbdEbF7xJnV6ZC7urB65i9UWaVoioQyCt9vTB3Wqfx1kJ4YBfL79irjRSwB2SlrByrq X7D5tRyabZiOJALS2QlijKcc+l/5qa+rt71beEJ/IM/zdIzceRvPZw6/o1HwK1b2Hs3X TsHA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=eJmZ88BT; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-kernel+bounces-36206-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-36206-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id ld22-20020a056a004f9600b006dd1ce461f7si2142922pfb.156.2024.01.23.16.09.59 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Jan 2024 16:09:59 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-36206-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=eJmZ88BT; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-kernel+bounces-36206-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-36206-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 725FE283E34 for ; Wed, 24 Jan 2024 00:09:27 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 278F4ED8; Wed, 24 Jan 2024 00:09:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="eJmZ88BT" Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F0B6AEC5 for ; Wed, 24 Jan 2024 00:09:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706054955; cv=none; b=jrzEwBQ29vqjH3tVx7xCp7j6BAuzeiskkIlsjyOdtrwG4lfpQpPrEDJ/YeFI0WaT5+mG2TrGQ/5RqZpQVNjyTXDzeK7Ic5odBgur6hNBWK6wIZfSDXWpjGKqGCQQq00EljF0sUBbVcnRQmwqR7kbCBKODnrDITHKyFeQFvX9Xj4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706054955; c=relaxed/simple; bh=JUZ8e8sDxBYjrwvOx1r1mk2i3gdTETSMbfB/THjmzhk=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=Bxs/+0Ls0qM2gj8vOacmJM8DgQRC6xTSWCC20nWBHSszMmBjcSRhpw7hETz2WOqqxdwqoG58BBBQ7FoZRJfgKg/dFT9h0CMSoWHcki2fqAQs+4sWjiVwBbZhvcsNBjO9hNwOo1tFDtQbzn0eYFS0/rVZkUTaMzjxC+7SHC+sHd0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=eJmZ88BT; arc=none smtp.client-ip=209.85.210.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-6d9b13fe9e9so3983516b3a.2 for ; Tue, 23 Jan 2024 16:09:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1706054953; x=1706659753; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=fi/zj5voHDPYKB6Z7ghbg+VPHgNO2bSCRicH9ZX7KmE=; b=eJmZ88BTtH/btdvJOfUcfeKA+WPdJIGPN4SvCnSXe941tLk7Hq58c76rGyjn5IgIQE C5EnI96TD6twb3v6PFGBvhBBaLC7lPA3bFd/9En9lv+3SmHi8GOg9B7iLbaroXfYKx+w QHrYC4slkfd4k3Hrzc0FaErgt2rc9wuZREfXQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706054953; x=1706659753; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=fi/zj5voHDPYKB6Z7ghbg+VPHgNO2bSCRicH9ZX7KmE=; b=RpfQi9S1LGhmmE2y1AUx9oOS7eSoGh5DYcW8JCqHSECwQdt/zctcKiuxZ+AwygpUSV 00pPAnHY+qPYNJZXutXv9QJ/2mHF/q9ty8ZyJ7lSE522ybGCF9Lf4D8v8+PKB0ETEPAK 22cl4Mxq4Ktc6lb/R1SfRnWx8SMP1z5Vp0S6g+ZqL9ah/YtDm4y05LLMXIYsXTu76/xk YwTlAz8DtGFvPtA2n5lNi4KhdURl4E5i5CmIlItoH7487qZHrbBTwgSMeF7tmvUITKfy usIXhZV/MY5i0Tvq1kv5SUQDOPXBB0oLZlRVGkaHUJMAy+B3Tg0RQXhto71EIcidqdN8 9jGw== X-Gm-Message-State: AOJu0Yw6DnhzEepD6/aC5j3G6FXsTsZM7gyOZUjLL4LpfwO2ojyWoqCq a8mD6Y6Jz+3o8Rsj4KebOlq5FgVERNATDWKN94RDogx4Nyu9cgd76JAIibUylA== X-Received: by 2002:a05:6a00:138b:b0:6dd:8891:81ef with SMTP id t11-20020a056a00138b00b006dd889181efmr407925pfg.43.1706054953404; Tue, 23 Jan 2024 16:09:13 -0800 (PST) Received: from www.outflux.net ([198.0.35.241]) by smtp.gmail.com with ESMTPSA id r22-20020aa78456000000b006dd7f7b880bsm1841242pfn.133.2024.01.23.16.09.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Jan 2024 16:09:12 -0800 (PST) Date: Tue, 23 Jan 2024 16:09:12 -0800 From: Kees Cook To: Bernd Edlinger Cc: Oleg Nesterov , Alexander Viro , Alexey Dobriyan , Andy Lutomirski , Will Drewry , Christian Brauner , Andrew Morton , Michal Hocko , Serge Hallyn , James Morris , Randy Dunlap , Suren Baghdasaryan , Yafang Shao , Helge Deller , "Eric W. Biederman" , Adrian Reber , Thomas Gleixner , Jens Axboe , Alexei Starovoitov , "linux-fsdevel@vger.kernel.org" , "linux-kernel@vger.kernel.org" , linux-kselftest@vger.kernel.org, linux-mm@kvack.org, tiozhang , Luis Chamberlain , "Paulo Alcantara (SUSE)" , Sergey Senozhatsky , Frederic Weisbecker , YueHaibing , Paul Moore , Aleksa Sarai , Stefan Roesch , Chao Yu , xu xin , Jeff Layton , Jan Kara , David Hildenbrand , Dave Chinner , Shuah Khan , Zheng Yejian , Elena Reshetova , David Windsor , Mateusz Guzik , Ard Biesheuvel , "Joel Fernandes (Google)" , "Matthew Wilcox (Oracle)" , Hans Liljestrand Subject: Re: [PATCH v14] exec: Fix dead-lock in de_thread with ptrace_attach Message-ID: <202401231555.59B7EDBB2@keescook> References: <20240116152210.GA12342@redhat.com> <20240117163739.GA32526@redhat.com> <202401221328.5E7A82C32@keescook> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Tue, Jan 23, 2024 at 07:30:52PM +0100, Bernd Edlinger wrote: > - Currently a non-privileged program can potentially send such a privileged > tracer into a deadlock. > - With the alternative patch below that non-privileged can no longer send the > tracer into a deadlock, but it can still quickly escape out of the tracer's > control. > - But with my latest patch a sufficiently privileged tracer can neither be > sent into a deadlock nor can the attached process escape. Mission completed. Thanks for the details. And it would be pretty unfriendly to fail the execve() too (or, rather, it makes the execve failure unpredictable). I'll keep reading your patch... -- Kees Cook