Gelöschte Bibliotheken nach Systemupdates finden
Aus AdminWiki
Inhaltsverzeichnis |
Vorwort
Es kommt ja öfters vor, dass bei einem Update nur einige System-Bibliotheken geupdatet werden und man das System deswegen ja nicht unbedingt neu starten muss. Allerdings werden von gestarteten Programmen immer noch die Bibliotheken verwendet, die vor dem Update aktuell waren, solange diese Programme nicht neu gestartet werden. Dies kann dazu führen, dass die Systeme, obwohl man sie aktuell hält, dennoch verwundbar sind.
benötigte Tools
es werden folgende Tools benötigt:
Durchführung
- um alle gelöschten oder veränderten und dennoch verwendeten Bilbiotheken heraus zu finden, führt man nach dem Update auf seinen Systemen folgendes Kommando aus:
server:~# lsof -n | egrep -i "(del|node)"
- eine Ausgabe könnte dann in etwa so aussehen:
server:~# lsof -n | egrep -i "(del|node)" COMMAND PID USER FD TYPE DEVICE NODE NAME nrpe 1111 nagios mem REG 9,1 22637092 /usr/lib/libssl.so.0.9.8 (path inode=22638819) dbus-daem 2222 messagebus mem REG 9,1 22635753 /usr/lib/libexpat.so.1.5.2 (path inode=22638405) apache2 3333 www-data mem REG 9,1 22635753 /usr/lib/libexpat.so.1.5.2 (path inode=22638405)
- dabei wird über das del nach gelöschten Dateien und Dateien die zwar noch im Speicher gemapped sind, aber auf der Festplatte nicht mehr existieren, gesucht
- node sucht nach der Ausgabe path inode=, also nach inodes die sich verändert haben
- bei der Beispiel Ausgabe sieht man das die Programme nrpe, dbus und apache2 also einmal neugestartet werden müssten, da diese alte Versionen der Bibliotheken verwenden
Tipp
- das unter Debian verfügbare Tool checkrestart, welches im Paket debian-goodies enthalten ist, übernimmt diese Aufgabe und erstellt ein Ausgabe mit den neuzustartenen Programmen
