open ldap criando e explorando um overlay

12

Click here to load reader

Upload: marcelo-machado-fleury

Post on 24-May-2015

210 views

Category:

Education


0 download

DESCRIPTION

Palestra apresentada no 9º FGSL - Fórum Goiano de Software Livre

TRANSCRIPT

Page 1: Open ldap   criando e explorando um overlay

Marcelo Machado Fleury

marcelomf[noSpam]gmail[p]com

marcelo[p]fleury[noSpam]4linux[p]com[p]br

Http://marcelomf.blogspot.com

Http://www.slideshare.com/marcelomf

Http://twitter.com/marcelomf

#h2hc-community, #pev, #gojava, #gophp, #owasp...

“Vamos assar uns GNUs, quebrar umas janelas, comer umas maçãs ou matar uns demônios”

OpenLDAP, criando e explorando um overlay

Page 2: Open ldap   criando e explorando um overlay

2

Agenda

● LDAP

● OpenLDAP

● SASL

● Overlays

● Buffer Overflow

● Mapeamento de um processo

● Stack Overflow

● Anatomia de um exploit

● POC

Page 3: Open ldap   criando e explorando um overlay

3

LDAP

● Estrutura

● Operações

● Por que e onde utilizar

Page 4: Open ldap   criando e explorando um overlay

4

OpenLDAP

● Índices

● Módulos

● ACLs

● SSL/TLS

● Backends diversos

● Replicação: master/slave, multimaster

Page 5: Open ldap   criando e explorando um overlay

5

SASL

● GSS-API

● Ampliação da gama de aplicações que poderão se autenticar

● userPassword: {SASL}principalName

Page 6: Open ldap   criando e explorando um overlay

6

Overlays

● Por que ?

● Alguns importantes

● Vamos ver, criar e explorar!

Page 7: Open ldap   criando e explorando um overlay

7

Buffer Overflow

● Arquitetura x86– 32 bits X 64 bits

● 0 – F ; 1 bit ; 1 byte ; – 1 endereço 0x00000000 - 0xffffffff

● Integer Overflow

● Heap Overflow

● Stack Overflow

Page 8: Open ldap   criando e explorando um overlay

8

Processo(duartes.org)

Page 9: Open ldap   criando e explorando um overlay

9

Stack Overflow

char buffer[500];

strcpy(buffer, argv[1]);

strncpy X off by one

Page 10: Open ldap   criando e explorando um overlay

10 Anatomia de um exploit● Segmentation fault/SIGSEGV x Fuzzers

● Um pacote (Header X Payload)– Socket

– Operações

– Connect Back / Covert Channel

● “Trigar” uma falha

● Shellcode– Assembly e (%EAX, %EBP, %ESP, %EIP)

– NOPS / 0x90 e lixos

– Nullbytes 0x00

– Código a ser executado

– Polimorfismo

Page 11: Open ldap   criando e explorando um overlay

11

POC● Proteções

– Kernel Land X User Land

– Em tempo de compilação

– Hardware

● Exemplos– ASLR

– DEP

– PIE

● SELinux, Apparmor e GRSecurity(+PAX)

Page 12: Open ldap   criando e explorando um overlay

Marcelo Machado Fleury

marcelomf[noSpam]gmail[p]com

marcelo[p]fleury[noSpam]4linux[p]com[p]br

Http://marcelomf.blogspot.com

Http://www.slideshare.com/marcelomf

Http://twitter.com/marcelomf

#h2hc-community, #pev, #gojava, #gophp, #owasp...

"Conheço muitos que não puderam quando deviam, porque não quiseram quando podiam." By François

Rabelais

Muito Obrigado!