Ab heute wird bei gpg2
jeder Verwendung (über Homebrew installiert) auf meinem Mac (10.12.1) die folgende Warnung angezeigt:
Warning: using insecure memory!
Ich sehe dasselbe Verhalten auf zwei verschiedenen Rechnern: einem Mac mini (Ende 2012) und einem MacBook Pro (Ende 2012), die beide 10.12.1 ausführen.
Wie die GnuPG FAQ sagt:
GnuPG versucht, den Speicher zu sperren, damit kein anderer Prozess ihn sehen kann und der Speicher nicht zum Auslagern geschrieben wird. Wenn dies aus irgendeinem Grund nicht möglich ist (zum Beispiel unterstützen bestimmte Plattformen diese Art der Speichersperrung nicht), warnt GnuPG Sie, dass unsicherer Speicher verwendet wird.
Während es fast immer besser ist, sicheren Speicher zu verwenden, ist es nicht unbedingt eine schlechte Sache, unsicheren Speicher zu verwenden. Wenn Ihnen der Computer gehört und Sie sicher sind, dass er keine Malware enthält, kann diese Warnung möglicherweise ignoriert werden.
Was mich verwundert, ist, dass gpg2
sich seit dem 12. September 2016 nichts geändert hat . Ich habe seitdem mehr oder weniger Version 2.0.30 installiert, aber diese Warnung über unsicheren Speicher wird heute erst angezeigt. Auch wenn sich die gpg2
Formel seit dem 12. September 2016 nicht geändert hat, kann ich mit Sicherheit sagen, dass ich vor dem Einsetzen dieser Warnung auf beiden Computern Folgendes getan habe: a brew update && brew upgrade
. Aber ich bin mir nicht mal sicher, wie sich das auswirken könnte. Wenn man bedenkt, was in den GnuPG-FAQ steht, scheint dies mehr mit dem Betriebssystem und der Speichersperrung zu tun zu haben.
... Und was noch seltsamer ist, ist, dass ich gpg1
Homebrew (Version 1.4.21) installiert habe, das nicht vor unsicherem Speicher warnt, wenn ich es verwende:
$ gpg1 --require-secmem
gpg: Go ahead and type your message ...
^C
gpg: Interrupt caught ... exiting
$ gpg2 --require-secmem
Warning: using insecure memory!
gpg: will not run with insecure memory due to --require-secmem
Beide Binärdateien gehören demselben Besitzer und derselben Gruppe und haben dieselben Berechtigungen:
-r-xr-xr-x 1 adamliter admin 681932 Dec 10 18:06 /usr/local/Cellar/gnupg2/2.0.30_2/bin/gpg2
-r-xr-xr-x 1 adamliter admin 929352 Aug 17 09:21 /usr/local/Cellar/gnupg/1.4.21/bin/gpg1
Ich habe gerade versucht, gpg2
mit Homebrew neu zu installieren : sowohl mit Hilfe der vorkompilierten Binärdatei als auch durch Erstellen der Formularquelle, aber das ändert nichts. Ich bekomme immer noch die Warnung über die Verwendung von unsicherem Speicher.
Darüber hinaus, auch die gpg2 binär zu machen hat die setuid root Bit umgedreht (wie vorgeschlagen, zum Beispiel , hier ) die Nachricht nicht verschwinden lassen; Es wird weiterhin vor unsicherem Speicher gewarnt.
Weiß jemand, was sich hätte ändern können, so dass ich diese Warnung heute plötzlich sehe? Und warum sollte ich es sehen, wenn ich die gpg2
Binärdatei verwende, aber nicht die gpg1
Binärdatei?
Andere möglicherweise relevante Informationen:
$ which gpg1
/usr/local/bin/gpg1
$ ls -al /usr/local/bin/gpg1
lrwxr-xr-x 1 adamliter admin 31 Aug 17 17:42 /usr/local/bin/gpg1 -> ../Cellar/gnupg/1.4.21/bin/gpg1
$ which gpg2
/usr/local/bin/gpg2
$ ls -al /usr/local/bin/gpg2
lrwxr-xr-x 1 adamliter admin 34 Dec 10 18:06 /usr/local/bin/gpg2 -> ../Cellar/gnupg2/2.0.30_2/bin/gpg2
Aktualisieren
Ich denke, der Grund dafür liegt in der neuen Version von libgcrypt
. Ich weiß immer noch nicht, warum es passiert, aber ich bin mir ziemlich sicher, dass dies zumindest die Ursache des Problems ist. Die Formel für libgcrypt
wurde heute für die 1.7.4-Erhebung aktualisiert . dies würde erklären, warum ich dies nach einem auf zwei verschiedenen Computern sehe brew update && brew upgrade
. Es würde auch erklären, warum dies nicht der Fall ist gpg1
, da gpg1
keine externe libgcrypt
kryptografische Bibliothek verwendet wurde, sondern eine eigene integrierte kryptografische Bibliothek verwendet wurde.
Darüber hinaus habe ich auch die gpg2
MacGPG Suite installiert, die dieses Problem nicht aufweist und mit einer anderen Version von verknüpft ist libgcrypt
:
$ /usr/local/MacGPG2/bin/gpg2 --version
gpg (GnuPG/MacGPG2) 2.0.30
libgcrypt 1.6.6
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
$ gpg2 --version
gpg (GnuPG) 2.0.30
libgcrypt 1.7.4
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Daher schätze ich, dass dies wahrscheinlich ein Fehlerbericht für die Betreuer von ist libgcrypt
. Ich werde auf ihre Mailing-Liste schreiben, aber ich werde dies vorerst hier belassen, falls jemand anderes auf dasselbe Problem stößt und / oder falls jemand anderes weiß, warum genau dies geschieht. Wenn ich nach dem Senden einer Nachricht an die Mailingliste eine Bestätigung erhalte, dass dies ein Fehler ist, stimme ich ab, um diese Frage zu schließen.
gpg1
und nicht erklären gpg2
, und (ii) ich habe den Speicher auf meinem Computer überwacht, als ich dies getestet habe, und es gibt viel ungenutzten Speicher wenn ich die warnmeldung sehe. Ich glaube, ich habe die Wurzel des Problems lokalisiert, bin mir aber immer noch nicht sicher, warum es passiert. Aktualisiert die Frage in einer Sekunde.