sudo: 3 falsche Passwortversuche - kann root das Passwort im Klartext sehen?


19

Wenn ein Benutzer sudodreimal nicht auf einen Befehl zugreifen kann , sollte dies dem Root-Benutzer in den Zugriffsprotokollen \ errors gemeldet werden.

Kann root diese Versuche (wie versuchte Passwörter) in Text in den Protokollen sehen?


4
Implizite Annahme: Wurzel ist nicht böse. Wenn root beim Versuch, sich anzumelden, bereits böse ist, sind alle Wetten deaktiviert.
Joshua

Es ist trivial, auf den meisten Systemen etwas zu konfigurieren, aber es ist nicht Teil einer mir bekannten Standardkonfiguration.
PlasmaHH

2
Obligatorische xkcd xkcd.com/838
Joe

Nur die Anzahl der falschen Versuche wird an root gemeldet. Root kann die Zugangspasswörter überhaupt nicht sehen.
Mohammad Kholghi

Antworten:


37

Nein, Passwörter werden nicht standardmäßig protokolliert. Dies wäre ein Sicherheitsproblem, da Protokolle möglicherweise von anderen Administratoren gelesen werden und bei einem leicht falsch eingegebenen Kennwort die Identität des Benutzers angenommen werden kann.


28

Anmeldeversuche erfolgreich und erfolglos sind angemeldet

/var/log/auth.log

Beispiel für einen erfolgreichen Versuch:

Oct 23 21:24:01 schijfwereld sudo: rinzwind : TTY=pts/0 ; PWD=/home/rinzwind ; USER=root ; COMMAND=/bin/bash
Oct 23 21:24:01 schijfwereld sudo: pam_unix(sudo:session): session opened for user root by (uid=0)

Und erfolglos:

Oct 23 21:25:33 schijfwereld sudo: pam_unix(sudo:auth): authentication failure; logname= uid=1000 euid=0 tty=/dev/pts/1 ruser=rinzwind rhost=  user=rinzwind
Oct 23 21:26:02 schijfwereld sudo: rinzwind : 3 incorrect password attempts ; TTY=pts/1 ; PWD=/home/rinzwind ; USER=root ; COMMAND=/bin/bash

Es protokolliert den fehlgeschlagenen Versuch und die insgesamt 3 falsch eingegebenen Passwörter.

Passwörter für sudoVersuche werden niemals angezeigt oder gespeichert.


4
Die einzige Möglichkeit, wie Passwörter protokolliert werden, besteht normalerweise darin, dass Sie vergessen haben, nach dem Benutzernamen die Eingabetaste zu drücken. Sie melden sich also als "Scott Tiger" anstelle des Benutzers Scott mit dem Kennwort Tiger
Lenne an.

Aber das ist nicht
Sudos

@Lenne Wenn mir das passiert (oder wenn ich abwesend mein Passwort anstelle eines Befehls eingebe), lösche ich die betreffende Zeile aus dem Shell-Verlauf.
Zanna

4

In der Regel werden Passwörter, die bei Anmeldeversuchen verwendet wurden, nicht protokolliert, auch wenn das betreffende Passwort ungültig war. Dies liegt einfach daran, dass das Kennwort möglicherweise für einen anderen Benutzer auf demselben System gültig ist (z. B. der Benutzer hat seinen Benutzernamen und nicht das Kennwort falsch eingegeben ), oder es handelt sich möglicherweise um eine geringfügige Änderung des tatsächlichen Kennworts (der Benutzer hat einen Buchstaben verpasst).

In beiden Fällen verbleibt ein Klartext-Kennwort auf dem System, das anfällig für Informationslecks ist. (Das Passwort könnte auch ein gültiges Passwort für ein anderes System als das sein, auf dem es eingegeben wurde, aber das ist wirklich eher ein Problem für "sie", nicht für "uns".)

In gewisser Weise hängt dies mit den Fällen zusammen, in denen ein Benutzer sein Kennwort anstelle seines Benutzernamens schreibt (z. B. verwenden sie normalerweise ein System, das den Benutzernamen automatisch eingibt, dies aber jetzt nicht tat, das Kennwort aber dennoch als Erstes eingibt). In diesem Fall hätten Sie ein Klartext-Passwort in den Protokollen. Dies ist nicht optimal, aber es ist nützlich, die Benutzernamen für die üblichen fehlgeschlagenen Anmeldeversuche zu sehen, und es gibt keine einfache Lösung, um sie zu speichern, aber keine als Benutzernamen eingegebenen Kennwörter.


Das heißt, es gibt nichts, was den Administrator des Systems daran hindert, dass das System auch die Passwörter protokolliert. Das Hinzufügen der Protokollierung könnte wahrscheinlich durch Hinzufügen eines Aufrufs zum syslog()PAM-Modul und erneutes Kompilieren erfolgen. (PAM ist das, was Ubuntu und sudoverwenden, aber das gilt natürlich auch für Web-Apps und alles andere.)


Also, nein, in der Regel kann ein Administrator die Passwörter nicht sieht auf dem System eingegeben, aber wenn Sie Ihr Passwort auf einem System geben Sie nicht vertrauen, sollten Sie, streng genommen, halten es verloren und es ändern.


0

Im Allgemeinen protokollieren nur sehr wenige Programme unter Unix tatsächliche Passwörter in Syslog oder anderswo - es gibt fast keinen guten Grund, dies zu tun, und es gibt gute Gründe, dies nicht zu tun .

Aufgrund der Art und Weise, wie Passwörter gehasht werden, kann das System den Unterschied zwischen einem falschen Passwort und einem Tippfehler nicht erkennen. Wenn Ihr Passwort% $ zDF + 02G war und Sie% $ ZDF + 02G eingegeben haben, wird es Ihnen genauso schwer fallen Wenn Sie "rubberbabybuggybumpers" eingeben, das fehlgeschlagene Kennwort jedoch protokollieren, werden wertvolle Informationen an einen böswilligen Dritten weitergegeben, der das Protokoll liest.

Der ein Fall , den ich gefunden habe , wo ein Programm hat die Fähigkeit hat , Kennwörter anmelden (und einen Anwendungsfall , wo das eine gute Idee sein würde) ist in RADIUS - Server, wo Sie in einer Prise Schalter auf mehr Informations-als- Sie wollten wahrscheinlich den Debug-Modus und fügen dann explizit das Flag "Ja, einschließlich Passwörtern" hinzu, da ein Client keine Verbindung herstellen kann und Sie absolut jede mögliche Ursache ausschließen müssen ...

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.