Warum benötigt sshd einen absoluten Pfad?

23

Warum sshdeinen absoluten Pfad erfordern beim Neustart, zB /usr/sbin/sshdstattsshd

Gibt es Sicherheitsrisiken?

PS die Fehlermeldung:

# sshd
sshd re-exec requires execution with an absolute path
Gänseblümchen
quelle

Antworten:

20

Dies gilt speziell für OpenSSH ab Version 3.9.

Für jede neue Verbindung führt sshd sich selbst erneut aus, um sicherzustellen, dass alle Ausführungszeit-Randomisierungen für jede neue Verbindung erneut generiert werden. Damit sich sshd erneut ausführen kann, muss es den vollständigen Pfad zu sich selbst kennen.

Hier ist ein Zitat aus den Versionshinweisen für 3.9:

  • Führen Sie sshd (8) erneut aus, wenn Sie eine neue Verbindung akzeptieren. Diese Sicherheitsmaßnahme stellt sicher, dass alle Ausführungszeit-Randomisierungen für die gesamte Lebensdauer des Master-Prozesses nicht nur einmal, sondern für jede Verbindung erneut angewendet werden. Dies umfasst MMAP- und MALLOC-Zuordnungen, Adressen für gemeinsam genutzte Bibliotheken, Zuordnungsreihenfolge für gemeinsam genutzte Bibliotheken, ProPolice- und StackGhost-Cookies auf Systemen, die solche Dinge unterstützen

In jedem Fall ist es normalerweise besser, einen Dienst entweder mit seinem Init-Skript (z . B. /etc/init.d/sshd restart) oder mit neu zu starten service sshd restart. Wenn nicht anders angegeben, können Sie überprüfen, ob der Dienst nach dem nächsten Neustart ordnungsgemäß gestartet wird.

( ursprüngliche Antwort, jetzt irrelevant: Meine erste Vermutung wäre, dass sie /usr/sbinnicht in Ihrem $ PATH enthalten ist. )

Jenny D
quelle
Natürlich ist es in $ PATH, ansonsten wie kann ich diese Fehlermeldung von sshd bekommen ;-P
daisy
6
Du meinst die Fehlermeldung, die du in deinem Beitrag nicht erwähnt hast?
Jenny D
2
Meine schlecht, bearbeitet die Post
Daisy
6

Dies soll verhindern, dass jemand ein sshdProgramm in eines der Verzeichnisse in Ihrem Verzeichnis einfügt PATH und Sie es versehentlich ausführen. In diesem Beitrag aus dem Jahr 2004 wird das Problem bereits beschrieben.

Timo
quelle
Während dieser Beitrag das Problem korrekt beschreibt, sind die Schlussfolgerungen im Thread fehlerhaft. Es ist kein Bug, es ist ein Feature :-)
Jenny D
@JennyD Warum denkst du, ist es ein Fehler? Das habe ich nie angedeutet.
Timo
In dem Beitrag, auf den Sie verlinkt haben, war eine Antwort "Fehler, der sich durch das Upgrade auf die neueste Version von openssh eingeschlichen hat". In keiner der Antworten in diesem Thread wurde der eigentliche Grund für die Anforderung eines vollständigen Pfads genannt - einige haben denselben Grund wie Sie genannt, was sehr plausibel ist und zeigt, warum es eine gute Idee ist, den vollständigen Pfad für alle Programme zu verwenden, die Anmeldemöglichkeiten öffnen. Dies ist jedoch nicht der eigentliche Grund dafür, dass dieses spezielle Programm diese Anforderungen erfüllt.
Jenny D