Glossar
lastlog
Die Datei /var/log/lastlog: ein Slot fester Größe pro UID mit Zeitpunkt, Terminal und Remote-Host des letzten Logins dieses Kontos.
/var/log/lastlog speichert den jeweils letzten Login jedes Kontos. Die Datei ist ein Array von struct lastlog, indiziert nach UID: Der Slot für UID N liegt auf x86_64 bei Offset N × 292 Bytes, und jeder Slot enthält eine 32-Bit-Zeit, einen 32 Byte langen Terminalnamen und einen 256 Byte langen Remote-Host. Auf aarch64 ist ein Slot 296 Bytes groß. Der Befehl lastlog gibt sie anhand der lokalen /etc/passwd aus.
Da der Offset von der UID abhängt, lässt schon ein einziger Login einer hohen UID (etwa 100000) die Datei riesig erscheinen. Sie ist eine Sparse-Datei: Nur wenige Blöcke sind tatsächlich belegt. Sichern Sie sie deshalb mit tar --sparse, um keine Gigabytes an Nullen zu kopieren.
Warum es in Ermittlungen wichtig ist
Jeder Login überschreibt den Slot, lastlog kennt also nur den letzten Login pro Konto, bewahrt ihn aber unbegrenzt auf, lange nachdem wtmp rotiert wurde. Vor allem wird die Datei unabhängig von wtmp geschrieben. Eine lastlog-Zeit ohne passende Sitzung in wtmp, obwohl wtmp diesen Zeitraum abdeckt, ist ein starkes Indiz dafür, dass ein wtmp-Eintrag entfernt oder genullt wurde. Außerdem zeigt sie Konten, die sich vor Jahren einmal angemeldet haben und sich eigentlich nie anmelden sollten.
Beispiel
Der Slot von svc_backup (UID 1001) beginnt bei Byte 1001 × 292 = 292292:
dd if=lastlog bs=292 skip=1001 count=1 2>/dev/null | xxd
Nach dem Login aus der Fallstudie dieser Website enthält dieser Slot die Login-Zeit, pts/1 und 203.0.113.45. Neuere Distributionen ersetzen die Datei durch lastlog2, eine SQLite-Datenbank unter /var/lib/lastlog/lastlog2.db, deren Tabelle Lastlog2 die Spalte Time in Sekunden speichert.
Verwandte Begriffe
- wtmp und btmp: der vollständige Login-Verlauf zum Abgleich.
- utmp: die aktuell offenen Sitzungen.
- wtmpdb: der SQLite-Nachfolger von wtmp.
Linux Log Parser liest beide Slot-Größen und lastlog2. Mehr in der Forensik von wtmp, btmp und lastlog.