Was bedeutet "Stern in passwd-Datei"?

14

Ich habe einen Computer, auf dem ich booten muss, aber die Passwörter scheinen gefälscht zu sein. Außerdem kann ich das Laufwerk nicht zum Schreiben einbinden und es ist ein MIPS-Prozessor, sodass ich es nicht auf einen anderen Computer stecken kann, um es auszuführen.

Wie auch immer, die passwd-Datei enthält einige Benutzer, die so aussehen, mit einem Stern nach dem Benutzernamen. Bedeutet das ein leeres Passwort oder was?

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
sysadm:*:0:0:System V Administration:/usr/admin:/bin/sh
diag:*:0:996:Hardware Diagnostics:/usr/diags:/bin/csh
daemon:*:1:1:daemons:/:/dev/null
bin:*:2:2:System Tools Owner:/bin:/dev/null
uucp:*:3:5:UUCP Owner:/usr/lib/uucp:/bin/csh
sys:*:4:0:System Activity Owner:/var/adm:/bin/sh
adm:*:5:3:Accounting Files Owner:/var/adm:/bin/sh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh
nuucp::10:10:Remote UUCP User:/var/spool/uucppublic:/usr/lib/uucp/uucico
auditor:*:11:0:Audit Activity Owner:/auditor:/bin/sh
dbadmin:*:12:0:Security Database Owner:/dbadmin:/bin/sh
rfindd:*:66:1:Rfind Daemon and Fsdump:/var/rfindd:/bin/sh
j0h
quelle
12
Beachten Sie, dass Sie DES-Passwort-Hashes veröffentlicht haben. DES-Passwort-Hashes sind heutzutage ziemlich einfach zu knacken. Verbinden Sie diesen Computer erst mit einem Netzwerk, wenn Sie die Kennwörter geändert haben.
Gilles 'SO - hör auf, böse
2
Ich würde empfehlen, diesen Computer überhaupt nicht mit dem öffentlichen Internet zu verbinden , um ganz ehrlich zu sein. Stellen Sie es lange genug in ein Firewall-Netzwerk, um Daten daraus zu schlucken, aber dann sollte es ausgemustert werden. Wenn das Betriebssystem so alt ist, wie es aussieht, ist es wahrscheinlich mit Sicherheitslücken vom Kernel überfrachtet - beispielsweise mit vorhersagbaren TCP-Anfangssequenznummern .
zwol
Das Passwort für den lpBenutzer ist lächerlich schwach. Und da DES-basierte Kennwörter auf ASCII beschränkt sind und nur 8 Zeichen lang sein können, erhalten Sie nicht mehr als 53 Bit Entropie. Wechseln Sie zu einem stärkeren Hash, wenn Sie können, und ändern Sie die Kennwörter.
Kasperd
Hinzufügen einiger Zahlen zu meinem vorherigen Kommentar: Mein Laptop könnte das lpPasswort in 630 Millisekunden brechen . Das rootPasswort ist viel stärker. Ich habe einen Brute-Force-Angriff fünf Stunden lang laufen lassen, bevor ich ihn beendet habe. Das rootPasswort wurde innerhalb dieser fünf Stunden nicht geknackt . Aber Sie sollten natürlich trotzdem der vorherigen Empfehlung folgen und das Passwort ändern.
Kasperd
Für die Aufzeichnung wissen Sie, dass das beliebteste Passwort Passwort ist? Nun, Passwort1 kann nicht weit dahinter sein. lächerlich schwach in der Tat.
Hildred

Antworten:

22

Sie müssen Mann passwd überprüfen :

Wenn das verschlüsselte Kennwort auf ein Sternchen (*) gesetzt ist, kann sich der Benutzer nicht mit login (1) anmelden, kann sich aber dennoch mit rlogin (1) anmelden, vorhandene Prozesse ausführen und neue über rsh (1), cron, initiieren (8), at (1) oder E-Mail-Filter usw. Der Versuch, ein Konto durch einfaches Ändern des Shell-Felds zu sperren, führt zum gleichen Ergebnis und ermöglicht zusätzlich die Verwendung von su (1).

Normalerweise haben Konten mit *im Passwortfeld kein Passwort, zB: für die Anmeldung deaktiviert. Dies ist anders als bei Konten ohne Passwort. Dies bedeutet, dass das Passwortfeld leer ist und dies ist fast immer eine schlechte Praxis.

Taliezin
quelle
13

Die Konten mit Passwörtern sind die Konten mit einem Globus Base64-Kauderwelsch im zweiten Feld:

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh

Dieser Computer verwendet anscheinend den herkömmlichen DES-basierten crypt(3)Kennwort-Hash. Dieser Hash ist nach modernen Maßstäben ziemlich schwach; Wenn Sie es auf keine andere Weise schaffen, sich als Root anzumelden, können Sie das Kennwort möglicherweise mit Brute-Force-Methoden mithilfe von John the Ripper oder einer ähnlichen Software wiederherstellen . Auch technisch gesehen ist das nicht base64, sondern eine ältere, ähnliche Kodierung, aber Sie müssen sich darüber wahrscheinlich keine Gedanken machen.

Die Unterscheidung zwischen :*:und :!:Erwähnung in anderen Antworten ist zu neu, um für Ihr Problem relevant zu sein. Auf einem so alten UNIX-System können im Kennwortfeld nur drei verschiedene Dinge angezeigt werden:

alice::1001:1001:Alice Can Log In Without A Password:/home/alice:/bin/ksh
bob:WSy1W41d4D1Gw:1002:1002:Bob Must Supply A Password:/home/bob:/bin/ksh
carol:ANYTHING ELSE:1003:1003:Carol Cannot Log In At All:/home/carol:/bin/ksh

Wenn der Inhalt des Kennwortfelds leer ist, können Sie sich ohne Kennwort anmelden.

Wenn der Inhalt des Feldes der gültige cryptHash eines Passworts ist, können Sie sich mit diesem Passwort anmelden.

Andernfalls können Sie sich nicht als dieser Benutzer anmelden. *ist nur die herkömmliche Sache zu verwenden - es ist visuell offensichtlich kein gültiger Passwort-Hash. Es wurde wahrscheinlich von jedem ausgewählt, der das passwdProgramm geschrieben hat.

(Der Sinn von Benutzer-IDs in der Kennwortdatei, die sich nicht anmelden können, ist, dass sie weiterhin Dateien besitzen, weiterhin cronJobs haben und Daemons setuiddiese Identität annehmen können. Tatsächlich wird empfohlen, alle Daemons auszuführen (die nicht als ausgeführt werden müssen root) unter solchen Benutzer-IDs, sodass Sie gewissermaßen sicher sind, dass nur der Dämon unter dieser Identität ausgeführt wird.)

(Die Konten mit /dev/nullin der Schale Feld gesperrt sind gegen rootVerwendung von suProgramme unter dieser Benutzeridentität zu laufen, sowie . Reguläre Login Heute sind Sie viel eher zu sehen /bin/falseoder /sbin/nologinzu diesem Zweck verwendet, und ich vermute , dass auf diesem System letzteres tut nicht vorhanden und ersteres ist ein Shell-Skript.)

(Das Passwort für Bob ist "bobpassw", verschlüsselt mit dem alten Algorithmus, aber auf einem modernen Linux-Computer. Es ist möglicherweise nicht das, was Ihr Computer mit dem gleichen Passwort und Salt erzeugt. Einer der Gründe, warum der alte Algorithmus als nicht gut angesehen wird es gibt keine feste Obergrenze von 8 Zeichen in einem Passwort.)

(Ich weiß, dass das System wirklich alt ist, weil es DES-basiertes Passwort-Hashing verwendet, weil es keine Schattendatei verwendet und weil die Shell von root /bin/ksheher als etwas Neueres und Ergonomischeres ist.)

zwol
quelle
Ich dachte, das Passwort von Bob hätte die Form nicht VIELFÄLTIG erfüllt.
Joshua
@Joshua Jetzt
behoben
Wenn er in den Computer booten muss, kann er dann nicht schneller im Wiederherstellungsmodus oder mit einer USB-Live-CD / DVD booten und das Kennwort in ein anderes ändern, als wenn er John the Ripper verwendet?
YoMismo
@YoMismo Ein Computer, der so alt ist (ich vermute, er stammt aus den frühen 1990er Jahren), verfügt möglicherweise nicht über einen Wiederherstellungsmodus. Es ist wahrscheinlich möglich, von einem Wechseldatenträger zu booten, aber es ist möglicherweise schwierig, eine bootfähige CD oder ein bootfähiges Band zu finden. Eine moderne Live-CD wird definitiv nicht funktionieren.
zwol
@zwol Ich würde versuchen, das System mit einer tatsächlichen Distribution und Chroot zu seinem alten System zu starten. Wahrscheinlich passwdmüsste --bind / dev / sys nicht gemountet werden.
YoMismo
8

Dies bedeutet, dass es für die direkte Anmeldung deaktiviert ist. Es ist ein Benutzer, der zum Ausführen von Diensten oder zum Anmelden verwendet wird. Überprüfen Sie https://en.wikipedia.org/wiki/Passwd#Password_file

Marco
quelle
Dieser Computer ist ziemlich alt. Ich war mir nicht sicher, ob sich die Bedeutung im Lauf der Zeit geändert hat.
30.
@WouterVerhelst: Es ist für die Anmeldung deaktiviert. Es ist nicht für rlogin deaktiviert. Sie müssen sich die Antwort genauer ansehen.
Brian
Ich habe meine Antwort geändert. Ich hoffe, dass es jetzt korrekter für @WouterVerhelst ist.
Marco
3

Zu Ihrer eigentlichen Frage lesen Sie die Antwort von taliezin (und akzeptieren Sie diese;)

Informationen zu Ihrem anderen Problem: Suchen Sie nach der Zeichenfolge 8sh9JBUR0VYeQ auf der Festplatte, um die Festplattenblöcke zu ermitteln, in denen sie sich befinden. Ersetzen Sie dann diese Zeichenfolge durch einen bekannten Kennwort-Hash (die alte Krypta) () one - same length) und schreibe den / die Plattenblock (e) zurück an den alten Speicherort - mache möglicherweise vorher eine vollständige Sicherung der Platte. Da dieser Ansatz die Größe der Datei nicht ändert, müssen keine Metadaten des Dateisystems aktualisiert werden.

Bodo Thiesen
quelle