Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1462169
| From | Pavel Machek <pavel@ucw.cz> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH] [RFC] Introduce mmap randomization |
| Date | 2016-08-14 18:30 +0200 |
| Message-ID | <s66sp-1Uu-17@gated-at.bofh.it> (permalink) |
| References | <rZfh8-5uR-9@gated-at.bofh.it> <rZfh8-5uR-19@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Tue 2016-07-26 11:22:26, william.c.roberts@intel.com wrote: > From: William Roberts <william.c.roberts@intel.com> > > This patch introduces the ability randomize mmap locations where the > address is not requested, for instance when ld is allocating pages for > shared libraries. It chooses to randomize based on the current > personality for ASLR. > > Currently, allocations are done sequentially within unmapped address > space gaps. This may happen top down or bottom up depending on scheme. > > For instance these mmap calls produce contiguous mappings: > int size = getpagesize(); > mmap(NULL, size, flags, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40026000 > mmap(NULL, size, flags, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40027000 > > Note no gap between. > > After patches: > int size = getpagesize(); > mmap(NULL, size, flags, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400b4000 > mmap(NULL, size, flags, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40055000 > > Note gap between. Ok, I guess you can do it... but... what will be the effect on available address space for a process? By doing this, won't you fragment it horribly? This might be nasty on 32-bit systems... Best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
Re: [PATCH] [RFC] Introduce mmap randomization Pavel Machek <pavel@ucw.cz> - 2016-08-14 18:30 +0200
csiph-web