You are on page 1of 36

AnlisedeTrfegodeRedescomXplico

RicardoKlberMartinsGalvo
www.ricardokleber.com ricardo.galvao@ifrn.edu.br www.twitter.com/ricardokleber

AnlisedeTr fegodeRedescomXplico::RicardoKlber Hack'nRio02deDezembrode2011

GrupodePesquisanoIFRN
GPSISL

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
OqueXplico

FerramentadeAnliseForensedeRede(NetworkForensicAnalysisToolNFAT) Noumanalisadordeprotocolosderede(comooWireshark/Ethereal) Objetivos:

Processar,extrair,classificaredisponibilizarinforma esdeprotocolosextradas dearquivosdetrfegosderedes(HTTP,FTP,VoIP,etc).

ModosdeFuncionamento:

AnlisedeArquivosPCAP(capturadoscomoWiresharkouTcpdump,p.ex.) Captura(temporeal)eanlisedetrfegoderedes

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
SistemaXplico(EstruturaMacro)

OSistemaXplicocompostopor4
GerenciadordeDecode's::Decode Manager(DeMa)

macrocomponentes:

IPDecoderchamadoXplico ConjuntodeManipuladoresdeDados SistemadeVisualizaoparaexibiros dadosextrados

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
SistemaXplico::oDecodeManager(DeMa)

Organizaaentradadedados Configuraosarquivosdehistrico Executaodecodereosmanipuladores Controlaaexecuododecodere

(historyfiles)dodecoderemanipuladores

dosmanipuladores

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
SistemaXplico::oNetworkDecoder

MdulosdeCaptura MdulosDissecadores MdulosDispatcher

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
SistemaXplico::oNetworkDecoder

MdulosdeCaptura MdulosDissecadores MdulosDispatcher

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
SistemaXplico(LinguagensdeProgramaoUtilizadas)

C Python PHP

+FrameworkCakewalk

Javascript

+BancodeDadosMySQLouSQLite(maisestvel)

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
SistemaXplico::OutrasCaractersticas

Suporteavriosprotocolosderede:

(HTTP,FTP,Telnet,SMTP,SIP,IMAP,POP,TCP,UDP,...)

PortaIndependenteProtocolodeIdentificao(PiPi)para Multithreading; SuporteaIPv4eIPv6

cadaprotocolodeaplicao;

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
LicenasdeUtilizao

UtilizamLicenaGNUGeneralPublicLicense:

Xplico[IPdecoder]eDeMa Manipuladoresmsite,mpaltalk,mfbc,mfileemwmail.

UtilizamLicenaCreativeCommonsLicenceCCBYNCSA3.0:

mimedump.pyc,session_mng.pyc,wbm_aol_v2.pyc,wbm_gmail.pyc, wbm_yahoo_android.pycewbm_yahoo_v2.pyc

OscomponentesdaXplicoInterface(XI)utilizamumconjuntode normasdetrslicenas,todascomtermosfree/opensource:

MozillaPublicLicense; GNUGeneralPublicLicense;e GNULesserGeneralPublicLicense

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
RecursosAdicionaisOpcionais

GeoIPCAPI/GeoLiteCitydatabase:

VisualizaoGeogrficaeTemporaldetrfego

GhostPCL:

Reconstruodedocumentosenviadosparaimpressoemrede

Videosnarf:

DecodificaodetrfegoVoIPbaseadonoprotocoloRTP

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
PrincipaisDependncias(paraInstalaoeUso)

Bibliotecas(Libraries):

PcapLibrary:libpcap SQLiteLibrary:libsqlite3 MySQLCAPILibrary:libmysqlclient_r Zlib:zlib1gdev

AplicativosdeApoio:

SoX:SoundeXchange LameMP3Encoder

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
Importante!!!
OXplico,apesardejapresentarfuncionalidadesimportantese variadas,funcionandocomoferramentadeapoioaatividadespericiais, porexemplo,aindaestemdesenvolvimento. Averso1.0estprevistaparaFevereiro/2012

VersoAtual:0.7.0(05/11/2011)
Enviodebugs: bug@xplico.org (ouencaminharnofrumdosistema)

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::VisoGeral
InformaeseArquivosRelacionados

SiteOficialdoProjeto www.xplico.org RepositriodeFontesdoSistema http://sourceforge.net/projects/xplico Wiki:http://wiki.xplico.org Frum:http://forum.xplico.org

DEFT:DistribuioForense(LiveCD)c/Xplicoinstaladoeconfigurado http://www.deftlinux.net

OsDesenvolvedorestambmdisponibilizamumaMquina Virtual(VirtualBox)c/Xplicoinstaladoeconfigurado

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0::Instalao

MtodoseDetalhes

Ainstalaopodeserfeitaviapacote(DEB)ouapartirdosfontes Diretriopadroondesoinstaladososarquivos:/opt/xplico

/opt/xplico/xi::InterfaceGrfica /opt/xplico/cfg::Arquivosdeconfigurao(acessadopeloApache)

AlmdoservidorWeb(Apache)necessrioinstalareativar:

php5; php5-sqlite; rewrite post_max_size = 100M upload_max_filesize = 100M

Aumentarotamanhomximodearquivos(p/upload)emphp.ini:

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0::ProcessodeInstalao(baseadoemLinuxDebian)

PreparandooAmbiente(dependncias)

InstalartodosospacotesnecessriosparaoXplicofuncionar:

# apt-get install tcpdump tshark apache2 php5 php5-sqlite build-essential perl libzip-dev libpcap-dev libsqlite3-dev php5-cli libapache2-mod-php5 libx11-dev libxt-dev libxaw7dev python3-all python3-httplib2 sqlite3 recode sox lame libnet1 libnet1-dev libmysqlclient-dev binfmt-support

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 ProcessodeInstalao(baseadoemLinuxDebian)

Jestdisponvelopacote.DEBparaoXplico0.7.0

http://sourceforge.net/projects/xplico/files/

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 ProcessodeInstalao(baseadoemLinuxDebian)

Continuando...

DonwloaddoXplico
version%200.7.0/xplico_0.7.0_i386.deb

# wget http://sourceforge.net/projects/xplico/files/Xplico%20versions/

Instalao

# dpkg -i xplico_0.7.0_i386.deb

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 DetalhesAntesdeIniciaraUtilizao

PorpadrooXplicocriaumVirtualHostdoApacheutilizandoa OXplicofuncionacomoumservio(deveseriniciado): /etc/init.d/xplico start Verificarfuncionamento: netstat -anp | grep 9876 Acessarvianavegador(namesmamquinaouapartirdeoutra

porta9876/TCPparaconexodeclientes(navegadores).

mquinaacessvelviarede): http://ip_do_servidor_xplico:9876

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 DetalhesAntesdeIniciaraUtilizao

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 AcessandoaInterface(viaBrowser)

UsuriosDefault

UsuriopadroparausodoXplico

Login: xplico / Senha: xplico Login: admin / Senha: xplico

UsurioAdministradordoSistemaXplico

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 TeladeLogin

Ateno: BugnaVerso 0.7.0 LinguagemPTBR

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 Seleo/CriaodoCase

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 OrigemdosDados(ArquivoPCAP/CapturaaoVivo)

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0 Seleo/CriaodaSesso(Session)

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico0.7.0

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::ModoConsole(CommandLine)
ExecuodetarefassemaInterfaceGrtica(XI)

NovoCaso(NewCase)

/opt/xplico/script/session_mng.pyc -n "Caso 01" "Caso_01"

CaseID:1 SistemagravaarquivoPCAPem: /opt/xplico/pol_1/sol_1/new

NovaSesso(NewSession)

/opt/xplico/script/session_mng.pyc -a 1 "Sessao_01"

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::ModoConsole(CommandLine)
ExecuodetarefassemaInterfaceGrtica(XI)

TambmpermitedecodificarumarquivoPCAPdiretamente,um

diretriodearquivosPCAPsoufazeradecodificaoemtemporeal (apartirdeumainterfacederedeespecfica)

Nomodoconsoletodososarquivosoextradosparaodiretrioxdecode Otipodeentrada(inputtype)definidousandoaopo-m

Otipopodeser:pcapou rtml Paraumhelp,executarocomando:

./xplico -h -m pcap ./xplico -h -m rtml

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::ModoConsole(CommandLine)
ExecuodetarefassemaInterfaceGrtica(XI)

Exemplosdelinhasdecomando:

./xplico -m pcap -f teste.pcap Analisaoarquivoteste.pcapegeraosarquivosespecificosemcadadiretrio:

xdecode/ip/http xdecode/ip/mail xdecode/ip/ftp AnalisatodososarquivosPCAPcontidosnodiretrio/tmp/teste Geraosarquivosespecficos(inclusivearquivosKML=GoogleEarth) Captura(edecodificao)emtemporeal

AnlisedeTrfegodeRedescomXplico::RicardoKlber

./xplico -m pcap -d /tmp/teste

./xplico -m rltm -i eth0

Xplico::ObservaesImportantes
NoUsodoXplicoobservar...

AversodisponvelnaVirtualBoxa0.6.3 AversodisponvelnoLiveCDDefttambma0.6.3 FicaratentoparaobugnaVersoPTBR Velocidadedeprocessamentodearquivosedisponibilizaodeacesso

aosgrficosdaferramenta=dependedohardware

LimitaodoUploaddearquivoPCAPdefinidopelophp5.ini

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Prtica...

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::AnalisandoumTrfegoWebSimples
ProcedimentosparaPrtica

Pratica_HTTP

Baixeoarquivohttp1.pcap NoXplico:

CrieumCase:Pratica_HTTP(tipo:UploadPCAPCaptureFile) CrieumaSessoTrafego01efaaoUploaddoarquivohttp1.pcap

AcompanheaAnlisedoProtocoloHTTPcomXplico.

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::AnalisandoumTrfegoWebSimples
ProcedimentosparaPrtica

Pratica_HTTP

Baixeoarquivohttp2.pcap NoXplico:

UtilizeoCase:Pratica_HTTP CrieumaSessoTrafego02efaaoUploaddoarquivohttp2.pcap

AcompanheaAnlisedoProtocoloHTTPcomXplico.

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::AnalisandoTrfegosCapturados
PrticasComplementares

CrieCaseseSessesparaosTrfegos:

DNS FTP POP3 Webmail(Yahoo/Aol/HotmailLive)

AnlisedeTrfegodeRedescomXplico::RicardoKlber

Xplico::CapturandoeAnalisandoTrfego

CrieumCaso/SessoparaAnalisarCapturadetrfegoemtemporeal SelecioneaInterfaceeinicieacaptura AbraumbrowsereacessesitesnaInternet Fecheobrowser,pareacapturaeanaliseoresultadonoXplico

AnlisedeTrfegodeRedescomXplico::RicardoKlber

AnlisedeTrfegodeRedescomXplico
RicardoKlberMartinsGalvo
www.ricardokleber.com ricardo.galvao@ifrn.edu.br www.twitter.com/ricardokleber

AnlisedeTr fegodeRedescomXplico::RicardoKlber Hack'nRio02deDezembrode2011