Réponses:
Il est probable que ce soit un faux positif car il y a un bug dans chkrootkit (censé être corrigé dans une version ultérieure 0.50-3ubuntu1). Apparemment, chkrootkit n'effectue pas un contrôle assez rigoureux.
Voir: https://bugs.launchpad.net/ubuntu/+source/chkrootkit/+bug/454566
De plus, vous pouvez essayer rkhunter qui est similaire à chkrootkit.
Quelques informations supplémentaires: Heureusement, l'exécution du fichier `which chkrootkit` nous montre que chkrootkit n'est qu'un script shell afin que nous puissions l'inspecter directement.
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
La ligne clé est:
cat ${ROOTDIR}/proc/1/maps | ${egrep} "init."
Depuis les versions récentes d'Ubuntu, l'exécution de cette commande produit une sortie (besoin de s'exécuter en tant que root ou sudo):
# 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)
Cependant, ce n'est pas une infection par un rootkit. J'ai également regardé le code rkhunter, et les contrôles sont beaucoup plus rigoureux (test pour toutes sortes de fichiers supplémentaires installés par le rootkit).
J'ai changé les lignes 1003,1004 dans le fichier chkrootkit pour ne pas vérifier effectuer la vérification de / proc / 1 / maps (n'oubliez pas de prendre une copie en premier)
if [ ${SYSTEM} != "HP-UX" ] && ( ${strings} ${ROOTDIR}sbin/init | ${egrep} HOME ) \
>/dev/null 2>&1
Sur Kubuntu 13.04 à compter du 2013-07-31
Fonctionnement:
cat /sbin/init | egrep HOME
Produit:
Binary file (standard input) matches
ET
Fonctionnement:
cat /proc/1/maps | egrep "init."
Ne produit AUCUNE sortie.
Remarque: La suppression de la période produit une sortie (changer "init." En "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
Il me semble donc que la partie vérifiant HOME est le problème.
Si l'on peut faire l'hypothèse que rkhunter a une vérification valide, alors peut-être que la solution la plus simple consiste simplement à supprimer cette section de chkrootkit et à exécuter à la fois rkhunter et chkrootkit?
strings /sbin/init | grep HOME
j'obtiens XDG_CACHE_HOME and XDG_CONFIG_HOME
est-ce toujours un faux positif? Quel est le but de la recherche de la chaîne "HOME" dans / sbin / init? Pourquoi cela devrait-il être positif?