Está en la página 1de 32

Conguracin de un laboratorio VoIP para pruebas de penetracin

ConfiguracindeunlaboratorioVoIP parapruebasdepenetracin

BusyToneGroup DanielRodrguezRodrguez SecurityResearcher Agosto2012

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

TabladeContenido
AcercadeEstaGua Requisitos: Hardware Software DescripcindelEntornoVoIP EntornoAsterisk ConfiguracinMquinaVirtual InstalacinElastix ConfiguracinElastix ConfiguracinClienteWindows EntornoFreeSwitch ConfiguracinMquinaVirtual InstalacinFusionPBX ConfiguracinClienteLinux ConfiguracinMquinaAtacante Conclusiones

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

AcercadeEstaGua
Como parte del proceso de aprendizaje entemas deseguridades indispensablecontarconlas herramientas necesarias para poder generar pruebas de seguridad en entornos especficos, para este caso particular, entornos de Voz sobre IP (VoIP). Durante esta gua veremos como configurar y colocar en marcha un entorno virtualizado de VoIP el cual permitir realizar pruebas de seguridad para encontrar vulnerabilidades, mejorar laseguridaddelos sistemas de PBX,yestablecermejoresprcticasparaestetipodeentornos. Esta gua se desarrolla con fines educativos, los escenarios que se establecen en este documento son escenarios de prueba, la configuracin realizada en esta gua no debe ser aplicada a entornos en produccin ya que aqu no se establecen las mejores prcticas de configuracin y seguridad, los entornos instalados contienen configuraciones y/o servicios por defecto.

Requisitos:
A continuacin se enumeran los requisitos para poder configurardeformaptimaellaboratorio de Pentest para VoIP. El laboratorio puede ser instalado sobre cualquier sistema operativo ya quetodaslasplataformassernvirtualizadas.

Hardware
Procesador:2GHzosuperior RAM:4GB DiscoDuro:20GBdisponibles TarjetadeRed:100Mbps

Software
VirtualBox:https://www.virtualbox.org/wiki/Downloads Elastix:http://www.elastix.org/index.php/es/descargas/distroprincipal.html FusionPBX:http://www.fusionpbx.com/downloads SFLPhone:http://sflphone.org/download/stablerelease 3CX:http://www.3cx.es/voiptelefono/index.html

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

DescripcindelEntornoVoIP
Para la configuracin del entorno de Pentest VoIP vamos a trabajar con Virtualbox o VMware Player como herramientas de virtualizacin, FreeSwitch y Asterisk comoplataformas deVoIP yBacktrackserladistribucinpararealizarlaspruebasdeseguridadsobreelentornoVoIP.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

EntornoAsterisk
La primera plataforma a configurar en el laboratorio ser un servidor asterisk, se ha seleccionado la plataforma Elastix debido a que es una de las distribuciones para VoIP y Comunicaciones Unificadas con Asterisk ms populares en la actualidad, Elastix permite que desde un archivo.ISOpodemos instalarsistemaoperativo(CentOS),servidorasterisk,interfaz de administracin para el PBX, mdulo de firewall, Call Center y otros servicios como FAX, Email,CRM,BasesdeDatosyMensajerainstantnea.

ConfiguracinMquinaVirtual

DescargarElastixdesde: http://www.elastix.org/index.php/es/descargas/distroprincipal.html Crearunanuevamquinavirtual,contipodeSistemaOperativoRedhat

Establecermnimo256MbenmemoriaRAM(mnimo)512Mb(recomendado)

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Crearunnuevodiscodurovirtual,recomendado8GB

Unavezcreadalamquinasedebeasignarlaimagen.isodeElastixalaUnidaddeCDdela mquinavirtual.

LatarjetaderedsedebeasignarenmodoAdaptadorpuenteoBridge,asociandoel dispositivofsicodenuestramquinafsica.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Iniciarlamquinavirtual.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

InstalacinElastix
ParainiciarlainstalacindeElastixpresionamoslateclaentercuandoaparezcalasiguiente pantalla.

Seleccionamoselidiomadeinstalacin

Seleccionamosladistribucindeteclado

Aparecerelsiguientemensajeindicandoquenosepudoleerlatabladeparticiones,para continuarseleccionamoslaopcinSi,deestaformasepreparareldiscoduro.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Paraeltipodeparticionamientoseleccionamoslaopcin3,deestaformasecreael particionamientopredetermindado.

ParacontinuaraseleccionamoslaopcinAceptar

HabilitamoslatarjetadereddetectadaporelsistemayelsoporteparaIPv4

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

PodemosestablecerunaIPFijaparalatarjetaderedodejarloporDHCP,estecaso seleccionamoslaopcinDHCP.

Seleccionamoselhusohorariocorrespondienteanuestraregin.

Establecemosunacontraseaparaelusuariorootylaconfirmamos.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Trasconfigurarlasopcionesbsicasdeinstalacincomenzarlainstalacindepaquetes.

EstablecemoslacontraseadeMySQLparaelusuarioroot.

Establecemoslacontraseaparaelusuarioadmin,estacontraseaseconfiguraparaacceder

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

alaadministracindeElastix,FreePBX,VTiger,A2BillingyFlashOperatorPanel.

DeestaformafinalizarlainstalacindeElastix,ingresamosconelusuariorootylacontrasea correspondiente,verificamosladireccinIP(comandoifconfig)asignadaporelservidor DHCP,yaqueparaconfigurarElastixdebemosingresaratravsdeunnavegadorWeb.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

ConfiguracinElastix
IngresamosalpaneldeadministracindeElastixdesdeunnavegador,atravsdelaurl: https://ipserver

AlingresarveremoselDashboardprincipal,allsepuedeobservarunpanelqueindicael estadodelosprocesos.,EnelmenprincipaldamosclicsobrelaopcinPBX.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Enelmendelaizquierda,dentrodelaseccinBasicseleccionamoslaopcinExtensions, seleccionamosenlalistaDevicelaopcinGenericSipDeviceydamosclicenSubmit.

EnUserExtensionestablecemoselnmerodelaextensinparaestelaboratorioserla1001 yenDisplayNamecolocamosunnombrequeidentificaralaextensin.

EnlaseccinDeviceOptionsestablecemoselparmetrosecret,estaserlacontraseacon lacualseregistrarlaextensinSIP.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Para finalizar la creacindelaextensindamos clic enelbotnsubmit,los dems campos son opcionales. Deestemismomodocrearemosunascuantasextensiones.

ConfiguracinClienteWindows
EnestaseccinvamosaconfigurarunsoftphoneparaWindows,trabajaremoscon3CXpero cualquierotroclienteencualquiersistemaoperativofuncionarsimilar. Ejecutamoselinstaladorde3CXyseguimoselasistentedeinstalacin.

Alfinalizarlainstalacinejecutamosel3CXPhone

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

LaprimeravezqueiniciemoselSoftphone,nosinformarquenoexisteunperfilSIP, seleccionamoslaopcinCreateProfile.

CreamosunacuenaingresandoalaopcinNew

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

En account name, ingresamos unnombrequedescribalacuenta,enCallerIDestablecemos el Identificador de la cuenta. En la seccincredentials colocamos elnmerodelaextensin,elID y la contrasea correspondiente y en la seccin Specify the IP of your PBX, colocamos laip denuestroPBX.

GuardamoslacuentapresionandoelbotnOK

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

ElsoftphonedeberegistrarsecontraelPBX,mostrandounmensajededisponible(Available)

Para verificar marcamos *65 de esta forma nos contestar el servidorindicandonos elnmero delaextensin.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

EntornoFreeSwitch
ParaelentornoconFreeSwitchvamosainstalarladistribucinFusionPBX.

ConfiguracinMquinaVirtual

Descargamoslaimagen.isodelinstaladordeFusionPBXdesdelasiguienteURL. http://www.fusionpbx.com/downloads/iso/centos/Fusionpbx1.0i386BalajiBHR.iso CreamosunanuevamquinaenVirtualBoxconlassiguientescaractersticas: Nombre:FusionPBX Sistemaoperativo:LinuxRedHat MemoriaRAM:512 DiscoDuro:8GB TarjetadeRed:Bridge(Puente) Asignamoslaimagen.ISOalaunidaddecddelamquinavirtual.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

InstalacinFusionPBX
AliniciardesdeelCDdeinstalacinaparecelaopcinparainstalarFusionPBXconMySQLo PostgreSQL.Enelmensajeboot,presionamosenterolaopcinquedeseemos,enestecaso alpresionarenterseinstalarpordefectoconMySQL.

Elprocesodeinstalacintardarunosminutos,ysolodebemosreiniciarparafinalizar.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

LuegodelprimeriniciodeFusionPBXaparecerunmensajequenosinformalascredenciales deaccesoalsistemayalabasededatos.(Importanterealizarelcambiodelascontraseas pordefecto.)

ConfiguracinFusionPBX
Ingresamosconelusariorootalsistemayprocedemosacrearlabasededatosdenuestro PBX. IngresamosaMySQL m y s q lur o o tp Creamoslabasededatos,enestecasolallamamosfusionpbx: c r e a t ed a t a b a s ef u s i o n p b x ; Debemosrecibirunmensajecomoeste:

Salimosdelaconsolodemysqlconelcomandoe x i t Verificamosladireccinipdenuestroservidorconelcomandoi f c o n f i g En caso de que no tengamos asignada una direccin IP podemos establecerla manualmente, ingresamos el comando s e t u p , aparecer un men ingresamos a la seccin Network Configurationyestablecemoslosparmetrosdered.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Unavezestablecidoslosparmetrosdered,volvemosalmenconlateclaESCy seleccionamoslaopcinSave&Quit

Porltimoreiniciamoselservicioderedconelcomandos e r v i c en e t w o r kr e s t a r t

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

IngresamosdesdeunnavegadorwebaladireccindenuestroPBX:http://ipserver/install.php

Seleccionamoseltipodebasededatos,enestecasoMySQL,eldirectoriodefreeswitch /usr/local/freeswitchyenPHPDirectory:/usr/bin Enestaparteconfiguramoslosdatosdeconexinalabasededatos(host,puerto,nombrede labasededatos,usuarioycontrasea)

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Si todo sali correctamente aparecer un mensaje que nos indica que la instalacin se ha completado y nos informa los usuarios y contraseas para acceder al panel deadministracin deFusionPBX.

Ingresamosalpaneldeadministracin,primerovamosacrearunusuarios,vamosalmen AccountsyluegoaUserManager

Paracrearunnuevousuariodamosclicenelbotn correspondientes.

eingresamoslosdatos

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

ParacrearunaextensinvamosaAccounts/Extensionsydamosclicsobreelicono

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Inicialmente colocaremos el nmero de la extensin, en rango dejamos 1, seleccionamos el usuariosdelalistaydamosclicenelbotnSave.

En este caso, la contrasea de la extensin fue generada aleatoriamente, para validar o cambiarlacontraseaeditamoslaextensinynosubicamossobreelcampo

ConfiguracinClienteLinux
En esta parte vamos a configurar un cliente SIP para linux, aunque vamos a trabajar con linphone para comunicarnos con el FreeSwitch, se puede utilizar cualquier otro softphone, la configuracinessimilar. parainstalarlinphoneendebianoubuntusedebeejecutar:s u d oa p t g e ti n s t a l ll i n p h o n e

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

EjecutamoslinphoneyconfiguramosunacuentaSIP.

VamosalmenLinphone/Preferencias/yluegovamosalapestaaManageSIPAccounts

Paraagregarunanuevacuentadamosclicenelbotnaadir Ingresamoslosdatosdelacuentaej:SIP:2001@192.168.0.11yenelproxySIP:192.168.0.11

Al aceptar la configuracin aparecer un mensaje solicitando la contrasea de la extensin, ingresamoslacontraseayAceptamos,conestoyatendremosregistradalaextensin.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Paraverificarelregistropodemosmarcar*9197o*9198,alllamarsedebenescucharunos tonosdeprueba.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

ConfiguracinMquinaAtacante
PararealizarlaspruebasdeseguridadalasplataformasdeVoIPutilizaremosladistribucin BacktrackquesepuededescargardesdelasiguienteURL: http://www.backtracklinux.org/downloads/ All seleccionamos la versinadescargar,arquitectura,tipodeimageny tipodedescarga,para este laboratorio descargamos la versin 5R3, 32 bits, ISO o Imagen de VMware, Descarga directaoTorrent.

UnavezdescargadoprocedemosaconfigurarunanuevamquinavirtualenVirtualBox, configuramoslaredenmodopuente(bridge),512MBdeMemoriaRAM,sidescargamosla imagendeVMWarecargamoseldiscoduro(VMDK)alaconfiguracindediscodevirtualbox, enelcasodelaimagen.ISOloasignamosalaunidaddeCD.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Iniciamoslamquinavirtualeiniciamosconelusuariorootycontraseatoor,luegoiniciamos elentornodeescritorio(gnome)conelcomandostartx

Backtrack cuenta con una serie de herramientas dedicadas a pruebas de pentestenVoIPque se encuentran dentro de la carpeta /pentest/voip estas herramientas sern explicadas en prximasguas.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012

Conclusiones
El desarrollo de un ambientedeprueba,nos permitecrearunespaciocontrolado,donde podemos revisar caractersticas de las soluciones instaladas y herramientas deataque ydefensaenunmarcototalmenteprctico. Durante esta gua se pudo evidenciarqueconunos cuantos pasos sepuedecolocaren funcionamiento una plataforma de VoIP, en muchas oportunidades se realizan configuraciones simples sin pensar en aspectos de seguridad y desafortunadamente, muchasveceslasinstalacionessolamentesereducenaestossimplespasos. Al contar con un laboratorio para pruebas de seguridad de VoIP se pueden realizar pruebas de concepto sobre los nuevos ataques a este tipo de plataformas, de esta formasepuedeanalizarcomofuncionanycmosepuedencontrarrestarlosataques. Los ambientes controlados permiten el desarrollo de nuevas necesidades, falencias y desarrollos en cuanto a aspectos de seguridad, comprendiendo un ambiente real, sin generarposiblesafectacionesaplataformasnoautorizadas.

BusyToneGroup|http://www.busytone.org|@BusyToneGroup|2012