Ich verwende Knoppix (oder andere Live-CDs / DVDs) als sichere Umgebung für die Erstellung wertvoller Kryptoschlüssel. Leider ist die Entropie in solchen Umgebungen eine begrenzte Ressource. Mir ist gerade aufgefallen, dass jeder Programmstart einiges an Entropie kostet. Dies scheint auf eine Stack-Schutzfunktion zurückzuführen zu sein, die eine Adress-Randomisierung erfordert.
Nettes Feature, aber völlig nutzlos und - schlimmer noch - destruktiv in meinem Szenario. Gibt es eine Möglichkeit, diese Funktion zu deaktivieren? Ich würde eines vorziehen, mit dem ich weiterhin das ursprüngliche Knoppix-Image (oder was auch immer) verwenden und zur Laufzeit nur eine Konfiguration benötigen kann.
Ich habe gelesen, dass dies durch glibc verursacht wurde. Ich bin überrascht, dass ein strace -p $PID -f -e trace=open
gegen Bash keine Zugriffe auf / dev / random anzeigt, wenn ich Programme starte. Aber ich bin nicht vertraut mit der Interaktion von execve () und dem Linker.
get_random_int
.get_random_int
hat sich mehrmals geändert, aber ich sehe nicht, dass es die Entropie erschöpft . Auf welcher Kernel-Version ist Ihnen das aufgefallen? Welche Architektur? Wird der Kernel mit kompiliertCONFIG_ARCH_RANDOM
?/dev/random
ist fehl am Platz . Wenn genügend Entropie im System vorhanden ist,/dev/urandom
ist dies für die Schlüsselerzeugung in Ordnung und verbraucht keine Entropie.Antworten:
Wenn dies in der Tat auf eine zufällige Adressierung zurückzuführen ist (ASLR hat damit zu tun, wo das Programm geladen wird, siehe hier: http://en.wikipedia.org/wiki/Address_space_layout_randomization ), können Sie es deaktivieren, indem Sie es
norandmaps
an den Kernel im Boot übergeben Optionen (siehe hier: http://www.linuxtopia.org/online_books/linux_kernel/kernel_configuration/re30.html ).quelle