arc4random weakness

Dag-Erling Smørgrav
Thu, 16 Mar 2017 12:48:45 -0000

Andrey Chernov <ache at freebsd.org> writes:
> Steven Chamberlain <steven at pyro.eu.org> writes:
> > Also it is great to see INHERIT_ZERO was added to mmap(2)!
> It is not so great. For a program which forks very often zeroing even
> one page will be slowdown.

Wouldn't it be possible to just set up the page entry but leave it
unmapped, so that it is paged in (and zeroed if necessary) on first
access?  Thus, a process that uses arc4random() and fork()s would not
incur a penalty until (and unless) the child uses arc4random() too.

> It will be better and faster to implement it as fork syscall wrapper
> setting single variable, as it already done for threaded lib.

fork() and vfork() and pdfork() and...  From a security point of view, I
prefer to have it in a single place.

DES
--
Dag-Erling Sm?rgrav - des at des.no