Top Banner
Infosec2002: Backdoors et rootkits avancés © 2002 Nicolas Dubée, [email protected] mercredi 15 mai 2002 1 Backdoors Backdoors et et rootkits rootkits avancés avancés
24

Backdoors et rootkits_avancees_[slides]

Apr 14, 2017

Download

Documents

UltraUploader
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 1

BackdoorsBackdoors et et rootkitsrootkits avancésavancés

Page 2: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 2

Plan de la présentationPlan de la présentation

• Introduction• Aperçu du principe des backdoors

kernel• Démonstration sous Solaris• Prévention et détection

Page 3: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 3

IntroductionIntroduction

Page 4: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 4

DéfinitionsDéfinitions

• Backdoor– Porte dérobée plantée par un intrus et lui

permettant de revenir ou d’élever ses privilèges plus facilement

• Rootkit– Modification par un intrus de composants

légitimes du système, par exemple dans un but de dissimulation, de backdoor.

Page 5: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 5

Pourquoi cet exposé ?Pourquoi cet exposé ?

• Exemple d’une application d’attaque « à la mode »

• Démontre les conséquences en cas de compromission de la base de confiance

• Démontre le manque de fonctionnalités avancées de sécurité des OS

Page 6: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 6

Rappels sur les OSRappels sur les OS

• OS = système d’exploitation = interface matériels / logiciels

• L’OS propose un ensemble de services aux applicatifs

• Partie de l’OS fonctionnant en mode privilégié : kernel

• Tous les logiciels utilisateurs passent par les fonctionnalités de l’OS (syscalls)

Page 7: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 7

Page 8: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 8

Place de la sécurité dans un OSPlace de la sécurité dans un OS

• Des fonctionnalités en mode kernel• Mais aussi souvent en mode utilisateur

– Fonctionnalités (protection mémoire, FS) de base en mode kernel

– Le reste (gestion passwords, …) en mode utilisateur

• Tous les systèmes de sécurité se basent sur des fonctionnalités offertes par l’OS– pour récupérer l’information de décision– Pour appliquer les actions en conséquence

Page 9: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 9

ModularitéModularité

• La modularité est une contrainte• Les kernels des OS sont hautement

configurables• Les kernels ne sont pas fermés• Du code peut y être ajouté (pilotes

périphériques)

Page 10: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 10

Le paradigme «Le paradigme « rootroot »»

• Sous Unix, les seules permissions reconnues au niveau kernel– L’UID 0 (root) dispose de toutes les

permissions– Les autres (!= 0) sont restreintes à leurs

propres objets

• Le root dispose entre autres de la possibilité de modifier l’OS

Page 11: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 11

RootkitsRootkits kernelkernel

Page 12: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 12

Idée de baseIdée de base

• Sur une machine compromise• Modifier le kernel• Pour faire réagir l’OS comme

souhaité• Et ainsi biaiser tous les applicatifs• Dont ceux de sécurité

Page 13: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 13

RésultatsRésultats

• La base de confiance est compromise• Tous les applicatifs de sécurité (H/N-

IDS, journalisation) sont inutiles• Car ne peuvent avoir comme vue du

système que celle fournie par le kernel

Page 14: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 14

Démonstration sous Démonstration sous SolarisSolaris

Page 15: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 15

Modification du Modification du kernelkernel

• Une fois que l’intrus a accès au compte « root »

• Il utilise des fonctionnalités standard de l’OS pour modifier le kernel– Modules dynamiques (LKM)– Modification des fichiers kernel (/kernel/genunix)– Accès mémoire direct (/dev/kmem, /dev/mem)

• Et y injecte son propre code

Page 16: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 16

Réalité du problèmeRéalité du problème

• Adore v0.34 (Linux), Stealth– Avec programme d’installation et d’administration aisée

permettant de gagner root par une fonction cachée, dissimuler des processus, des fichiers des connexions TCP (contre netstat) et du mode Promisc.

• Kernmod 0.2 (Solaris), Job de Haas - ITSX– Démonstration d’un module kernel Solaris réalisant toutes

les opérations de base (dissimulation de fichiers, processus, connexions TCP, …).

• Rootkit 2000 (Windows NT 4.0, Windows 2000), Greg Hoglund & collectif– Rootkit kernel sous Microsoft Windows.

Page 17: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 17

Techniques usuellesTechniques usuelles

• Cacher les fichiers– Modification des routines de gestion FS (VFS) ou même

devices

• Cacher des processus– Modification des listes chaînées d’ordonnancement

• Cacher des connexions réseaux– Modification des listes chaînées des connexions actives

• Ajouter des fonctionnalités cachées– « Covert channels » – Backdoors avec déclenchement par réseau

Page 18: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 18

Détection et préventionDétection et prévention

Page 19: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 19

Le problèmeLe problème

• Il n’y a pas vraiment de moyen de vérifier l’OS « à chaud »

• Car c’est lui qui définit la vue du système qu’ont les applications

• Le rootkit peut donc leur présenter un état normal

Page 20: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 20

Les méthodes de détectionLes méthodes de détection

• La plus fiable : redémarrer sur un kernel sûr et vérifier manuellement

• Utiliser les signatures des rootkitstraditionnels

• Utiliser des bugs dans les rootkits pour les détecter

• Si bien conçus, aucun moyen de les détecter !!!

Page 21: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 21

La prévention (1)La prévention (1)

• Idéalement, empêcher l’intrus de devenir root

• Cependant, c’est difficile !!!

Page 22: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 22

La prévention (2)La prévention (2)

Dans le monde réel :• Vérifier le code à injecter dans le kernel par

signature (du constructeur)• Interdire toute modification du kernel

– Pas toujours possible– Pas toujours pratique– Securelevel BSD

• Limiter les privilèges de l’utilisateur « root »– Compartimentation des droits– Patchs de sécurité (Argus, …)

Page 23: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 23

ConclusionsConclusions

• Les pirates déploient des techniques évoluées

• Compromettant la base de confiance qu’est l’OS

• Celui-ci ne dispose pas nativement de fonctionnalités de sécurité suffisantes

• Modularité au détriment de sécurité

Page 24: Backdoors et rootkits_avancees_[slides]

Infosec2002: Backdoors et rootkits avancés© 2002 Nicolas Dubée, [email protected]

mercredi 15 mai 2002 24

Merci et bonne journée !Merci et bonne journée !

Cette présentation et d’autres disponibles sur http://www.secway.com/