Les rootkit sous Linux


Définition d'un rootkit :

Les rootkits sont des outils exploités par les pirates informatiques (hackers) qui permettent de s'approprier le compte root.

Un rootkit est généralement installé volontairement par un utilisateur avec peu de droits et qui a préalablement eu un accès à la machine (soit en la piratant soit en ayant des accès de simple visiteur par exemple).

Il exploite alors une faille du système d'exploitation et / ou des protocoles réseau utilisés pour récupèrer les mots de passes qui transitent sur le réseau et ainsi avoir accès à des services sécurisés voir à d'autres machines.

Fréquemment, les rootkits installent une backdoor sur la machine afin que le pirate puisse se reconnecter discrètement sur la machine. De plus, les rootkit actuels modifient le noyau ( souvent un module chargé ) afin de se rendre invisible à l'administrateur.

installation d'un rootkit ici
Analyse du rootkit KNARK

Les Scanners


Sous linux chaque fichiers a une emprunte MD5 vous pouvez effectuer un checksum à l'aide du programme md5sum afin de vérifier si ce dernier a été modifié ( volontairement ou lors d'un téléchargement ).

malekalmorte@ubuntu:~$ md5sum /sbin/lsmod
1714cbb179be07fa944ab1f128e1a751  /sbin/lsmod

Dès lors, le md5 de chaque binaire système de chaque distribution est connu, on peut alors déterminer si ce dernier ont été modifié par un rootkit.

rkhunter

- rkhunter est un scanner qui vérifie les signatures md5 des binaires systèmes
Il scan aussi le système à partir de signature de rootkit connus.

L'installation est simple :
malekalmorte@ubuntu:~$ tar xvfz Desktop/rkhunter-1.2.7.tar.gz
./rkhunter/files/
./rkhunter/files/CHANGELOG
./rkhunter/files/LICENSE
./rkhunter/files/README
./rkhunter/files/WISHLIST
./rkhunter/files/backdoorports.dat
./rkhunter/files/check_modules.pl
./rkhunter/files/check_port.pl
./rkhunter/files/defaulthashes.dat
./rkhunter/files/filehashmd5.pl
./rkhunter/files/filehashsha1.pl
./rkhunter/files/mirrors.dat
./rkhunter/files/os.dat
./rkhunter/files/rkhunter
./rkhunter/files/rkhunter.conf
./rkhunter/files/rkhunter.spec
./rkhunter/files/showfiles.pl
./rkhunter/files/md5blacklist.dat
./rkhunter/files/tools/
./rkhunter/files/tools/update_server.sh
./rkhunter/files/tools/update_client.sh
./rkhunter/files/tools/README
./rkhunter/files/check_update.sh
./rkhunter/files/programs_bad.dat
./rkhunter/files/contrib/
./rkhunter/files/contrib/run_rkhunter.sh
./rkhunter/files/contrib/README.txt
./rkhunter/files/testing/
./rkhunter/files/testing/stringscanner.sh
./rkhunter/files/testing/rootkitinfo.txt
./rkhunter/files/testing/rkhunter.conf
./rkhunter/files/development/
./rkhunter/files/development/createfilehashes.pl
./rkhunter/files/development/createhashes.sh
./rkhunter/files/development/rpmhashes.sh
./rkhunter/files/development/rpmprelinkhashes.sh
./rkhunter/files/development/osinformation.sh
./rkhunter/files/development/rkhunter.8
./rkhunter/files/development/createhashesall.sh
./rkhunter/files/development/search_dead_sysmlinks.sh
./rkhunter/files/programs_good.dat
./rkhunter/files/defaulthashes2.dat
./rkhunter/installer.sh


se mettre dans le nouveau dossier rkhunter :
malekalmorte@ubuntu:~/rkhunter$ sudo ./installer.sh

Rootkit Hunter installer 1.2.4 (Copyright 2003-2005, Michael Boelen)
---------------
Starting installation/update

Checking  /usr/local... OK
Checking file retrieval tools... /usr/bin/wget
Checking installation directories...
- Checking /usr/local/rkhunter...Exists
- Checking /usr/local/rkhunter/etc...Exists
- Checking /usr/local/rkhunter/bin...Exists
- Checking /usr/local/rkhunter/lib/rkhunter/db...Exists
- Checking /usr/local/rkhunter/lib/rkhunter/docs...Exists
- Checking /usr/local/rkhunter/lib/rkhunter/scripts...Exists
- Checking /usr/local/rkhunter/lib/rkhunter/tmp...Exists
- Checking /usr/local/etc...Exists
- Checking /usr/local/bin...Exists
Checking system settings...
    - Perl... OK
Installing files...
Installing Perl module checker... OK
Installing Database updater... OK
Installing Portscanner... OK
Installing MD5 Digest generator... OK
Installing SHA1 Digest generator... OK
Installing Directory viewer... OK
Installing Database Backdoor ports... OK
Installing Database Update mirrors... OK
Installing Database Operating Systems... OK
Installing Database Program versions... OK
Installing Database Program versions... OK
Installing Database Default file hashes... OK
Installing Database MD5 blacklisted files... OK
Installing Changelog... OK
Installing Readme and FAQ... OK
Installing Wishlist and TODO... OK
Installing RK Hunter configuration file... Skipped (no overwrite)
Installing RK Hunter binary... OK
Configuration already updated.

Installation ready.
See /usr/local/rkhunter/lib/rkhunter/docs for more information. Run 'rkhunter' (/usr/local/bin/rkhunter)


On peut alors démarrer le scan, on remarquera que rkhunter détermine le type de distribution pour connaître les md5 des fichiers (puisqu'ils diffèrent selon la distribution).
malekalmorte@ubuntu:/$ sudo /usr/local/bin/rkhunter -c

Rootkit Hunter 1.2.7 is running

Determining OS... Ready

Checking binaries
* Selftests
     Strings (command)                                [ OK ]

* System tools
  Performing 'known bad' check...
   /bin/cat                                                   [ OK ]
   /bin/chmod                                             [ OK ]

   etc... etc..

Chkrootkit

chkrootkit permet aussi un scan à la recherche de rootkit connus - il est disponible sur apt-get
j'ai fait un script qui permet d'envoyer un mail après vérification du système : ici

Les IDS


LIDS
LIDS est un projet qui permet :
La désactivation de ce mode ( lorsque par exemple vous administrez la machine ) se fait par un mot de passe.

Dans le même style, il existe un autre projet GrSecurity qui permet aussi d'augmenter la sécurité au niveau du noyau et ajouter des restrictions aux utilisateurs.

Quelques conseils

Voici quelques conseils pour se prémunir de ce genre d'attaques et intrusions :
Retour à la page d'accueil
flux rss malekal.com - Sitemap - Geekeden - OxygenePC.com - Les partenaires du site McAfee you Suck