Détection de tunnels en périphérie du réseau



Documents pareils
Sécurité des réseaux Les attaques

Devoir Surveillé de Sécurité des Réseaux

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

GENERALITES. COURS TCP/IP Niveau 1

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

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

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

Le filtrage de niveau IP

SSH, le shell sécurisé

Rappels réseaux TCP/IP

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

Le Tunneling DNS. P.Bienaimé X.Delot P.Mazon K.Tagourti A.Yahi A.Zerrouki. Université de Rouen - M2SSI. 24 février 2011

Détection d'intrusions et analyse forensique

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

Guide de connexion Wi-Fi sur un hotspot ADP Télécom

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

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

L3 informatique TP n o 2 : Les applications réseau

Protection des protocoles

SSL. Secure Socket Layer. R. Kobylanski janvier version 1.1 FC INPG. Protocole SSL Application avec stunnel

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

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

Cours CCNA 1. Exercices

Les commandes relatives aux réseaux

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

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

Fonctionnement de Iptables. Exercices sécurité. Exercice 1

Administration réseau Firewall

Cisco Certified Network Associate

Couche application. La couche application est la plus élevée du modèle de référence.

PACK SKeeper Multi = 1 SKeeper et des SKubes

NetCrunch 6. Superviser

avec Netfilter et GNU/Linux

L3 informatique Réseaux : Configuration d une interface réseau

Les firewalls libres : netfilter, IP Filter et Packet Filter

Prototype de canal caché dans le DNS

LINUX REDHAT, SERVICES RÉSEAUX/INTERNET

Manuel des logiciels de transferts de fichiers File Delivery Services

Les clés d un réseau privé virtuel (VPN) fonctionnel

Tunnels. Plan. Pourquoi? Comment? Qu est-ce? Quelles solutions? Tunnels applicatifs ESIL INFO 2005/2006. Sophie Nicoud

ALOHA LOAD BALANCER METHODE DE CONTROLE DE VITALITE

Présentation du modèle OSI(Open Systems Interconnection)

Formation Iptables : Correction TP

Réseaux et protocoles Damien Nouvel

Introduction. Adresses

Menaces et sécurité préventive

(structure des entêtes)

Sécurité des réseaux Firewalls

Serveurs de noms Protocoles HTTP et FTP

Mettre en place un accès sécurisé à travers Internet

VPN. Réseau privé virtuel Usages :

Outils de l Internet

Proxy et reverse proxy. Serveurs mandataires et relais inverses

La sécurité périmètrique multi-niveaux. Un white paper de Daniel Fages CTO ARKOON Network Security

Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria

FILTRAGE de PAQUETS NetFilter

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT

Résolution des problèmes de connexion XDMCP aux hôtes UNIX et Linux

18 TCP Les protocoles de domaines d applications

Outils d administration

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

Services Réseaux - Couche Application. TODARO Cédric

USERGATE PROXY & FIREWALL. Protection exhaustive de réseau corporate, optimisation de trafic Internet, administration flexible

Protection exhaustive de réseau corporate, optimisation de trafic Internet, administration flexible

Tous les logiciels cités dans ce document sont des marques déposées de leurs propriétaires respectifs

FORMATION CN01a CITRIX NETSCALER

Mise en œuvre d une Gateway HTTP/HTTPS avec un serveur de Présentation en DMZ

CAHIER DES CLAUSES TECHNIQUES

Logiciel de connexion sécurisée. M2Me_Secure. NOTICE D'UTILISATION Document référence :

Groupe Eyrolles, 2006, ISBN : X

Culture informatique. Cours n 9 : Les réseaux informatiques (suite)

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

Exemple de configuration ZyWALL USG

CAS IT-Interceptor. Formation «Certificate of Advanced Studies»

Bee Ware. Cible de Sécurité CSPN. Validation Fonctionnelle Validation Fonctionnelle Bon pour application AMOA BEEWARE BEEWARE

Microsoft Internet Security and Acceleration Déploiement et gestion de Microsoft Internet Security and Acceleration Server 2000

Réseaux. 1 Généralités. E. Jeandel

LAB : Schéma. Compagnie C / /24 NETASQ

Protocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier

Sécurité des réseaux sans fil

Contrôle de la DreamBox à travers un canal SSH

Contrôle d accès Centralisé Multi-sites

Routeur Chiffrant Navista Version Et le protocole de chiffrement du Réseau Privé Virtuel Navista Tunneling System - NTS Version 3.1.

Packet Tracer : configuration des listes de contrôle d'accès étendues, scénario 1

Chapitre : Les Protocoles

Création d une connexion VPN dans Windows XP pour accéder au réseau local de l UQO. Document préparé par le Service des technologies de l information

Vulnérabilités et sécurisation des applications Web

But de cette présentation. Proxy filtrant avec Squid et SquidGuard. Serveur proxy. Serveur proxy. Hainaut P

Routeurs de Services Unifiés DSR-1000N DSR-500N DSR-250N

Caches web. Olivier Aubert 1/35

Gestion des incidents de sécurité. Une approche MSSP

Formations. «Produits & Applications»

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014

Linux sécurité des réseaux

GenIP 30i : Passerelle intelligente dédiée aux applications industrielles les plus critiques

Présentation du Serveur SME 6000

Transcription:

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet SSTIC 2006 Vendredi 2 juin 2006 Détection de tunnels en périphérie du réseau Guillaume Lehembre Alain Thivillon <Guillaume.Lehembre@hsc.fr> <Alain.Thivillon@hsc.fr>

Agenda Problématique des tunnels Différents types de tunnels (HTTP, HTTPS, ICMP, DNS) Détection de tunnels basée sur les journaux applicatifs Détection de tunnels en temps réel Moltunnel 2 / 19

Problématique des tunnels But des tunnels : contourner la politique de sécurité Accès à des protocoles non prévus Accès à des ressources non autorisées (réseaux, applications,...) Cacher ses actions (sites Web, mails, chat,...) Cadre : Réseau filtré, mécanismes de relayage Usage pratique des techniques de tunnels (non intrusif) non basé sur de «réels» canaux cachés (efficacité) Utilisation détournée de protocoles standards : HTTP, HTTPS, ICMP, DNS 3 / 19

Tunnels HTTP / HTTPS - 1 Les plus «simples» et les plus utilisés Méthodes de contournement : 1. Relayage arbitraire TCP dans CONNECT CONNECT unserveurssh.com:443 HTTP/1.0 LAN LAN Internet HTTP/1.0 200 Connection established SSH-2.0-OpenSSH_4.2 2. Utilisation de SSL Relais applicatif autorisant la méthode CONNECT sur le port 443/tcp Serveur cible $ socat tcp4-listen:2222 proxy:carbone.hsc.fr:unserveurssh.com:22 proxyport=8080 $ telnet carbone.hsc.fr 8080 Trying 192.70.106.49... Connected to carbone.hsc.fr. Escape character is '^]'. CONNECT unserveurssh.com:443 HTTP/1.0 HTTP/1.0 200 Connection established SSH-2.0-OpenSSH_4.2 $ ssh -p 2222 user@localhost debug1: Connecting to localhost [127.0.0.1] port 2222. debug1: Connection established. debug1: Remote protocol version 2.0, remote software version OpenSSH_4.2 4 / 19

Tunnels HTTP / HTTPS - 2 3. Requêtes HTTP classiques de type GET et/ou POST sur CGI ou directement dans les URL POST http://tun.hsc.fr:80/index.html?crap=1143719371 HTTP/1.1\r\n GET http://tun.hsc.fr:80/index.html?crap=1143719371 HTTP/1.1\r\n --- POST http://loophole.hsc.fr:80/display/mode/forum/minimize.asp HTTP/1.0\r\n --- POST http://firepass.hsc.fr:80/cgi-bin/fpserver.cgi HTTP/1.1\r\n LAN LAN Internet Relais applicatif HTTP/1.0 200 Connection established SSH-2.0-OpenSSH_4.2 Utilisation fréquente de mécanismes de polling Outils tunnels HTTP : GNU HTTPTunnel, LoopHole, Firepass Tête de tunnel HTTP contrôlée par l'attaquant Outils tunnels HTTPS : OpenVPN, Stunnel, SSLTunnel (HSC), SSL-Explorer, VPN SSL commerciaux, etc. 5 / 19

Tunnels HTTP commerciaux... Affichent clairement leurs intentions : IM, P2P, IRC, etc Fournisseurs de tunnels mettant à disposition leur propre tête de tunnel HTTP : HTTP Tunnel (http://www.http-tunnel.com) Hopster (http://www.hopster.com) Totalrc (http://www.totalrc.net) Versions gratuites limitées : Bande passante (~ 2 ko/s!) Temps 6 / 19

Tunnels ICMP Données arbitraires inclues dans la charge utile des requêtes ICMP Echo Request (type 8) et ICMP Echo Reply (type 0) Gestion de la connexion à l'aide de messages d'états Contenu habituel de la charge utile : informations temporelles Outils : Loki, PingTunnel, Skeeve, etc. Détection : quantité anormale de requêtes ICMP, analyse de la charge utile des requêtes... ICMP Echo Request, SSH unserveurssh.com LAN Internet SSH unserveurssh.com 7 / 19 ICMP Echo Reply, Tête de tunnel ICMP SSH unserveurssh.com contrôlée par l'attaquant Serveur cible

Tunnels DNS - 1 DNS internes permettant trop souvent de résoudre des adresses externes Considéré à tord comme un protocole «inoffensif» Données arbitraires pouvant être inclues dans le nom DNS recherché : les enregistrements A, TXT, KEY sont transmis de bout en bout dans la chaîne de serveurs DNS Usages courants : Enregistrements TXT utilisés dans SPF, enregistrements KEY dans DNSSEC Limitation : Certains serveurs DNS décompressent les paquets à la volée Question : Longueur totale < 253 caractères, 63 caractères par «.», base32 conseillé Réponses : paquet DNS < 512 bits au niveau IP pour éviter la fragmentation, base64 8 / 19

Parades : Tunnels DNS - 2 DNS interne, seul le relais applicatif doit pouvoir interroger le DNS externe Filtrage des requêtes DNS et de leur nombre Utilisation de plusieurs DNS avec ajustement TTL (problématique du cache DNS Windows dans le cas des HotSpot publics...) Outils : NSTX, Oxyman; DNS2TCP (HSC), etc. Standard query TXT 9af[...]abs.dns.hors-service.org SSH unserveurssh.com LAN LAN Internet SSH unserveurssh.com WAN Serveur DNS résolvant les adresses externes Standard query response TXT 7ac[...]grv.dns.hors-service.org Serveur DNS contrôlé par l'attaquant, autoritaire pour la zone DNS interrogée (dns.hors-service.org) Serveur cible 9 / 19

10 / 19 Détection de tunnels - Journaux Détection «à postériori» Examen des journaux : User-Agent inconnu Volume de données échangées Nombre de «hits» Ecart type entre les requêtes (journaux Bind) etc. Limites : Pas d'analyse protocolaire Durée des connexions TCP, début de connexion TCP Information parcelaires (exemple SQUID: pas volume uploadé) Solution : Détection de tunnels en temps réel

Détection de tunnels - 1 Examen du trafic HTTP Méthode HTTP inconnue En-têtes HTTP incorrects ou incomplets (Absence du champ Host, entêtes très longs, Content-Length incorrect,...) User-Agent inconnu Réponse du serveur incorrecte (version HTTP) Examen HTTPS Méthode CONNECT utilisée avec une destination numérique (les certificats SSL sont basés sur des FQDN) ou sur un port inhabituel. Absence de champ Host sur la méthode CONNECT Trafic non-ssl sur le port 443 Certificats suspects 11 / 19

Détection de tunnels - 2 Détection «statistiques» basiques Durée de la connexion : les connexions HTTP/HTTPS durent rarement plus de 10 minutes, à corréler avec la bande passante disponible et le trafic. Les protocoles comme HTTP/HTTPS/POP/SMTP sont très asymétriques: Émission ou réception de gros volumes de données, mais rarement les deux Ratio UPLOAD/DOWNLOAD ou DOWNLOAD/UPLOAD < 0.3 Taille moyenne des paquets : une vraie connexion va «bourrer» les segments TCP : des paquets de taille faible sont signe d'une connexion probablement interactive 12 / 19

Détection de tunnels - 3 Forme temporelle des connexions suivant chaque protocole HTTP/HTTPS: Requête/Réponse... Requête/Réponse SMTP : Init/Echanges/Données Unidirectionnelles POP : <RETR >DATA <RETR >DATA... Examen global des connexions vers chaque serveur Nombre, Durée, Volume dans chaque sens : création d'une liste de toptens accédés par les utilisateurs, et recherche des nouveautés Écart-type entre chaque requête afin de détecter les requêtes très répétitives Détection de MSN dans HTTP, ou de tunnels comme LoopHole 13 / 19

Exemples 833 Nb Paquets 650 600 550 500 450 400 350 300 250 200 150 100 50 0 14 / 19 613 305 63 39 27 1 1 5 1 7 100 200 300 400 500 600 700 800 900 1000 1100 1200 1300 1400 1500 70 65 60 55 50 Nb Serveurs 223 2 2 2 0 0.01 0.05 0.1 0.2 0.3 0.6 0.8 1 Ratio U/D ou D/U Nb Conns 45 40 35 33 30 25 24 20 15 10 5 2 3 0 0 0 0.01 0.1 1 10 100 1000 10000 Ecart Type 67

Moltunnel - 1 Outil sous Unix destiné à détecter «des» tunnels Pas de prétention à l'exhaustivité, mais tentative de généricité (par rapport à une approche purement IDS par patterns) Contournements probablement faciles Détection «sur le fil» par écoute réseau Nécessité de réassembler les sessions TCP : utilisation de libnids A placer par exemple entre les utilisateurs et le relais HTTP Examen des connexions HTTP, des connexions SSL, des connexions Proxy et détection des anomalies en temps réel Écriture d'un fichier plat permettant des analyses statistiques plus fines hors ligne et pour stockage 15 / 19

Moltunnel - 2 : Exemples Détection d'un SSH sur le port 443 > 12:13:58 192.70.106.104:53616->80.65.234.114:443 : Invalid SSL trafic (Server Banner) > 12:13:58 192.70.106.104:53616->80.65.234.114:443 : Invalid SSL client Hello Détection de User-Agents non conformes > 12:18:20 192.70.106.104:53641->192.70.106.49:8080 : Bad User- Agent (Maverick-HttpClient/1.0) for: CONNECT www.rominet.net:8443 Détection de trafic interactif > 12:20:26 192.70.106.104:53543->82.123.113.221:22 : > Long Connection 1917018 ms > 12:20:26 192.70.106.104:53543->82.123.113.221:22 : > Small Packets 140.0 / 57.5 Détection de SKYPE > 12:20:26 192.16:45:24 192.70.106.104:56478->192.70.106.49:8080 : CONNECT all numeric : 212.72.49.141:443 16 / 19

Moltunnel - 3 : Exemples Détection de VPN SSL (SSLExplorer) > 13:04:18 192.70.106.104:53641->192.70.106.49:8080 : > Wrong Ratio 0.7753 (21189 16428) > 13:04:18 192.70.106.104:53641->192.70.106.49:8080 : > Long Connection 2758326 ms Détection de MSN, LoopHole et Firepass par examen de l'écart-type: 192.70.106.101-207.46.1.4 19407 978 19.84 2.87 192.70.106.104-192.70.106.166:8080 675 854 0.79 0.32 192.70.106.103-smash.dyndns.org:80 1260 1119 1.13 0.85 17 / 19

Moltunnel - Problèmes LIBNIDS très peu fiable Détection des fins de session Windows (FIN-ACK simultané) Problème des fenêtres > 64Ko Attention : perte d'un paquet Connexion plus analysable Ecrire un parseur HTTP fiable et exhaustif est une tâche difficile HTTP/1.1 + Transferts chunked, mod_gzip,... Repartir de Snort? Certains tunnels restent difficiles à détecter Exemple : GnuHTTPTunnel : un POST en écriture, un GET en lecture, fermeture après quelques minutes ou 64Ko... Quelques faux positifs, nombre incroyable de User-Agents visibles dans un trafic standard (XP, Acrobat,...) 18 / 19

Idées en l'air Conclusions Réseaux de neurones Transformées de Fourier A coupler avec un IDS analysant les protocoles Problèmes : volumes de données à traiter, mémoire, analyse pendant la capture,... Moltunnel Disponible au second semestre sur http://www.hsc.fr/ Solutions commerciales Les vendeurs de firewall sont également vendeurs de VPN SSL... Coupure de SSL : bonne solution? (confidentialité, certificats clients,...) Le «Web 2.0» (haha) change les métriques 19 / 19