← retour aux outils back to tools

# rkhunter

Rootkit Hunter, scanne les systèmes Linux à la recherche de rootkits, backdoors et exploits locaux. Vérifie le système de fichiers, les binaires, les ports réseau et les modules noyau à la recherche de signes de compromission. Rootkit Hunter — scans Linux systems for rootkits, backdoors, and local exploits. Checks file system, binaries, network ports, and kernel modules for signs of compromise.

↗ https://rkhunter.sourceforge.net/

## Overview

rkhunter (Rootkit Hunter) scans a Linux system for rootkits, backdoors, and other malware indicators. It checks system binaries for modifications, looks for known rootkit files, tests network interfaces for promiscuous mode, and examines startup files for suspicious entries.

## Basic Usage

Full system scan

    rkhunter --check

Check with verbose output

    rkhunter --check -v

Skip keyboard input at prompts

    rkhunter --check --sk

Non-interactive (for scripts/cron)

    rkhunter --check --sk --nocolors

## First Run Setup

Update database (must run first)

    rkhunter --update

Create initial baseline (run before system is compromised)

    rkhunter --propupd

Check with all tests

    rkhunter --check --enable all

## Scan Options

    # Check only specific tests
    rkhunter --check --enable rootkits
    rkhunter --check --enable apps
    rkhunter --check --enable hidden_ports

Scan a specific path

    rkhunter --check --scan-mode rootkit --scan-dir /tmp

Report-only mode (no interaction)

    rkhunter --check --sk --nocolors 2>&1 | tee rkhunter-report.txt

## Reviewing Results

View the log

    cat /var/log/rkhunter.log

Show only warnings

    grep "Warning\|error\|\[ Warning \]" /var/log/rkhunter.log

    # Status summary at end shows:
    # System checks: passed/warnings/failures
    # File properties checks
    # Rootkit checks
    # Application checks

## What rkhunter Checks

    # Binary file changes (MD5/SHA hash comparison)
    # Known rootkit file/directory signatures
    # Network port backdoors
    # Hidden files in /dev, /tmp
    # Suspicious startup scripts (/etc/rc.local)
    # Cron job entries
    # Kernel module anomalies
    # LD_PRELOAD usage
    # Promiscuous mode on network interfaces
    # SSH config weaknesses
    # Suspicious SUID/SGID binaries

## Tips

- Run `--propupd` immediately after a fresh clean install to build the baseline
- After an update/install, run `--propupd` again to update the properties database
- Warnings don’t always mean compromise — check each warning manually
- Common false positives: package updates, custom compiled binaries
- Use in combination with chkrootkit for better coverage
- Schedule weekly runs via cron: `rkhunter --check --sk --quiet`

Help / Man page

    rkhunter [options]

    --check       Run checks
    --update      Update rootkit database
    --propupd     Update file properties database
    --sk          Skip keyboard prompts
    --enable X    Enable specific test group
    --disable X   Disable specific test group
    --nocolors    No ANSI colors (for logging)
    --quiet       Only show warnings/errors
    -v            Verbose
    --logfile F   Log file path (default: /var/log/rkhunter.log)

## Vue d’ensemble

rkhunter (Rootkit Hunter) scanne un système Linux à la recherche de rootkits, backdoors et autres indicateurs de malware. Il vérifie les binaires système à la recherche de modifications, cherche des fichiers de rootkits connus, teste les interfaces réseau pour le mode promiscuité, et examine les fichiers de démarrage à la recherche d’entrées suspectes.

## Utilisation basique

    # Scan complet du système
    rkhunter --check

    # Vérification avec sortie verbeuse
    rkhunter --check -v

    # Ignorer les saisies clavier aux invites
    rkhunter --check --sk

    # Non interactif (pour scripts/cron)
    rkhunter --check --sk --nocolors

## Configuration au premier lancement

    # Mettre à jour la base de données (à faire en premier)
    rkhunter --update

    # Créer une baseline initiale (à lancer avant que le système ne soit compromis)
    rkhunter --propupd

    # Vérifier avec tous les tests
    rkhunter --check --enable all

## Options de scan

    # Ne vérifier que des tests spécifiques
    rkhunter --check --enable rootkits
    rkhunter --check --enable apps
    rkhunter --check --enable hidden_ports

Scanner un chemin spécifique

    rkhunter --check --scan-mode rootkit --scan-dir /tmp

Mode rapport uniquement (sans interaction)

    rkhunter --check --sk --nocolors 2>&1 | tee rkhunter-report.txt

## Examen des résultats

Consulter le log

    cat /var/log/rkhunter.log

Afficher seulement les avertissements

    grep "Warning\|error\|\[ Warning \]" /var/log/rkhunter.log

    # Le résumé de statut en fin d'exécution montre :
    # Vérifications système : réussies/avertissements/échecs
    # Vérifications des propriétés de fichiers
    # Vérifications de rootkits
    # Vérifications d'applications

## Ce que rkhunter vérifie

    # Modifications de fichiers binaires (comparaison de hash MD5/SHA)
    # Signatures de fichiers/répertoires de rootkits connus
    # Backdoors sur ports réseau
    # Fichiers cachés dans /dev, /tmp
    # Scripts de démarrage suspects (/etc/rc.local)
    # Entrées de tâches cron
    # Anomalies de modules noyau
    # Utilisation de LD_PRELOAD
    # Mode promiscuité sur les interfaces réseau
    # Faiblesses de configuration SSH
    # Binaires SUID/SGID suspects

## Conseils

- Lancer `--propupd` immédiatement après une installation propre pour construire la baseline
- Après une mise à jour/installation, relancer `--propupd` pour mettre à jour la base de propriétés
- Les avertissements ne signifient pas toujours une compromission : vérifier chaque avertissement manuellement
- Faux positifs courants : mises à jour de paquets, binaires compilés sur mesure
- À utiliser en combinaison avec chkrootkit pour une meilleure couverture
- Planifier des exécutions hebdomadaires via cron : `rkhunter --check --sk --quiet`

Aide / Page de manuel

    rkhunter [options]

    --check       Run checks
    --update      Update rootkit database
    --propupd     Update file properties database
    --sk          Skip keyboard prompts
    --enable X    Enable specific test group
    --disable X   Disable specific test group
    --nocolors    No ANSI colors (for logging)
    --quiet       Only show warnings/errors
    -v            Verbose
    --logfile F   Log file path (default: /var/log/rkhunter.log)