Antworten:
Es ist wahrscheinlich, dass dies falsch positiv ist, da es einen Fehler in chkrootkit gibt (der vermutlich in einer späteren Version 0.50-3ubuntu1 behoben wurde). Anscheinend führt chkrootkit keine ausreichend strenge Prüfung durch.
Siehe: https://bugs.launchpad.net/ubuntu/+source/chkrootkit/+bug/454566
Zusätzlich können Sie rkhunter ausprobieren, das chkrootkit ähnelt.
Weitere Informationen: Glücklicherweise zeigt das Ausführen der Datei `which chkrootkit` , dass chkrootkit nur ein Shell-Skript ist, sodass wir es direkt überprüfen können.
Searching for Suckit in the file /usr/sbin/chkrootkit we find:
### Suckit
if [ -f ${ROOTDIR}sbin/init ]; then
if [ "${QUIET}" != "t" ];then printn "Searching for Suckit rootkit... "; fi
if [ ${SYSTEM} != "HP-UX" ] && ( ${strings} ${ROOTDIR}sbin/init | ${egrep} HOME || \
cat ${ROOTDIR}/proc/1/maps | ${egrep} "init." ) >/dev/null 2>&1
then
echo "Warning: ${ROOTDIR}sbin/init INFECTED"
else
if [ -d ${ROOTDIR}/dev/.golf ]; then
echo "Warning: Suspect directory ${ROOTDIR}dev/.golf"
else
if [ "${QUIET}" != "t" ]; then echo "nothing found"; fi
fi
fi
fi
Die Schlüsselzeile lautet:
cat ${ROOTDIR}/proc/1/maps | ${egrep} "init."
Seit den letzten Versionen von Ubuntu erzeugt das Ausführen dieses Befehls eine Ausgabe (muss als root oder sudo ausgeführt werden):
# sudo cat /proc/1/maps | egrep "init."
b78c2000-b78db000 r-xp 00000000 08:02 271571 /sbin/init (deleted)
b78db000-b78dc000 r--p 00019000 08:02 271571 /sbin/init (deleted)
b78dc000-b78dd000 rw-p 0001a000 08:02 271571 /sbin/init (deleted)
Dies ist jedoch keine Infektion durch ein Rootkit. Ich habe mir auch den rkhunter-Code angeschaut und die Prüfungen sind weitaus strenger (Prüfung auf alle möglichen zusätzlichen Dateien, die vom Rootkit installiert wurden).
Ich habe die Zeilen 1003, 1004 in der chkrootkit-Datei geändert, um die Überprüfung von / proc / 1 / maps nicht durchzuführen. (Denken Sie daran, zuerst eine Kopie zu erstellen.)
if [ ${SYSTEM} != "HP-UX" ] && ( ${strings} ${ROOTDIR}sbin/init | ${egrep} HOME ) \
>/dev/null 2>&1
Am Kubuntu 13.04 vom 31.07.2013
Laufen:
cat /sbin/init | egrep HOME
Produziert:
Binary file (standard input) matches
UND
Laufen:
cat /proc/1/maps | egrep "init."
Erzeugt KEINE Ausgabe.
Hinweis: Durch Entfernen der Periode wird eine Ausgabe erzeugt (Ändern von "init" in "init").
b7768000-b779f000 r-xp 00000000 08:02 399192 /sbin/init
b779f000-b77a0000 r--p 00036000 08:02 399192 /sbin/init
b77a0000-b77a1000 rw-p 00037000 08:02 399192 /sbin/init
So scheint es mir, dass der Teil, der HOME überprüft, das Problem ist.
Wenn man davon ausgehen kann, dass rkhunter eine gültige Prüfung hat, besteht der einfache Weg vielleicht darin, diesen Abschnitt aus chkrootkit zu entfernen und sowohl rkhunter als auch chkrootkit auszuführen?
strings /sbin/init | grep HOME
bekommen, XDG_CACHE_HOME and XDG_CONFIG_HOME
ist das immer noch falsch positiv? Was ist der Zweck der Suche nach der Zeichenfolge "HOME" in / sbin / init? Warum sollte das positiv sein?