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

Yang Shi
2024-01-24T01:04:38Z

On Tue, Jan 23, 2024 at 2:37 PM Kees Cook <keescook@chromium.org> wrote:
>
> 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/

Yes

>
> 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 ?

https://lore.kernel.org/linux-mm/20240118133504.2910955-1-shy828301@gmail.com/

This patch basically made thp_get_unmapped_area no-op on 32 bit.

>
> -Kees
>
> --
> Kees Cook
>