36
ADDi Réunion de travail 02 avril 2008 : Analyse de données brutes (30 premiers Go) fournies par Supélec-Rennes

Réunion de travail 02 avril 2008 : Go) fournies par ... · Outil : Arbre de décision C4.5 Résultats : 99.99% trafic http normal Quelques « comportements similaires » à des scans

Embed Size (px)

Citation preview

ADDiRéunion de travail 02 avril 2008 :

Analyse de données brutes (30 premiers Go) fournies par Supélec-Rennes

Objectifs

� Analyse et vérification des données «a priori » normales fournies par Supélec-Rennes

� Comparaison des analyses réalisées par CRIL et ENST-Bretagne

Préparation de données

010010011100000100011011001001100……110000110000110000110000110000……001011110000110000110000111001……

Trafic réseau brut (on-line ou off-line)

Formatage

Connexions

Formatage

1.098,tcp,smtp,SF,1676,333,0,0,0,0,0,1,0...0.002,udp,private,SF,105,146,0,0,0,0,...0.001,tcp,http,SF,298,321,0,0,0,0,0,1,...

DétectionNormalDoSDoSNormalU2R

ApprentissageDétectionNormalDoSDoSNormalU2R

Apprentissage

Retour sur les premières expérimentations

� Données brutes : Formatage de 30 % (30 premiers fichiers..) des données brutes de Supélec

� Attributs construits : 41 attributs KDD’99

� Données formatées obtenues : 1713213 connexions

Expérimentations

� Apprentissage : KDD’99 (Darpa’98 formatée), Darpa’99, Données a priori normale de Supélec

� Test : Données a priori normale de Supélec, attaque http de Supélec

� Formatage : Outil de formatage développépar CRIL

� Classificateur : Arbre de décision C4.5� Vérification : Snort-2.8.0

Expérimentations (1)

1. Détection d’attaques dans les données « a priori normales » de Supélec

1.a) Apprentissage sur KDD’99 => Test sur données formatées Supélec

1.b) Apprentissage sur données formatées Darpa’99 => Test sur données formatés Supélec

Expérimentations (2)

2. Détection d’attaques dans les attaques http fournies par Supélec

Apprentissage sur trafic http de KDD’99, Darpa’99, http normal de Supélec => Test sur les attaques http de Supélec

Expérimentations (1.a)

Training : KDD’99 Testing : Données Supélec

Expérimentations (1.b)

Training : Darpa’99 Testing : Données Supélec

Expérimentation 1.a & 1.b

� Majorité du trafic classé « normal »� Majorité des attaques détectées: Scan &

DoS� Majorité des attaques externes� Quelques attaques R2L & U2R détectées

(probablement faux positifs)� Fausses alertes dues à la différences du

trafic d’apprentissage et celui du test (distribution des services, débits réseaux, etc.)

Expérimentation 1.a & 1.b

Exemples d’attaques détectées

….….….….

77.67.44.10, 77.67.121.102,209.170.120.43,

..

193.54.192.21DoSMay 25, 2007 17:58:03

211.48.168.102193.54.192.xScan(portsweep)

May 25, 2007 17:11:13.56

213.201.45.11193.54.192.xScan (ipsweep)May 26, 2007 09:38:43

AttaquantVictimeCatégorieTimestamp

Vérification avec Snort

� Les données utilisées dans les expérimentations 1 & 2 ont étéanalysées avec Snort-2.8.0

� Snort a généré en moyenne 4000 alertes par jours

� Attaques détectées: Slammer, ICMP PING NMAP, …

Vérification avec Snort

Exemples d’alertes générées par Snort� 05/28-10:23:01.430037 ,1,2004,7,MS-SQL Worm

propagation attempt OUTBOUND,UDP, 61.153.241.110,1103,193.54.192.150,1434,0…

� 05/27-21:12:44.263204 ,1,469,4,ICMP PING NMAP,ICMP,64.214.103.100,,193.54.192.21,..

� 05/28-01:49:31.425710 ,122,3,0,(portscan ) TCP Portsweep,,67.36.196.90,,193.54.192.97,

� 05/26-16:48:50.500022 ,1,1149,13,WEB-CGI count.cgi access,TCP,41.221.17.167,19833,193.54.192.21,80,

� ...

Vérification avec Snort

� Résumé des alertes générées durant les 10 premiers jours (log1 à log10)

Expérimentation (2)

� Training : Uniquement les connexions http (normale+attaques) de KDD’99, Darpa’99 et trafic http normal de Supélec

� Test : Attaques http de Supélec

Expérimentation (2)

� Quatre connexions sont détectées attaque back (de type DoS) (Src_bytes>4 Ko)

� Deux connexions (il s’agit de l’attaque login-http) ont été détectées land: IP src = IP dst (sauf que c’est l’adresse loopback) => La simulation de l’attaque s’est faite sur la même machine.

Nouvelles expérimentations

Point de départ� Les attaques http dans les premières

expérimentations n’ont pas été détectées car les attributs KDD’99 ne sont pas conçus pour http

=>Concevoir de nouveaux attributs pour le trafic http

Ref: Benferhat Salem and Tabia Karim, Classification features for detecting Server-side and Client-side Web attacks , SEC 2008, Milano, Italy. A apparaître.

Nouvelles expérimentations

� Objectif : Analyse de trafics http� Préparation de données : Extraction

d’attributs http� Formatage du trafic http� Apprentissage & détection d’attaques

http à l’aide du classifieur C4.5

Attributs http

� Objectif : Détecter les attaques contre les applications serveurs (Apache, IIS, CGI, SGBD,…) et les applications clientes (navigateurs, …)

� Méthodologies : Analyser la majoritédes attaques => extraire les attributs pouvant révéler ces attaques

Attributs http

Attaques analysées

� Input validation attacks (Buffer-overflow, SQL injection, command injection, Directory traversal, Cross Site Scripting, …)

� Web authentication/authorization attacks(session hijacking, brute-force, …)

� Web site scan and flooding (scan de site, recherche de vulnérabilités, abus de ressources, …)

Attributs http proposés

� Request general features� Request content features� Response features� Request history features

Request general features

Request content features

Response features

Request history features

Formatage du trafic http

Connexion http => vecteur d’attributs

329,41,1,0,.htm,0,0,304,0.000697,none,none,0,0,0,0,0,0,0,0,1,0,11.79,1.00,0.00,normal301,52,1,0,other,0,0,200,0.004531,none,none,1,0,0,0,0,0,0,0,2,0,1.73,1.00,0.00,normal369,11,1,0,.txt,0,0,404,0.000839,none,none,1,0,0,0,0,0,0,0,0,0,27.90,0.00,0.00,normal391,33,1,0,.htm,0,0,200,0.001127,none,none,1,0,0,0,0,0,0,0,1,0,2.56,1.00,1.00,normal478,30,1,0,.htm,0,0,200,0.001161,js,none,1,0,0,0,0,0,0,0,2,0,0.91,1.00,0.50,normal311,34,1,0,.gif,0,0,200,0.001105,none,none,0,0,0,0,0,0,0,0,3,0,0.28,1.00,0.33,normal464,26,1,0,.htm,0,0,200,0.001458,js,none,1,0,0,0,0,0,0,0,4,0,11.64,1.00,0.25,normal307,34,1,0,.gif,0,0,200,0.001123,none,none,0,0,0,0,0,0,0,0,5,0,0.41,1.00,0.20,normal306,33,1,0,.js,0,0,200,0.001026,none,cookie_rd,0,0,0,0,0,0,0,0,6,0,0.00,1.00,0.17,normal294,21,1,0,.gif,0,0,200,0.000740,none,none,0,0,0,0,0,0,0,0,7,0,0.33,1.00,0.14,normal295,22,1,0,.gif,0,0,200,0.000715,none,none,0,0,0,0,0,0,0,0,8,0,0.01,1.00,0.12,normal

� Trafic http normal: trafic http Supélec� Attaques http Supélec� Attaques simulées :

- Majorité des attaques de [Ingham2007] (SQLI, buffer-overflow, directory traversal, CSS, …)- Scan de vulnérabilités avec w3af - Web Application Attack and Audit Framework (http://w3af.sf.net/)- Flooding

[Ingham2007] K. L. Ingham, Anomaly Detection for HTTP Intrusion Detection: Algorithm Comparisonsand the Effect of Generalization on Accuracy, PhD thesis, B.S. cum laude, University of New Mexico & M.S., University of New Mexico, May 2007.

Expérimentation 1 sur trafic http a priori normal

Expérimentation 1 sur trafic http a priori normal

� Apprentissage : 10 premiers fichiers formatés + attaques simulées (SQLI, CSS, buffer-overflow, scan de vulnérabilités, …)

� Test : 20 Go restant� Outil : Arbre de décision C4.5

Résultats :� 99.99% trafic http normal� Quelques « comportements similaires » à des scans

de site ou flooding� Quelques chaînes suspectes (directory traversal)

Expérimentation 1 sur trafic http a priori normal

� Exemples d’attaques détectées: scan de site, flooding

Expérimentation 1 sur trafic http a priori normal

� Attaques détectées: directory traversalGET /ren/perso/mmathieu/menage/resultats/dampierre_ 2003/..%5Cdampierre_2002%5Cdressage_dampierre02.htm l HTTP/1.1Host: www.supelec-rennes.frConnection: Keep-aliveAccept: */*From: googlebot(at)googlebot.comUser-Agent: Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)Accept-Encoding: gzip

HTTP/1.1 404 Not FoundDate: Tue, 29 May 2007 06:34:00 GMTServer: Apache/2.0.47 (Fedora)Content-Length: 381Connection: closeContent-Type: text/html; charset=iso-8859-1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><html><head><title>404 Not Found</title></head><body><h1>Not Found</h1><p>The requested URL /ren/perso/mmathieu/menage/resultats/dampierre_2003/..\dampierre_2002\dressage_dampierre02.html was not

found on this server.</p><hr /><address>Apache/2.0.47 (Fedora) Server at www.supelec-rennes.fr Port 80</address></body></html>

Expérimentation 2 : Détection des attaques http de Supélec

� Apprentissage : 10 premiers Go formatés + attaques http (SQLI, CSS, buffer-overflow, scan de sites, …)

� Test : Attaques http fournies par Supélec-rennes

Xwrite-fs-http3

Xlogin-http

Xexecute-http

Xcross-http

XXXbibtexRawHTTP

NormalAttaqueFicher

Expérimentation 2 sur attaques http de Supélec

� Exemple d’attaque détectée: SQLI

POST /bibtex/index.php HTTP/1.1Host: localhostConnection: closeContent-Length: 43Content-Type: application/x-www-form-urlencodeduser=admin&pwd=cacac") OR (""="&login=Login

Expérimentation 2 sur attaques http de Supélec

� Exemple d’attaque détectée: Directory traversal

<td valign="center" align="center"><A HREF="upload/../../../../../../../../tmp/test.sh"

TARGET="window">Paper View</A></td><td class="vide" style="width: 2px;"></td></tr>

Expérimentation 2 sur attaques http de Supélec� Fausses alertes: Nombre important de

paramètresGET /bibtex/databasecomplexsearch.php?bibtexEntryType=article&bibtexCitation=&author=&title=

&journal=year=&volume=&number=&pages=&month=&note=&url=&keywords=P2P&file=&confidential=&comments=&Search=Search HTTP/1.1

Host: 192.168.0.47User-Agent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.0.4) Gecko/20060406 Firefox/1.5.0.4 (Debian-

1.5.dfsg+1.5.0.4-1)Accept:

text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3Accept-Encoding: gzip,deflateAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7Keep-Alive: 300Connection: keep-aliveReferer:http://192.168.0.47/bibtex/databasecomplexsearch.php?bibtexEntryType=article&bibtexCitation=

&author=&title=&journal=&year=&volume=&number=&pages=&month=&note=&url=&keywords=p2P&file=&confidential=&comments=&Search=Search

Cookie: PHPSESSID=61297143699f7741e13a598dafb7fad2

Expérimentation 2 sur attaques http de Supélec

� Attaques « classiques » détectées� Problème: Apprentissage sur trafic

entrant/sortant vers campus Supélec et analyse sur un trafic vers bibtexManager.

Analyse du trafic & attaques http de Supélec avec Snort

� Énormément d’alertes de faibles priorités (robot.txt…)

� Quelques CSS, directory traversal…� Aucune des attaques http de Supélec

n’est détectée par Snort!

ConclusionsDonnées brutes de Supélec� Le trafic brute de Supélec n’est pas totalement normal:

il contient certainement plusieurs comportements suspects tel que les scans…

� Majorités des comportements suspects sont entrants.� Certaines attaques anciennes existent encore …

Attributs http� Pertinents pour détecter la majorité des attaques http

«classiques» et anomalies « grossières ». � Nécessité de cibler l’apprentissage sur le serveur

qu’on veut surveiller.