Backdoors furtives et autres fourberies dans le noyau



Documents pareils
ERESI : une plate-forme d'analyse binaire au niveau noyau. The ERESI team

Haka : un langage orienté réseaux et sécurité

SECURIDAY 2012 Pro Edition

Configuration serveur pour le mode L4 DSR

Outils d'analyse de la sécurité des réseaux. HADJALI Anis VESA Vlad

Atouts et limites du modèle de sécurité du pare-feu personnel

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

ACTION PROFESSIONNELLE N 4. Fabien SALAMONE BTS INFORMATIQUE DE GESTION. Option Administrateur de Réseaux. Session Sécurité du réseau

TP4 : Firewall IPTABLES

Nouveaux outils de consolidation de la défense périmétrique

SECURIDAY 2013 Cyber War

Exécutif temps réel Pierre-Yves Duval (cppm)

Linux Firewalling - IPTABLES

Les réseaux des EPLEFPA. Guide «PfSense»

Conférence Starinux Introduction à IPTABLES

Les firewalls libres : netfilter, IP Filter et Packet Filter

Sécurité et Firewall

Sécurité des réseaux Firewalls

Analyse de sécurité de logiciels système par typage statique

Playing with ptrace() for fun and profit

JAB, une backdoor pour réseau Win32 inconnu

Netfilter & Iptables. Théorie Firewall. Autoriser le trafic entrant d'une connexion déjà établie. Permettre le trafic entrant sur un port spécifique

Systèmes d exploitation

laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007

Master 1 ère année. UE Réseaux Avancés I. Corrections décembre Durée : 2h Documents autorisés

De l invisibilité des rootkits : application sous Linux

Licence 3 Systèmes et Réseaux II. Chapitre V : Filtrage

Retour d expérience sur Prelude

StormShield v4.0 StormShield - Version 4.0 Presentation OSSIR 10 juillet 2006

WIFI (WIreless FIdelity)

VPN TLS avec OpenVPN. Matthieu Herrb. 14 Mars 2005

Le filtrage de niveau IP

Virtualisation & Sécurité

Installation d un serveur virtuel : DSL_G624M

Plan. Rappels sur Netflow v1 v8. Netflow v9. Collecteur UTC «IPFlow» Cisco IOS : Implémentation de Netflow IPv6

Introduction. Adresses

TP Linux : Firewall. Conditions de réalisation : travail en binôme. Fonctionnement du parefeu Netfilter. I Qu est ce qu'un firewall?

avec Netfilter et GNU/Linux

Techniques de contournement des firewalls personnels et protections

Chap.9: SNMP: Simple Network Management Protocol

Journée Josy/PLUME. Outils logiciels libres utiles à tout ASR SAMBA. Maurice Libes. Centre d'océanologie de Marseille UMS 2196 CNRS

PACK SKeeper Multi = 1 SKeeper et des SKubes

Sécurité de la ToIP Mercredi 16 Décembre CONIX Telecom

ERESI : une plate-forme d analyse binaire au niveau noyau

Formations Evolix Catalogue

Filtrage IP MacOS X, Windows NT/2000/XP et Unix

Sécurité des réseaux Les attaques

LINUX - Sécurité. Déroulé de l'action. - 3 jours - Contenu de formation

INTRUSION SUR INTERNET

TP Déploiement de réseaux IP sous Linux et MS Windows sur une infrastructure virtualisée

Concept de machine virtuelle

SRS DAY: Problématique liée à la virtualisation

EPREUVE PRATIQUE DES TECHNIQUES INFORMATIQUES ACTIVITE N 1. Thème de l activité : Configuration d un firewall

OUTIL DE TRAVAIL COLLABORATIF

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet

HIMS Host Intrusion Monitoring System

VoIP - TPs Etude et implémentation

Réseaux. Moyens de sécurisation. Plan. Evolutions topologiques des réseaux locaux

Audits Sécurité. Des architectures complexes

TER Réseau : Routeur Linux 2 Responsable : Anthony Busson

Règles et paramètres d'exploitation de Caparmor 2 au 11/12/2009. Pôle de Calcul Intensif pour la mer, 11 Decembre 2009

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

CONFIGURATION FIREWALL

Conception et réalisation d uned architecture tolérant les intrusions pour des serveurs Internet

SECURITE. Figure 1. Incident réseau, source CERT. Nombre. Sécurité

FILTRAGE de PAQUETS NetFilter

Firewall IDS Architecture. Assurer le contrôle des connexions au. Sécurité 1

Installer et configurer un réseau local Ethernet commuté. Généralités 1 Utilisation d un Switch administrable D-Link DES-3226

RESEAUX TCP/IP: NOTIONS AVANCEES. Preparé par Alberto EscuderoPascual

Rootkit pour Windows Mobile 6

Environnements informatiques

Réseaux CPL par la pratique

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Comparatif de 7 firewalls / pare-feux gratuits

COMMANDES RÉSEAUX TCP/IP WINDOWS.

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server

Topologies et Outils d Alertesd

ANSSI PROCEDURES DE REPORTING DES INCIDENTS AVEC LE CIRT RÔLES DES PARTIES PRENANTES 15/02/2014. SEMINAIRE DE Joly Hôtel

Prérequis. Résolution des problèmes WMI. Date 03/30/2010 Version 1.0 Référence 001 Auteur Antoine CRUE

Linux. Sécuriser un réseau. 3 e édition. l Admin. Cahiers. Bernard Boutherin Benoit Delaunay. Collection dirigée par Nat Makarévitch

Ici se présente un petit récapitulatif de ce qu il se passe sur le réseau : les connexions bloquées, le matériel du boitier, les mises à jour, etc.

Dynamic Host Configuration Protocol

Mon Sommaire. INEO.VPdfdf. Sécurisations des accès nomades

Mandataires, caches et filtres

Configuration automatique

Mobilité, quand tout ordinateur peut devenir cheval de Troie

Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A. TP réseau firewall

LINUX REDHAT, SERVICES RÉSEAUX/INTERNET

Cours de sécurité. Pare-feux ( Firewalls ) Gérard Florin -CNAM - - Laboratoire CEDRIC -

Procédure d utilisation et de paramétrage (filtrage) avec IPFIRE

Figure 1a. Réseau intranet avec pare feu et NAT.

Firewall et NAC OpenSource

Découvrez notre solution Alternative Citrix / TSE

Développement d un ver informatique grâce propagation au sein d un réseau de machines

Temps Réel. Jérôme Pouiller Septembre 2011

La supervision des services dans le réseau RENATER

Programme formation pfsense Mars 2011 Cript Bretagne

Transcription:

Backdoors furtives et autres fourberies dans le noyau Arnaud Ebalard <troglocan@droids-corp.org> Pierre Lalet <pierre@droids-corp.org> Olivier Matz <zer0@droids-corp.org>

Les 45 prochaines minutes... Injection de code Récupération de données Emission de trames Interaction Furtivité

Les intervenants Un administrateur augmenter le niveau de sécurité HIDS avancé Un pirate, pour agir avec... plus de discrétion plus de pouvoir

Le noyau Interface entre le matériel et les processus Coordination des processus Gestion de l accès aux ressources Passage obligé des E/S

Injection de code

Patch des sources Nécessité : sources configuration redémarrage Public visé : l administrateur

LKM Code chargé dynamiquement pour étendre les fonctionnalités du noyau Développement simple Relative furtivité Pas forcément autorisé

/dev/kmem (1/2) Accès userland à l espace noyau Données binaires difficiles à manipuler, symboles non résolus, allocation mémoire. Sensibilité au reboot Pas forcément accessible

/dev/kmem (2/2) Recherche des fonctions read et write (par le début de leur code) Recherche de la structure composée de leurs adresses read write Table des appels systèmes

Conclusion Patch : simple, furtif, réservé aux admin. LKM : simple, moins furtif, parfois impossible. /dev/kmem : très technique, accessibilité aléatoire. Patch du binaire (complément des attaques dynamiques)

Récupération de données

User Space Noyau Matériel processus 1 Appels systèmes VFS 1 FS Drivers Disque dur Disque dur processus 2 Pile réseau Carte réseau Carte réseau processus 3 Gestion mémoire Mémoire

User Space Noyau Matériel processus 1 Appels systèmes VFS FS 2 Drivers Disque dur Disque dur processus 2 Pile réseau Carte réseau Carte réseau processus 3 Gestion mémoire Mémoire

User Space Noyau Matériel processus 1 Appels systèmes VFS FS Drivers Disque dur Disque dur 3 processus 2 Pile réseau Carte réseau Carte réseau processus 3 Gestion mémoire Mémoire

User Space Noyau Matériel processus 1 Appels systèmes VFS FS Drivers Disque dur Disque dur processus 2 Pile réseau 4 Carte réseau Carte réseau processus 3 Gestion mémoire Mémoire

User Space Noyau Matériel processus 1 Appels systèmes VFS FS Drivers Disque dur Disque dur processus 2 5 Pile réseau Carte réseau Carte réseau processus 3 Gestion mémoire Mémoire

Hook d appel système Version 1 : simple Hook intéressant : read, write... Simplicité Furtivité limitée Nécessite l accès à la table

read faux_read Table des appels systèmes Linux : syscall_handler_t *sys_call_table[ ]; BSD : struct sysent sysent[ ];

Hook d appel système version 2 : JUMP Aucune modification de la table Recodage obligatoire de la routine Dépendance vis-à-vis de l architecture Furtivité accrue

Avant read Après J U M P read faux_read

Interruptions Retrouver l adresse de l IDT Fournir l adresse de notre routine Réalisable par /dev/kmem ou LKM Très bas niveau, extrêmement technique, non portable

Conclusion Larges possibilités de hooks Nombreuses techniques Furtivité variable

Emission de trames

Juste avant le driver Allocation mémoire Remplissage de la structure représentant la trame Checksum Mise en queue et émission

m_data MHLEN m_hdr pkthdr MH_databuf m_data m_len pktlen Headers réseau m_flags = M_PKTHDR (ethernet + IP + UDP) m_next libre m_next m_data MLEN m_hdr m_data m_len m_next M_databuf Données libre m_next NULL

s = splnet(); /* If output queue is already full, we drop the packet */ if (IF_QFULL(ifq)) { m_freem(m); return -1; } /* Else we can enqueue our mbuf */ IF_ENQUEUE(ifq, m); /* If interface is active, we can start sending */ if (!(ifp->if_flags & IFF_OACTIVE)) (*ifp->if_start)(ifp); splx(s);

Conclusion Pas de difficulté technique majeure Bas niveau, i.e. au plus proche du driver Furtivité (considérée plus tard)

Interactions

Interaction Masquer flux réseau fichier processus Récupération de fichiers Emission de trafic réseau

Conclusion Diminution de la furtivité Valeur ajoutée Attaques génériques

Furtivité

Locale Masquer la présence d un module Réseau : masquer le trafic entrant/sortant bpf pile réseau

Distante NIDS p0f logs firewall snort Penser au retour Trafic légitime

Masquage de trafic Pile réseau BPF for (d = bp->bif_dlist; d!= 0; d = d->bd_next) { // ++d->bd_rcount; Driver Carte réseau if(filter(pkt, pktlen)) { ++d->bd_rcount; slen = bpf_filter(d->bd_filter, pkt, pktlen, pktlen); if (slen!= 0) catchpacket(d, pkt, pktlen, slen, memcpy); } }

Conclusion Capacité technique de l attaquant Paranoïa et capacités de l adversaire Architecture réseau

Prévention Limiter l accès aux symboles strip /bsd System.map Interdire les modules Intégrité de l image du noyau Limiter les accès à /dev/kmem Surveillance du traffic Surveiller les reboot

Des questions?

Remerciements Laurent Oudot (recette de cuisine) Fred, Phil et Serpillière pour la relecture Team RSTACK You guys rule!