Re: Limited/Broken functionality of ASLR for Libs >= 2MB

Kees Cook
2024-01-23T22:35:19Z

On Tue, Jan 16, 2024 at 09:09:45AM +0100, Ard Biesheuvel wrote:
> (cc Kees, LAKML)
>
> https://lkml.kernel.org/r/69fa6015256613ed10aee996e181ebd4%40horotw.com
>
> On Mon, 15 Jan 2024 at 21:46, Matthew Wilcox <willy@infradead.org> wrote:
> >
> ...
> > Yeah, I don't know either. Outside my scope of expertise.
> >
> > I received a suggestion off-list that we only do the PMD alignment on
> > 64-bit, which seems quite reasonable to me. After all, I don't care
> > about performance on 32-bit just as much as I don't care about security
> > on 32-bit.
> >
>
> For context, the culprit is
>
> commit 1854bc6e2420472676c5c90d3d6b15f6cd640e40
> Author: William Kucharski <william.kucharski@oracle.com>
> Date: Sun Sep 22 08:43:15 2019 -0400
>
> mm/readahead: Align file mappings for non-DAX
>
> When we have the opportunity to use PMDs to map a file, we want to follow
> the same rules as DAX.
>
> Signed-off-by: William Kucharski <william.kucharski@oracle.com>
> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
>
> which affects *all* 32-bit architectures not just i686. 32-bit ARM
> user space is still being deployed widely, even on arm64 Chromebooks
> running 64-bit kernels (at least up until recently) so unfortunately,
> we're not quite at the point yet where we can just let it rot.

Is this related at all to this thread as well?
https://lore.kernel.org/lkml/20220809142457.4751229f@imladris.surriel.com/

Can we avoid this on 32-bit or at least not mislead userspace about the
available entropy visible in /proc/sys/vm/mmap_rnd*_bits ?

-Kees

--
Kees Cook