0
T´l´phones
                                ee
                          S´curit´ r´seau
                            e     ...
T´l´phones
                                         ee
                                   S´curit´ r´seau
                ...
T´l´phones
                                            ee
                                      S´curit´ r´seau
          ...
T´l´phones
                                            ee            Syst`me physique
                                    ...
T´l´phones
                                          ee            Syst`me physique
                                      ...
T´l´phones
                                        ee            Syst`me physique
                                        ...
T´l´phones
                                       ee            Syst`me physique
                                         ...
T´l´phones
                                          ee            Syst`me physique
                                      ...
T´l´phones
                                         ee            Syst`me physique
                                       ...
T´l´phones
                                           ee            Syst`me physique
                                     ...
T´l´phones
                                                         ee                   Syst`me physique
                ...
T´l´phones
                                                        ee                 Syst`me physique
                   ...
T´l´phones
                                          ee            Syst`me physique
                                      ...
T´l´phones
                                         ee            Syst`me physique
                                       ...
T´l´phones
                                            ee            Syst`me physique
                                    ...
T´l´phones
                                            ee            Syst`me physique
                                    ...
T´l´phones
                                          ee            Syst`me physique
                                      ...
T´l´phones
                                                ee            Syst`me physique
                                ...
T´l´phones
                                                ee            Syst`me physique
                                ...
T´l´phones
                                                ee            Syst`me physique
                                ...
T´l´phones
                                            ee            Architecture
                                      S´...
T´l´phones
                                           ee            Architecture
                                     S´cu...
T´l´phones
                                           ee            Architecture
                                     S´cu...
T´l´phones
                                           ee            Architecture
                                     S´cu...
T´l´phones
                                           ee            Architecture
                                     S´cu...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                              ee            Architecture
                                      ...
T´l´phones
                                         ee            Architecture
                                   S´curit´...
T´l´phones
                                        ee            Architecture
                                  S´curit´ r...
T´l´phones
                                        ee            Architecture
                                  S´curit´ r...
T´l´phones
                                        ee            Architecture
                                  S´curit´ r...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                          ee            Architecture
                                    S´curi...
T´l´phones
                                                ee            Architecture
                                    ...
T´l´phones
                                            ee            Protocole de signalisation
                          ...
T´l´phones
                                ee            Protocole de signalisation
                          S´curit´ r´s...
T´l´phones
                                          ee            Protocole de signalisation
                            ...
T´l´phones
                                       ee            Protocole de signalisation
                               ...
T´l´phones
                                          ee            Protocole de signalisation
                            ...
T´l´phones
                                           ee            Protocole de signalisation
                           ...
T´l´phones
                                          ee            Protocole de signalisation
                            ...
T´l´phones
                                        ee            Protocole de signalisation
                              ...
T´l´phones
                                         ee            Protocole de signalisation
                             ...
Upcoming SlideShare
Loading in...5
×

Slides Securite Voip Attaque Blackbox Nbareil Jssi Celar 2006

951

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
951
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
42
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Slides Securite Voip Attaque Blackbox Nbareil Jssi Celar 2006"

  1. 1. T´l´phones ee S´curit´ r´seau e ee ´ Ecoute t´l´phonique ee S´curit´ des syst`mes VoIP e e e Ou comment tester ses ´quipements. . . e Nicolas Bareil nicolas.bareil@eads.net EADS Corporate Research Center SSI Department Suresnes, FRANCE 18 Janvier 2007 GITSIS Nicolas Bareil S´curit´ des syst`mes VoIP e e e 1/35
  2. 2. T´l´phones ee S´curit´ r´seau e ee ´ Ecoute t´l´phonique ee Banc de torture Montage d’un banc d’essai Un Cisco Callmanager 4.x, Deux t´l´phones Cisco (7960 et 7970) ; ee ´ =⇒ Etude de type (( blackbox )) Boˆ noire ıte Configuration inconnue ; Version des firmwares inconnue ; Protocole peu connu ; Aucun manuel fourni. Nicolas Bareil S´curit´ des syst`mes VoIP e e e 2/35
  3. 3. T´l´phones ee S´curit´ r´seau e ee ´ Ecoute t´l´phonique ee Plan T´l´phones ee 1 Syst`me physique e D´marrage du t´l´phone e ee R´seau e S´curit´ r´seau e ee 2 Architecture TCP Hijacking Man in the middle ´ Ecoute t´l´phonique ee 3 Protocole de signalisation Protocole de transport I’m Listening To You Nicolas Bareil S´curit´ des syst`mes VoIP e e e 3/35
  4. 4. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Plan T´l´phones ee 1 Syst`me physique e D´marrage du t´l´phone e ee R´seau e S´curit´ r´seau e ee 2 Architecture TCP Hijacking Man in the middle ´ Ecoute t´l´phonique ee 3 Protocole de signalisation Protocole de transport I’m Listening To You Nicolas Bareil S´curit´ des syst`mes VoIP e e e 4/35
  5. 5. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Mat´riel pr´sent e e Avec un peu d’intuition et de curiosit´ : e Processeur MIPS ( ? ? ?) ; L’espace de stockage ne d´passe pas les 4 Mo ; e Ports switch et PC bridg´s par d´faut. e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 5/35
  6. 6. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Configuration r´seau : VLAN e VLAN & CDP R´cup´ration des informations sur les VLAN disponibles (voix ou ee donn´es) via le protocole propri´taire Cisco. e e En abuser, ca craint ¸ Les annonces CDP ne sont pas authentifi´es. e Sur un r´seau n’utilisant pas les VLAN, que se passe-t-il si on e annonce un faux VLAN ? =⇒ Cr´ation d’un r´seau virtuel ? e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 6/35
  7. 7. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Configuration r´seau : IP e Simplement R´cup´ration de l’adresse IP via une requˆte DHCP. ee e L’option 150 identifie l’adresse IP du serveur TFTP (le Call Manager en fait). Si aucune r´ponse DHCP, r´utilisation de la derni`re configuration e e e utilis´e. e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 7/35
  8. 8. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Chargement de la configuration T´l´chargement de fichier ee Les fichiers sont t´l´charg´s par TFTP au d´marrage uniquement. ee e e Plusieurs types de fichiers : Extension Description certificate trust list .tlv universal application loader .loads secure universal application loader .sbn configuration .cnf firmware non sign´ e .bin firmware sign´ e .sb2 Java .jar Nicolas Bareil S´curit´ des syst`mes VoIP e e e 8/35
  9. 9. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Rogue TFTP server Gros fichier toi mˆme ! e L’envoi d’un gros fichier entraine une fuite m´moire dans le e padding des trames Ethernet. Overflow ? M´moire non initialis´e ? e e >>> a.nzpadding() 0022 Ether / IP / UDP 10.0.1.11:49946 > 10.0.0.1:33572 / Raw / Padding ---> 4C 53 45 50 30 30 31 34 41 38 39 32 34 44 LSEP0014A8924D ... 0536 Ether / IP / TCP 10.0.1.11:50099 > 10.0.0.1:skinny S / Padding ---> 46 2E F. 0549 Ether / IP / TCP 10.0.1.11:50103 > 10.0.0.1:skinny S / Padding ---> 34 44 4D 0560 Ether / IP / TCP 10.0.1.11:50108 > 10.0.0.1:skinny S / Padding ---> 46 2E F. Nicolas Bareil S´curit´ des syst`mes VoIP e e e 9/35
  10. 10. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Fichier de configuration Le Call Manager, un serveur TFTP particulier Composition du nom de fichier : SEP.<adresse mac>.cnf.xml Les configurations ne sont pas stock´es mais g´n´r´es ` la vol´e ! e e ee a e Fichier XML ; Logique invers´e : 0 ⇒ vrai, 1 ⇒ faux ; e Aucune signature cryptographique pr´sente. e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 10/35
  11. 11. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e P00307010200.loads : Signature cryptographique ? 0100 0201 0102 0002 0194 0300 5B04 0027 ............[..’ 434E 3D73 6F6D 6553 6967 6E65 723B 4F55 CN=someSigner;OU 3D73 6F6D 654F 7267 556E 6974 3B4F 3D73 =someOrgUnit;O=s 6F6D 654F 7267 0005 0008 1234 5678 90AB omeOrg.....4Vx.. CDEF 0600 2343 4E3D 736F 6D65 4341 3B4F ....#CN=someCA;O 553D 736F 6D65 4F72 6755 6E69 743B 4F3D U=someOrgUnit;O= 736F 6D65 4F72 6700 0700 0F08 0001 0109 someOrg......... 0008 0A00 0100 0B00 0102 0C01 0041 4314 .............AC. Constatations E106 1D84 F20E 0B2A C4B7 F49B FF0D CCCC .......*........ 0F7C F714 B818 24AE 4B3B 049F 75F8 D32B .|....$.K;..u..+ T´l´charg´ ` ee ea BDAB 8AC0 7E5E EDFE 9D01 162F 8F65 1877 ....~^...../.e.w F092 FC14 A186 37AB 5388 B6AC 27FC 3702 ......7.S...’.7. chaque fois ; 8955 0F89 26DD 3FCF 72C2 3FE3 327F CB1D .U..&.?.r.?.2... 54BF E577 6DE4 03F8 8BB2 2393 3A21 F2B6 T..wm.....#.:!.. F07C 9321 0C3B 7382 08C8 B4DE 6AD7 BA4F .|.!.;s.....j..O Ressemble ` un a CE7A 8B4F 4FAB 8F7E E283 8699 05A9 C24D .z.OO..~.......M 3B3B 0E05 34C4 9074 9F5B 2482 8322 A084 ;;..4..t.[$..quot;.. certificat ; CC76 71CD C2E2 3619 1906 EC98 5FC6 63FC .vq...6....._.c. 6E74 A693 3E29 5E07 2E9B D3D0 9E44 6C79 nt..>)^......Dly Contient des noms 81D5 A272 C8B0 44D3 6718 9D7E 081F 81FC ...r..D.g..~.... 88A6 2BE3 92FB AC19 4A30 AAC8 27BC 71B7 ..+.....J0..’.q. de fichier. 5A55 8D29 5B87 F44B EC6B 8C84 3217 012A ZU.)[..K.k..2..* BA84 377C 717B F6F0 F42E 12BD 55C8 3C3B ..7|q{......U.<; E931 F33D EB80 E734 8E35 A93B E30E 0013 .1.=...4.5.;.... 5030 3033 3037 3031 3032 3030 2E6C 6F61 P00307010200.loa 6473 000D 5030 3033 3037 3031 3032 3030 ds..P00307010200 2E73 626E 0D0A 5030 3033 3037 3031 3032 .sbn..P003070102 3030 2E73 6232 0D0A 4C41 5F56 4552 5349 00.sb2..LA_VERSI 4F4E 3D50 4153 3330 3730 380D 0A ON=PAS30708.. Nicolas Bareil S´curit´ des syst`mes VoIP e e e 11/35
  12. 12. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Dissection de ces octets x01x00 ## d´but de section ? e x02x01x01 x02x00 ## d´but de section ? e x02x01x94 x03x00 ## d´but de section ? e x5b x04x00 ## d´but de section ? e x5c x27 ## longueur : 39 octets CN=someSigner;OU=someOrgUnit;O=someOrgx00 ## Certificat Autorit´e x05x00 ## d´but de section ? e x08 ## longueur : 8 octets x12x34x56x78x90xabxcdxef ## 123456789abcdef Pour l’endianess ? x06x00 ## d´but de section ? e x23 ## longueur : 35 octets CN=someCA;OU=someOrgUnit;O=someOrgx00 ## Certificat racine x07x00 ## d´but de section ? e x0f x08x00 ## d´but de section ? e x01x01tx00 x08nx00x01x00 x0b ## longueur : 11 octets x00x01x02x0cx01x00 ACx14xe1x06x1dx84xf2x0ex0b*xc4xb7xf4x9bxffr xccxccx0f|xf7x14xb8x18$xaeK;x04x9fuxf8xd3xbdxabx8axc0~^xedxf ex9dx01x16/x8fex18wxf0x92xfcx14xa1x867xabSx88xb6xac’xfc7x02x8 9Ux0fx89&xdd?xcfrxc2?xe32x7fxcbx1dTxbfxe5wmxe4x03xf8x8bxb2#x93: !xf2xb6xf0|x93!x0c;sx82x08xc8xb4xdejxd7xbaOxcezx8bOOxabx8f~xe2 x83x86x99x05xa9xc2M;;x0ex054xc4x90tx9f[$x82x83quot;xa0x84xccvqxcdxc 2xe26x19x19x06xecx98_xc6cxfcntxa6x93>^x07.x9bxd3xd0x9eDlyx81xd 5xa2rxc8xb0Dxd3gx18x9d~x08x1fx81xfcx88xa6xe3x92xfbxacx19J0xaa xc8’xbcqxb7ZUx8d[x87xf4Kxeckx8cx842x17x01*xbax847|q{xf6xf0xf4.x12xbdx55xc8 x3cx3bxe91xf3x3dxebx80xe74x8e5xa9x3bxe3x0ex00 ## MD5? 3C3BE931F33DEB80E7348E35A93BE30E x13 ## longueur : 19 octets P00307010200.loadsx00r ## nom de fichier avec octet nul P00307010200.sbnrn ## nom de fichier P00307010200.sb2rn ## nom de fichier LA_VERSION=PAS30708rn ## version du loader Nicolas Bareil S´curit´ des syst`mes VoIP e e e 12/35
  13. 13. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Chargement du firmware Extrait de strings P00307010200.sb2 (( The Moving Finger writes ; and, having writ, Moves on : nor all thy Piety nor Wit Shall lure it back to cancel half a Line, Nor all thy Tears wash out a Word of it. )) — Omar Khayyam D´sassemblage impossible e Processeur inconnu ; Format de fichier inconnu : ni ELF, ni PE, etc ; O` est le point d’entr´e du fichier ? u e Probl`me de l´galit´. e e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 13/35
  14. 14. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Scan des t´l´phones : TCP ee Ports TCP Interesting ports on CCM: Not shown: 1678 closed ports Maigre r´sultat mais. . . e PORT STATE SERVICE 80/tcp open tcpwrapped Beaucoup d’informations utiles sur le t´l´phone via l’interface ee Device type: VoIP phone Running: Cisco embedded Web. OS details: Cisco IP Phone 7970G Bien prot´g´ ee Protocoles Une fois la connexion TCP vers Interesting protocols on phoneA: le Call Manager ´tablie, on est e Not shown: 252 closed protocols PROTOCOL STATE SERVICE bloqu´. e 1 open icmp 2 open|filtered igmp 6 open|filtered tcp 17 filtered udp Nicolas Bareil S´curit´ des syst`mes VoIP e e e 14/35
  15. 15. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Jute pour rire. . . nmap Call Manager PORT STATE SERVICE VERSION 80/tcp open http Microsoft IIS webserver 5.0 102/tcp open iso-tsap? 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn 443/tcp open ssl/http Microsoft IIS webserver 5.0 445/tcp open microsoft-ds Microsoft Windows 2000 microsoft-ds 1433/tcp open ms-sql-s? 1720/tcp open tcpwrapped 2000/tcp open callbook? 2001/tcp open dc? 2002/tcp open globe? 3389/tcp open microsoft-rdp Microsoft Terminal Service 8009/tcp open ajp13? Non ! On ne tire pas sur les ambulances ! Nicolas Bareil S´curit´ des syst`mes VoIP e e e 15/35
  16. 16. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Jute pour rire. . . nmap Call Manager PORT STATE SERVICE VERSION 80/tcp open http Microsoft IIS webserver 5.0 102/tcp open iso-tsap? 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn 443/tcp open ssl/http Microsoft IIS webserver 5.0 445/tcp open microsoft-ds Microsoft Windows 2000 microsoft-ds 1433/tcp open ms-sql-s? 1720/tcp open tcpwrapped 2000/tcp open callbook? 2001/tcp open dc? 2002/tcp open globe? 3389/tcp open microsoft-rdp Microsoft Terminal Service 8009/tcp open ajp13? Non ! On ne tire pas sur les ambulances ! Nicolas Bareil S´curit´ des syst`mes VoIP e e e 15/35
  17. 17. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e Cisco Discovery Protocol c´d´p´. nom compos´ masculin. protocole de d´couverte r´seau eee e e e Protocole ferm´, propri´taire, utilis´ uniquement par les e e e ´quipements Cisco. e Espoir ? Impl´mentation d’un add-on CDP pour [scapy] : e Fuzzing possible ; Injection de fausses annonces ; Debugging du r´seau plus ais´. e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 16/35
  18. 18. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e scapy+cdp+skinny >>> sniffed[2].show() ###[ Cisco Discovery Protocol version 2 ]### vers= 1 Fuzzing ttl= 180 cksum= 0xf960 >>> CDPv2_HDR(str(fuzz(CDPv2_HDR()))).show() |###[ Device ID ]### ###[ Cisco Discovery Protocol version 2 ]### | type= Device ID vers= 251 | len= 25 ttl= 56 | val= ’ccm.papanoel.fr’ cksum= 0x4c7 |###[ Addresses ]### >>> send(fuzz(IP(dst=’callman...’) / CDPv2_HDR()) | type= Addresses , loop=1) | len= 17 | naddr= 1L | |###[ CDP Addresses ]### | | ptype= NLPID Packet of death ? | | plen= 0x1 | | proto= IP >>> killme=Dot3(dst=’01 :00 :0c :cc :cc :cc’) | | addrlen= 4 / LLC() / SNAP() / CDPv2_HDR() | | ipaddr= 10.0.0.1 / CDPMsgPower(power=0xffff) |###[ Software Version ]### >>> killme.show() | type= Software Version ###[ Cisco Discovery Protocol version 2 ]### | len= 33 ###[ Power ]### | val= ’Cisco Discovery Protocol v4.0’ type= Power |###[ Platform ]### len= 6 | type= Platform power= 65535 mW | len= 18 >>> sendp(killme, iface=’eth0’) | val= ’Win2000 Server’ ____________________ Nicolas Bareil S´curit´ des syst`mes VoIP e e e 17/35
  19. 19. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e scapy+cdp+skinny >>> sniffed[2].show() ###[ Cisco Discovery Protocol version 2 ]### vers= 1 Fuzzing ttl= 180 cksum= 0xf960 >>> CDPv2_HDR(str(fuzz(CDPv2_HDR()))).show() |###[ Device ID ]### ###[ Cisco Discovery Protocol version 2 ]### | type= Device ID vers= 251 | len= 25 ttl= 56 | val= ’ccm.papanoel.fr’ cksum= 0x4c7 |###[ Addresses ]### >>> send(fuzz(IP(dst=’callman...’) / CDPv2_HDR()) | type= Addresses , loop=1) | len= 17 | naddr= 1L | |###[ CDP Addresses ]### | | ptype= NLPID Packet of death ? | | plen= 0x1 | | proto= IP >>> killme=Dot3(dst=’01 :00 :0c :cc :cc :cc’) | | addrlen= 4 / LLC() / SNAP() / CDPv2_HDR() | | ipaddr= 10.0.0.1 / CDPMsgPower(power=0xffff) |###[ Software Version ]### >>> killme.show() | type= Software Version ###[ Cisco Discovery Protocol version 2 ]### | len= 33 ###[ Power ]### | val= ’Cisco Discovery Protocol v4.0’ type= Power |###[ Platform ]### len= 6 | type= Platform power= 65535 mW | len= 18 >>> sendp(killme, iface=’eth0’) | val= ’Win2000 Server’ ____________________ Nicolas Bareil S´curit´ des syst`mes VoIP e e e 17/35
  20. 20. T´l´phones ee Syst`me physique e S´curit´ r´seau e ee D´marrage du t´l´phone e ee ´ Ecoute t´l´phonique ee R´seau e scapy+cdp+skinny >>> sniffed[2].show() ###[ Cisco Discovery Protocol version 2 ]### vers= 1 Fuzzing ttl= 180 cksum= 0xf960 >>> CDPv2_HDR(str(fuzz(CDPv2_HDR()))).show() |###[ Device ID ]### ###[ Cisco Discovery Protocol version 2 ]### | type= Device ID vers= 251 | len= 25 ttl= 56 | val= ’ccm.papanoel.fr’ cksum= 0x4c7 |###[ Addresses ]### >>> send(fuzz(IP(dst=’callman...’) / CDPv2_HDR()) | type= Addresses , loop=1) | len= 17 | naddr= 1L | |###[ CDP Addresses ]### | | ptype= NLPID Packet of death ? | | plen= 0x1 | | proto= IP >>> killme=Dot3(dst=’01 :00 :0c :cc :cc :cc’) | | addrlen= 4 / LLC() / SNAP() / CDPv2_HDR() | | ipaddr= 10.0.0.1 / CDPMsgPower(power=0xffff) |###[ Software Version ]### >>> killme.show() | type= Software Version ###[ Cisco Discovery Protocol version 2 ]### | len= 33 ###[ Power ]### | val= ’Cisco Discovery Protocol v4.0’ type= Power |###[ Platform ]### len= 6 | type= Platform power= 65535 mW | len= 18 >>> sendp(killme, iface=’eth0’) | val= ’Win2000 Server’ ____________________ Nicolas Bareil S´curit´ des syst`mes VoIP e e e 17/35
  21. 21. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Plan T´l´phones ee 1 Syst`me physique e D´marrage du t´l´phone e ee R´seau e S´curit´ r´seau e ee 2 Architecture TCP Hijacking Man in the middle ´ Ecoute t´l´phonique ee 3 Protocole de signalisation Protocole de transport I’m Listening To You Nicolas Bareil S´curit´ des syst`mes VoIP e e e 18/35
  22. 22. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle ´ Equipements Un r´seau VoIP est constitu´ de : e e T´l´phones adapt´s ; ee e Call Manager. ´ Equipement IP =⇒ Pile IP =⇒ Complexe =⇒ Int´ressant ! e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 19/35
  23. 23. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle ´ Equipements Un r´seau VoIP est constitu´ de : e e T´l´phones adapt´s ; ee e Call Manager. ´ Equipement IP =⇒ Pile IP =⇒ Complexe =⇒ Int´ressant ! e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 19/35
  24. 24. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle ´ Equipements Un r´seau VoIP est constitu´ de : e e T´l´phones adapt´s ; ee e Call Manager. ´ Equipement IP =⇒ Pile IP =⇒ Complexe =⇒ Int´ressant ! e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 19/35
  25. 25. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle ´ Equipements Un r´seau VoIP est constitu´ de : e e T´l´phones adapt´s ; ee e Call Manager. ´ Equipement IP =⇒ Pile IP =⇒ Complexe =⇒ Int´ressant ! e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 19/35
  26. 26. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Pile TCP/IP correcte Robustesse de la pile TCP/IP G´n´ration des ISN : (( compl´tement al´atoire )), ee e e IP ID incr´mentaux, e Protection anti-DDoS : Bonne gestion des num´ros de s´quence : e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 20/35
  27. 27. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Pile TCP/IP correcte Robustesse de la pile TCP/IP G´n´ration des ISN : (( compl´tement al´atoire )), ee e e IP ID incr´mentaux, e Protection anti-DDoS : Requˆte/R´ponse ARP, e e SYN / SYN+ACK ; Bonne gestion des num´ros de s´quence : e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 20/35
  28. 28. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Pile TCP/IP correcte Robustesse de la pile TCP/IP G´n´ration des ISN : (( compl´tement al´atoire )), ee e e IP ID incr´mentaux, e Protection anti-DDoS : Bonne gestion des num´ros de s´quence : e e D´tection d’une d´synchronisation, e e R´´criture des donn´es non acquitt´es ; ee e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 20/35
  29. 29. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Pile TCP/IP correcte Robustesse de la pile TCP/IP G´n´ration des ISN : (( compl´tement al´atoire )), ee e e IP ID incr´mentaux, e Protection anti-DDoS : Bonne gestion des num´ros de s´quence : e e Pile TCP/IP d´riv´e d’un IOS ? ee Nicolas Bareil S´curit´ des syst`mes VoIP e e e 20/35
  30. 30. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle TCP Hijacking Avis de tempˆte e Blind TCP Hijacking non trivial. =⇒ L’insertion na¨ de paquets entraˆ un ACK-storm ! ıve ıne The lazy way Utilisons la possibilit´ de r´´crire des paquets non acquitt´s ! e ee e Anticiper la taille du prochain segment, 1 Envoyer le paquet, 2 R´ussir ` ce qu’il soit trait´ avant la r´ception du vrai paquet, e a e e 3 Attendre :) 4 Nicolas Bareil S´curit´ des syst`mes VoIP e e e 21/35
  31. 31. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Suite de paquets Comment anticiper ? Il y a constamment des suites de paquets : D´marrage, e Keep Alive, D´crochage du t´l´phone, e ee R´ception d’un appel, e ... Nicolas Bareil S´curit´ des syst`mes VoIP e e e 22/35
  32. 32. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Applications du TCP Hijacking Applications possibles : Modification des num´ros de t´l´phone compos´s, e ee e Impossible de modifier les options de s´curit´ ainsi, e e =⇒ Car modifi´es par le fichier de configuration (via TFTP) e Too easy ! L’utilisation de [scapy] et de son add-on Skinny facilite ce type d’interception. Nicolas Bareil S´curit´ des syst`mes VoIP e e e 23/35
  33. 33. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Applications du TCP Hijacking Applications possibles : Modification des num´ros de t´l´phone compos´s, e ee e Impossible de modifier les options de s´curit´ ainsi, e e =⇒ Car modifi´es par le fichier de configuration (via TFTP) e Too easy ! L’utilisation de [scapy] et de son add-on Skinny facilite ce type d’interception. Nicolas Bareil S´curit´ des syst`mes VoIP e e e 23/35
  34. 34. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Applications du TCP Hijacking Applications possibles : Modification des num´ros de t´l´phone compos´s, e ee e Impossible de modifier les options de s´curit´ ainsi, e e =⇒ Car modifi´es par le fichier de configuration (via TFTP) e Too easy ! L’utilisation de [scapy] et de son add-on Skinny facilite ce type d’interception. Nicolas Bareil S´curit´ des syst`mes VoIP e e e 23/35
  35. 35. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle ICMP Redirect Message ICMP Redirect Redirection d’un routeur par un autre routeur. Support de l’ICMP insuffisant dans [scapy], R´impl´mentation de l’ICMP, e e Mais les t´l´phones ne suivent pas les redirections ICMP :-( ee Nicolas Bareil S´curit´ des syst`mes VoIP e e e 24/35
  36. 36. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle ICMP Redirect Message ICMP Redirect Redirection d’un routeur par un autre routeur. Support de l’ICMP insuffisant dans [scapy], R´impl´mentation de l’ICMP, e e Mais les t´l´phones ne suivent pas les redirections ICMP :-( ee Nicolas Bareil S´curit´ des syst`mes VoIP e e e 24/35
  37. 37. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Modes Gratuitous ARP Gratuitous ARP C’est une r´ponse ARP non d´sir´e afin de mettre ` jour les caches. e ee a Les t´l´phones peuvent autoriser cette fonctionnalit´ ou non. ee e Avec GARP, toutes les attaques ARP sont possibles, Sans GARP, rien n’est possible Une fois la premi`re r´solution faite, l’entr´e du cache est fig´e ee e e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 25/35
  38. 38. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Modes Gratuitous ARP Gratuitous ARP C’est une r´ponse ARP non d´sir´e afin de mettre ` jour les caches. e ee a Les t´l´phones peuvent autoriser cette fonctionnalit´ ou non. ee e Avec GARP, toutes les attaques ARP sont possibles, Sans GARP, rien n’est possible Une fois la premi`re r´solution faite, l’entr´e du cache est fig´e ee e e Sauf une fois. . . Nicolas Bareil S´curit´ des syst`mes VoIP e e e 25/35
  39. 39. T´l´phones ee Architecture S´curit´ r´seau e ee TCP Hijacking ´ Ecoute t´l´phonique ee Man in the middle Comportement bonus >>> from Crypto.Hash import MD5 >>> hash=MD5.new() >>> def hashoir(x): ... hash.update(str(x.payload)) ... hex=hash.hexdigest() ... print x.sprintf(quot;%Ether.src% > %Ether.dst% / {UDP: UDP(%UDP.sport% > %UDP.dport%)}quot; ... quot;{TCP: TCP(%TCP.sport% > %TCP.dport%)} MD5=%squot; % hex) ... >>> map(hashoir, sniffedpkt) 00:14:A8:92:4D:3F > 00:0B:CD:AE:FC:27 / UDP(50036 > tftp) MD5=45733f4ea925a5d4c336287bdd7411c3 00:14:A8:92:4D:3F > 00:0B:AA:BB:CC:DD / UDP(50036 > tftp) MD5=45733f4ea925a5d4c336287bdd7411c3 00:14:A8:92:4D:3F > 00:0B:CD:AE:FC:27 / TCP(1570 > skinny) MD5=a20675fc6702ae5ebdb1b94dfdc10096 00:14:A8:92:4D:3F > 00:0B:AA:BB:CC:DD / TCP(1570 > skinny) MD5=a20675fc6702ae5ebdb1b94dfdc10096 00:14:A8:92:4D:3F > 00:0B:CD:AE:FC:27 / TCP(1570 > skinny) MD5=ca8f5150150d1090244d9a49d75868e9 00:14:A8:92:4D:3F > 00:0B:AA:BB:CC:DD / TCP(1570 > skinny) MD5=ca8f5150150d1090244d9a49d75868e9 Do you ? Vous ne voyez rien de bizarre ? Nicolas Bareil S´curit´ des syst`mes VoIP e e e 26/35
  40. 40. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You Plan T´l´phones ee 1 Syst`me physique e D´marrage du t´l´phone e ee R´seau e S´curit´ r´seau e ee 2 Architecture TCP Hijacking Man in the middle ´ Ecoute t´l´phonique ee 3 Protocole de signalisation Protocole de transport I’m Listening To You Nicolas Bareil S´curit´ des syst`mes VoIP e e e 27/35
  41. 41. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You Les protocoles mis en jeux Un r´seau VoIP est g´r´ via : e ee Un protocole de signalisation Un protocole de transport de la voix Nicolas Bareil S´curit´ des syst`mes VoIP e e e 28/35
  42. 42. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You Skinny Client Control Protocol Skinny : Utilise TCP/2000 Protocole binaire (contrairement ` SIP) a Champs ` positions fixes a Skinny : Le Yin ? Analyse difficile sans sp´cifications : e Plus de trois cents types de messages ; Champs compos´s complexes ; e Beaucoup de champs (( r´serv´s )) ; e e =⇒ Impl´mentation partielle dans [scapy] e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 29/35
  43. 43. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You Real Time Protocol : le Yang RTP : Le Yang Protocole simple et g´n´raliste standardis´ par la RFC 3550. ee e =⇒ Utilis´ par (presque) toutes les solutions VoIP e Les num´ros de ports ne sont pas fixes et sont assign´s e e dynamiquement via le protocole de signalisation. Nicolas Bareil S´curit´ des syst`mes VoIP e e e 30/35
  44. 44. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You Real Time Protocol : voix Apr`s les en-tˆtes. . . la voix ! e e La voix n’est pas chiffr´e, juste cod´e ; e e Si on intercepte ces paquets, on peut alors ´couter. e ´ Etat de l’art des logiciels d’´coute t´l´phonique e ee vomit (N. Provos) ; voipong (M. Balaban) ; cain (M. Montoro). Nicolas Bareil S´curit´ des syst`mes VoIP e e e 31/35
  45. 45. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You I’m listening to you ! ilty : I’m listening to you ! Logiciel Libre, Inteface user friendly D´velopp´ en Python, e e Fonctionnalit´s e ´ Ecouter une conversation en direct, Logguer les appels, Surveille le protocole de signalisation, Nicolas Bareil S´curit´ des syst`mes VoIP e e e 32/35
  46. 46. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You La signalisation Surveiller le protocole de signalisation permet : Reconnaˆ pr´cisemment les appels : ıtre e Acc`s aux informations de l’annuaire, e Num´ro de t´l´phone, e ee Extension du num´ro de t´l´phone ; e ee Voir les touches compos´es : e Capture du code de messagerie vocale, Num´ros de carte bleue ; e Nicolas Bareil S´curit´ des syst`mes VoIP e e e 33/35
  47. 47. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You Des questions ? Si on avait eu plus du temps. . . V´rification de la solidit´ du code cryptographique. e e Remerciements Phil, Serpilliere, Sid, Arnaud, news0ft, Kostya, Stf et tout le reste de l’´quipe d’EADS CCR DCR/STI/C ! e Plus d’information ? nicolas.bareil@eads.net Nicolas Bareil S´curit´ des syst`mes VoIP e e e 34/35
  48. 48. T´l´phones ee Protocole de signalisation S´curit´ r´seau e ee Protocole de transport ´ Ecoute t´l´phonique ee I’m Listening To You Bibliography P. Biondi, scapy Interactive packet manipulation program http://secdev.org/projects/scapy/ N. Bareil, ilty I’m listening to you http://chdir.org/∼nico/ilty/ SSTIC 2005 — http://actes.sstic.org/SSTIC05/ N. Provos, vomit http://vomit.xtdnet.nl/ M. Balaban, voipong http://www.enderunix.org/voipong/ M. Montoro, Cain http://www.oxid.it/cain.html Nicolas Bareil S´curit´ des syst`mes VoIP e e e 35/35
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×