CRUSOE Researches Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés. A new nidps open source project
CRUSOE Researches CRUSOE Researches sponsorise un nouveau projet de détection et de prévention dintrusion Projet Open Source (licence GPL2) Basé sur la librairie Ethereal (maintenant Wireshark) api C / Glib Lutilisation de la librairie Ethereal nous permets de bénéficier réassemblage du trafic incomparable tcp/udp/icmp/ip une centaine de « dissecteurs » layer2-3-7-[8] travaille sur ethernet, umts, wifi, mpls … extraction de pièce jointe comme smtp mime, http gzip, voip.au … Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches Ambitions du projet : Comblé les problèmes de parsing actuelle (uricontent hexa) Améliorer les règles de parsing actuelle (règles « et » « ou ») Faire de la détection heuristic (sans préciser les ports comme DPD de bro) Détection danomalie protocolaire sur une centaines de protocoles ! (snort v2.6 en contiens 7, bro v1.2.1 en contiens 24) SANS AUCUNE REGLE DE DETECTION ! (malformed keyword dans azwalaro) Décrypter un flux ssl (avec la clef privé) a la volée (dépend bien sur du débit/nombre de cnx) en cours pour ipsec Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches o Développement en cours : new rule parser new module output on wireshark (syslog/unified/prelude) o Futur Développement : update uri parsing with unicode/utf8/double encoding… use hash algorythm for better performance convert wireshark lib to module loaded on use enhanced wireshark dissector ids+fw=ips added on futur version Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches o Démonstrations sur certains filtres de détection (1) Un fichier pcap contient une vraie requête http et un padding: GET / HTTP/1.0\r\n \n/test.pl\r\n Une règle de détection au format snort: alert tcp any any -> any 80 (msg:test1; flow:to_server,established; uricontent:/test.pl; sid:1;) PB: Snort trouve la chaine test.pl alors quelle nest pas dans luri ! Une règle de détection au nouveau format Azwalaro : tcp.port==80 and lower(http.request.uri) contains /test.pl Ok Azwalaro ne trouve pas la chaine test.pl dans luri Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches o Démonstrations sur certains filtres de détection (2) Un fichier pcap contient une vraie requête http: GET / %253D%2525 HTTP/1.0\r\n Une règle de détection au format snort: alert tcp any any -> any 80 (msg:test2; flow:to_server,established; uricontent:|3D 25|; sid:2;) PB: Snort trouve la chaine hexa 3D 25 alors quelle nest pas dans luri ! (pb avec le parsing uricontent) Une règle de détection au nouveau format Azwalaro : tcp.port==80 and lower(http.request.uri) contains \x3D\x25 Ok Azwalaro ne trouve pas la chaine hexa dans luri Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches o Démonstrations sur les overflow avec Azwalaro: (1) Dans les cmd clients http: http.authbasic matches [^\n]{100} http.authorization matches [^\n]{100} http.host matches [^\n]{100} http.location matches [^\n]{100} http.referer matches [^\n]{100} http.request.method matches [^\n]{100} http.request.uri matches [^\n]{100} http.request.version matches [^\n]{100} http.user_agent matches [^\n]{100} Dans les réponses srv http: http.server matches [^\n]{100} Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches o Démonstrations sur les overflow avec Azwalaro: (2) Dans les cmd clients smtp: smtp.req.command matches [^\n]{10} Dans les paramètres clients smtp: (après la cmd client) smtp.req.parameter matches [^\n]{512} Dans les réponses du srv smtp: (overflow du client smtp) smtp.rsp.parameter matches [^\n]{128} Même chose pour le protocole ftp: ftp.request.command matches [^\n]{10} ftp.request.arg matches [^\n]{512} ftp.response.command matches [^\n]{128} Même chose pour le protocole dns: dns.qry.name matches [^\n]{100} dns.resp.name matches [^\n]{100} Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches o Démonstrations sur les overflow et divers avec Azwalaro: (3) Haut niveau avec les protocoles netbios/smb de windows : smb.access.delete ou smb.access.delete_child smb.account contains nessus Divers : aim.buddyname contains nessus aim.buddyname matches [^\n]{40} bootp.file matches [^\n]{100} cdp contains cisco hsrp.auth_data contains cisco Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.
CRUSOE Researches Présentation Azwalaro – – © Crusoe Researches 2007 tous droits réservés.