Description
It was found that Ruby did not reinitialize the PRNG (pseudorandom number
generator) after forking a child process. This could eventually lead to the
PRNG returning the same result twice. An attacker keeping track of the
values returned by one child process could use this flaw to predict the
values the PRNG would return in other child processes (as long as the
parent process persisted). (CVE-2011-3009)
A flaw was found in the Ruby SecureRandom module. When using the
SecureRandom.random_bytes class, the PRNG state was not modified after
forking a child process. This could eventually lead to
SecureRandom.random_bytes returning the same string more than once. An
attacker keeping track of the strings returned by one child process could
use this flaw to predict the strings SecureRandom.random_bytes would return
in other child processes (as long as the parent process persisted).
(CVE-2011-2705)