Analisar (Técnicas de Invasão)

Commencez. C'est gratuit
ou s'inscrire avec votre adresse courriel
Rocket clouds
Analisar (Técnicas de Invasão) par Mind Map: Analisar (Técnicas de Invasão)

1. Flags TCP

1.1. SYN

1.1.1. "synchronize"

1.1.1.1. É a que conecta, inicia a conexão, enviada pelo cliente (quem requer a conexão em determinada situação).

1.1.1.1.1. "Oi, posso falar?"

1.2. SYN-ACK

1.2.1. "synchronize + acknowledgement"

1.2.1.1. É a resposta do servidor que vai receber a conexão.

1.2.1.1.1. "Oi, pode falar."

1.3. ACK

1.3.1. "acknowledgement"

1.3.1.1. Flag enviada pelo cliente que iniciou a conexão, para de fato concretizá-la e iniciar uma troca de dados úteis.

1.3.1.1.1. "Então vamos falar."

1.4. FIN

1.4.1. "finalise"

1.4.1.1. A conexão está prestes a terminar e os dois vão encerrar a conexão. O cliente envia a FIN e o servidor reconhece, finalizando a conexão.

1.4.1.1.1. "Quero parar de falar."

1.5. RST

1.5.1. "reset"

1.5.1.1. Quando uma porta não está aberta, a flag "reset" é enviada avisando pelo servidor em direção ao cliente que fez a requisição.

1.5.1.1.1. "Essa porta não está aberta."

1.6. Como funciona?

1.6.1. O protocolo TCP é do tipo que abre a conexão e a mantém aberta de ambos os lados, garantindo que os pacotes cheguem ao destino por completo. Caso haja perda de pacotes, o cliente envia um aviso e o servidor que envia tenta restabelecê-los dentro do tempo de vida (time to live), reenviando um novo pacote e verificando sua chegada novamente.

1.6.1.1. Diferente do UDP, que não verifica a integridade dos pacotes.

2. Varredura ICMP

2.1. "PING PONG"

2.1.1. O que é

2.1.1.1. O ping é uma requisição do tipo 8 do protocolo ICMP.

2.1.1.1.1. ICMP ECHO REQUEST

2.1.1.2. A resposta é do tipo 0 do protocolo ICMP.

2.1.1.2.1. ICMP ECHO REPLY

2.1.2. Como pode ser usado

2.1.2.1. Determina se o outro host está ativo.

2.1.2.2. Ping pode ser utilizado para fazer varredura em uma rede

2.1.2.3. Pode até ser usado para derrubar um site.

2.2. Ferramentas

2.2.1. PING (normal)

2.2.1.1. É a ferramenta padrão de ping.

2.2.1.2. exemplos de uso

2.2.1.2.1. ping google.com.br

2.2.1.2.2. ping 4linux.com

2.2.1.2.3. ping 232.182.198.132

2.2.1.2.4. ping 192.168.0.1

2.2.1.3. exemplo de saída

2.2.1.3.1. PING google.com (216.58.211.142) 56(84) bytes of data. 64 bytes from dub07s01-in-f14.1e100.net (216.58.211.142): icmp_req=1 ttl=63 time=14.2 ms 64 bytes from dub07s01-in-f14.1e100.net (216.58.211.142): icmp_req=1 ttl=63 time=16.2 ms

2.2.1.4. flags mais interessantes

2.2.1.4.1. -4

2.2.1.4.2. -6

2.2.1.4.3. -c (count)

2.2.1.4.4. -i (interval)

2.2.1.4.5. -s (size)

2.2.1.4.6. -f (flood)

2.2.1.4.7. -a (audible)

2.2.1.4.8. -b (broadcast)

2.2.2. FPING

2.2.2.1. Automatiza o processo de varredura na rede via ping, fazendo em escala.

2.2.2.2. exemplo de uso

2.2.2.2.1. fping -c2 -g 192.168.0.0 192.168.0.255

2.2.2.2.2. fping -c2 -g 209.23.220.0 209.23.220.255

2.2.2.2.3. fping -c1 -g 192.168.0.0/24 2> /dev/null

2.2.2.3. exemplo de saída

2.2.2.3.1. 192.168.0.1 : [0], 84 bytes, 100 ms (100 avg, 0% loss) ICMP Host Unreachable from 192.168.0.9 for ICMP Echo sent to 192.168.0.2

2.2.2.4. flags mais interessantes

2.2.2.4.1. -c

2.2.2.4.2. -g

2.2.2.4.3. -f (arquivo)

2.2.2.4.4. -b X

2.2.2.4.5. -l

2.2.2.4.6. -s

2.2.3. NMAP PING SCAN

2.2.3.1. Um ping mais "automatizado" do Nmap. Mais sofisticado, traz mais informação. Mais fácil de ser detectado na rede. Analisa pacotes TCP trafegando na rede e lê banners. Se possível, também traz o MAC address.

2.2.3.2. exemplo de uso

2.2.3.2.1. nmap -sP 192.168.0.0/24

2.2.3.3. exemplo de saída

2.2.3.3.1. Starting Nmap 7.40 ( https://nmap.org ) at 2017-04-13 19:43 EDT Nmap scan report for 192.168.0.1 Host is up (0.013s latency). MAC Address: 5C:E3:0E:0F:A7:0A (Arris Group) Nmap scan report for 192.168.0.3 Host is up (0.092s latency). MAC Address: F0:5A:09:D0:75:9D (Samsung Electronics) Nmap done: 256 IP addresses (2 hosts up) scanned in 24.79 seconds

2.2.3.4. automatização via script

2.2.3.4.1. #!/bin/bash read -p "Qual range você deseja varrer? > " RANGEVAR echo echo "Os IP's ativos na rede são:" echo nmap -sP $RANGEVAR | grep "scan report for" | cut -d" " -f5 exit

2.3. Bloquear ICMP

2.3.1. comando

2.3.1.1. sudo iptables -A INPUT -p icmp --icmp-type 8 -d 192.168.0.0/24 -j DROP

2.3.2. eficácia

2.3.2.1. O comando ping e o fping não identificariam o host, pois a requisição do tipo 8 (ping) está sendo dropada de toda a rede 192.168.0.0/24. Isso porque o ping é mais silencioso e realiza menos requisições. Já o NMAP conseguiria identificar o host ativo facilmente, pois analisa pacotes e envia mais requisições, gerando, por consequência, mais ruído na rede. Isso torna o NMAP mais eficiente, mas mais "barulhento" também.

3. Introdução

3.1. Expandir o Mapa de Ataque

3.1.1. Analisar endereços de IP

3.1.2. Identificar portas abertas

3.1.3. Identificar serviços

3.1.4. Validar se a invasão é possível

3.1.4.1. Quais são as possibilidades de atingir o objetivo

3.1.5. É possível CHEGAR até o endereço? (ALVO)

3.1.6. Banners expostos

3.1.6.1. Obter versões de programas/serviços

3.2. O que será ensinado

3.2.1. Testar comunicação

3.2.2. O que é requisição ICMP

3.2.3. O que é "echo reply"

3.2.4. O que é o PING

3.2.5. NMAP Scanner

3.2.5.1. Ver portas abertas

3.2.5.2. Ver status das portas

3.2.6. Preparação para a análise de vulnerabilidades

4. O NMAP

4.1. O que é

4.1.1. O NMAP é um comando que possibilita com que seja possível mapear redes, máquinas e hosts dentro das flags dispostas. Pode-se obter versões, serviços e, inclusive, o nome do sistema operacional a partir de uma pesquisa.

4.2. flags

4.2.1. -h

4.2.1.1. mostra as opções

4.2.2. sem flag nenhuma

4.2.2.1. trará as portas do host (baseado em um scan das 1000 portas mais comuns), o status delas, os serviços correspondentes e o MAC Address do host (se for possível coletá-lo).

4.2.3. -v

4.2.3.1. modo verbose, trazendo mais informações do processo de varredura.

4.2.4. -sV

4.2.4.1. traz as versões dos serviços abertos (correspondentes às suas respectivas portas), importante para encontrar um exploit compatível.

4.2.5. -O

4.2.5.1. traz o possível sistema operacional rodando na máquina e sua atual versão.

4.2.6. -sF

4.2.6.1. envia uma flag FIN para o alvo, como se estivesse encerrando uma conexão.

4.2.7. --open

4.2.7.1. mostra apenas as portas abertas.

4.2.8. -p

4.2.8.1. determina uma porta específica para ser escaneada.

4.2.9. -sS

4.2.9.1. realiza um Syn-Scan, verificando se é possível realizar uma conexão em determinada porta do alvo.

4.3. Analisando o 'ruído' com o TCPDUMP

4.3.1. tcpdump -i eth0 src 192.168.0.9

4.3.2. Imensa quantidade de informação sendo trafegada durante scan.

4.3.2.1. Muito ruído gerado.

4.3.3. Todo esse tráfego está sendo logado.

5. Encontrando portas abertas

5.1. Serão traduzidas algumas flags TCP trafegadas entre os hosts.

5.2. hping3

5.2.1. exemplo de uso

5.2.1.1. hping3 --syn -c 1 -p 80 192.168.0.21

5.2.1.1.1. envia um pacote de flag SYN para a porta 80 do host cujo IP é 192.168.0.21

5.2.2. como funciona

5.2.2.1. permite que sejam enviados pacotes da função SYN para tentar estabelecer uma conexão com o servidor

5.2.2.2. ele não completa a conexão com o "ack" final, apenas checa se há resposta do servidor e larga no final.

5.2.3. exemplo de saída

5.2.3.1. HPING 192.168.0.21 (eth0 192.168.0.21) : S set, 40 headers + 0 data bytes len=46 ip=192.168.0.21 ttl=64 DF id=0 sport=80 flags=SA seq=0 win=5840 rtt=2.8 ms

5.2.3.1.1. flags=XX

5.2.3.1.2. ttl=XX

5.2.3.1.3. sport=XX

5.3. NMAP

5.3.1. flags

5.3.1.1. -sS

5.3.1.1.1. envia uma flag SYN

5.3.1.2. -sn

5.3.1.2.1. ping sweep: ICMP Echo Request + ARP Request, ICMP TIMESTAMP e outros pacotes para porta 80 e 443.

5.3.1.3. -sn -PE --send-ip

5.3.1.3.1. apenas ICMP Echo Request (ping)

5.3.1.4. -D

5.3.1.4.1. despiste > IP's de origem diferentes, mas não exclui o IP do atacante.

5.3.1.5. -sV

5.3.1.5.1. Scan via banners p/ serviços

5.3.1.6. -f

5.3.1.6.1. Pacotes fragmentados p/ desviar de IDS

5.3.1.7. -O

5.3.1.7.1. Sistema operacional

5.3.1.8. -T(x)

5.3.1.8.1. Intensidade de agressividade. 0 é o menos agressivo.

5.3.2. exemplo de uso

5.3.2.1. nmap -sS 192.168.0.0/24

5.4. Gerando regras de firewall manualmente.

5.4.1. iptables

5.4.1.1. exemplo de uso

5.4.1.1.1. iptables -A INPUT -p tcp --dport 80 -j REJECT

5.4.1.1.2. iptables -A INPUT -p tcp --dport 80 -j DROP

5.4.1.2. flags

5.4.1.2.1. -F ou --flush

5.4.1.2.2. -L ou --list

5.4.1.2.3. -A (chain) ou --append (chain)

5.4.1.2.4. -C (chain) ou --check (chain)

5.4.1.2.5. -D (chain) ou --delete (chain)

5.4.1.3. especificações

5.4.1.3.1. -p (protocolo) ou --protocol

5.4.1.3.2. --dport

5.4.1.3.3. -j

5.4.1.3.4. --icmp-type

6. Porta

6.1. Um canal, mecanismo que abre a conexão.

6.2. Por trás, existe um protocolo que age nela. Assim, roda um serviço.

6.2.1. Serviços

6.2.1.1. HTTP, HTTPS, SSH, TELNET

6.3. Exemplo

6.3.1. 80, 443, 22, 21