Análise passiva (parte 2)
Nesta segunda parte do artigo sobre análise passiva, iremos conhecer técnicas para passar por filtros de pacotes e entender alguns conceitos de pacotes como payload e padrões para transmissão.
Introdução: pequena explicação sobre payload
Referência
Pequena explicação sobre payload
Bom, em que pode nos ser útil analisar passivamente o tráfego do nosso servidor?
Como sabemos, os esquemas de backdooring vão evoluindo muito com o tempo, temos backdoors que são extremamente furtivas e que não precisam nem bindar portas em servidores, são os casos de wwwtunnels, e túneis de ICMP que são ativados por pacotes de determinados tamanhos.
Quando analisamos um pacote que enviamos na internet, ele teria essa cara:
+---------------+--------------------------+ | Header | Payload | +---------------+--------------------------+Onde o header carrega as informações de onde o pacote vem para onde o pacote vai e o Payload carrega o conteúdo do pacote principal, como por exemplo os dados que estamos transmitindo.
Vamos olhar essa teoria analisando um pacote real, vamos usar um pacote ICMP comum de um ping por exemplo:
14:05:07.647489 localhost > localhost: icmp: echo request (DF)
(ttl 64, id 0, len 84)
4500 0054 0000 4000 4001 3ca7 7f00 0001 E..T..@.@.<.....
7f00 0001 0800 4e26 8407 0001 c3ac dd40 ......N&.......@
90e0 0900 0809 0a0b 0c0d 0e0f 1011 1213 ................
1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 ............ !"#
2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
3435 3637
Vamos destrinchar esse pacote ( como diria o esquartejador ):
14:05:07.647489 localhost > localhost: icmp: echo request (DF)
(ttl 64, id 0, len 84)
Essa linha contém o header do nosso pacote, como podemos ver temos a hora
que o pacote foi enviado, de onde foi enviado, > para quem foi enviado,
o tipo de pacote (icmp) echo_request, e as informações adicionais como
ttl, e uma coisa importante, o id do pacote.
4500 0054 9a7a 0000 4001 e22c 7f00 0001 E..T.z..@..,....
7f00 0001 0000 5626 8407 0001 c3ac dd40 ......V&.......@
90e0 0900 0809 0a0b 0c0d 0e0f 1011 1213 ................
1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 ............ !"#
2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
3435 3637
Esse é o Payload do nosso pacote contendo as informações que estamos
transmitindo, essa saída ao lado:
E..T.z..@..,.... ......V&.......@ ................ ............ !"# $%&'()*+,-./0123 4567Foi o que o asctcpdump transformou em ASCII para nos podermos ler. Você entendeu algo? Bom eu também não eheh, mas isso não importa, vamos continuar nossa análise, você verá que esse pequeno conhecimento guardado até agora será muito importante em nossa análise.
[]'s