From: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org>
To: Szabolcs Nagy <szabolcs.nagy@arm.com>,
Siddhesh Poyarekar <siddhesh@sourceware.org>,
libc-alpha@sourceware.org
Cc: fweimer@redhat.com, carlos@redhat.com
Subject: Re: [PATCH 2/2] aarch64: Make glibc.mem.tagging SXID_ERASE
Date: Wed, 4 Oct 2023 14:01:42 -0300 [thread overview]
Message-ID: <cd20d11d-00ff-4f67-aee3-4df1f78ec669@linaro.org> (raw)
In-Reply-To: <ZR1717lyxyaDMeEG@arm.com>
On 04/10/23 11:51, Szabolcs Nagy wrote:
> The 10/04/2023 10:23, Siddhesh Poyarekar wrote:
>> The actual problem I'm trying to solve is to get rid of SXID_IGNORE and
>> SXID_NONE and the first step is to drop users of those levels. Supporting
>> those levels requires additional processing in __libc_enable_secure, which
>> is a source of bugs like CVE-2023-4911. I'm not convinced that we really
>> *need* to have tunables go across sxid boundaries, so I want to flip the
>> question around: do you think it is *necessary* for memory tagging tunables
>> to percolate sxid boundaries? If not, then they should stay at SXID_ERASE.
>
> ...
>
>> The end goal here is to drop everything but SXID_ERASE so that we don't have
>> to do string twiddling under __libc_enable_secure.
>>
>> The other alternative to achieve the same effect (i.e. not twiddle strings
>> in __libc_enable_secure) could be to make *everything* SXID_IGNORE, which
>> would then leave GLIBC_TUNABLES untouched for non-setuid children to do what
>> they please with it.
>
> personally i think setuid binaries should not touch the
> env, just ignore it, so everything SXID_IGNORE.
Do you mean just drop unsecvars and not filter out glibc environment variables
for AT_SECURE?
>
> it's not just the string twiddling but tunables_strdup
> is a problem too (it can fail, needs early alloc,..).
> ideally tunables_init would be a nop with AT_SECURE and
> otherwise parsed the env var without malloc and touching
> the env[] array passed by the kernel.
I complete agree, tunables_strdup was a source of headache due its allocation
requirement and, now, for parsing tunables.
next prev parent reply other threads:[~2023-10-04 17:01 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-03 20:11 [PATCH 0/2] make all tunables SXID_ERASE Siddhesh Poyarekar
2023-10-03 20:11 ` [PATCH 1/2] Make all malloc " Siddhesh Poyarekar
2023-10-03 20:11 ` [PATCH 2/2] aarch64: Make glibc.mem.tagging SXID_ERASE Siddhesh Poyarekar
2023-10-04 7:29 ` Szabolcs Nagy
2023-10-04 11:59 ` Siddhesh Poyarekar
2023-10-04 14:04 ` Szabolcs Nagy
2023-10-04 14:23 ` Siddhesh Poyarekar
2023-10-04 14:51 ` Szabolcs Nagy
2023-10-04 14:53 ` Siddhesh Poyarekar
2023-10-04 15:05 ` Siddhesh Poyarekar
2023-10-04 17:01 ` Adhemerval Zanella Netto [this message]
2023-10-05 8:19 ` Szabolcs Nagy
2023-10-05 12:55 ` Siddhesh Poyarekar
2023-10-05 13:59 ` Szabolcs Nagy
2023-10-05 14:05 ` Siddhesh Poyarekar
2023-10-05 18:31 ` Zack Weinberg
2023-10-05 19:11 ` Siddhesh Poyarekar
2023-10-06 12:25 ` Zack Weinberg
2023-10-06 12:41 ` Siddhesh Poyarekar
2023-10-06 17:10 ` Adhemerval Zanella Netto
2023-10-06 18:04 ` Siddhesh Poyarekar
2023-10-08 19:51 ` Michael Hudson-Doyle
2023-10-31 19:58 ` Zack Weinberg
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=cd20d11d-00ff-4f67-aee3-4df1f78ec669@linaro.org \
--to=adhemerval.zanella@linaro.org \
--cc=carlos@redhat.com \
--cc=fweimer@redhat.com \
--cc=libc-alpha@sourceware.org \
--cc=siddhesh@sourceware.org \
--cc=szabolcs.nagy@arm.com \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).