ANÁLISE FORENSE EM REDES (pt.1) – ANÁLISE FORENSE

Olá!

Bem-vindo a série de postagens sobre análise forense em redes. Apresentarei os tópicos de análise forense de redes com ênfase no conjunto de protocolos TCP/IP. Em seguida, cobrirei a captura de pacotes de rede e subsequente análise forense do tráfego de captura com a ferramenta open source Wireshark.

INTRODUÇÃO A ANÁLISE FORENSE DE REDES

Agora, vamos prosseguir para a introdução à análise forense de redes. Apresentarei o tópico de análise forense de redes e, em seguida, a teoria básica sobre redes, com ênfase particular no modelo ISO / OSI e no conjunto de protocolos TCP / IP.

Até agora, cobri a análise forense baseada em host, que é a aquisição e análise de dados de uma memória não volátil e uma memória volátil de host. Agora veremos como adquirir e analisar pacotes de rede de dados que fluem na rede de um host para outro.

A perícia de rede é uma ponte de perícia digital que geralmente é tratada como um tópico separado e tem muito em comum com o monitoramento de segurança de rede. Geralmente, é conduzido durante a resposta ao vivo e permite que o examinador revele a atividade de um invasor ou de um malware na rede. Inspecionando as conexões e pacotes transmitidos antes de mergulhar nas mãos da parte. Portanto, é útil relembrar os fundamentos da rede, já que o examinador forense da rede deve ser proficiente na leitura e compreensão da estrutura de protocolos e pacotes.

MODELO OSI (OPEN SYSTEMS INTERCONNECTION)

A rede é estruturada de acordo com o modelo ISO / OSI (ou Open Systems Interconnection).

IMAGEM: Digital Forensics with Kali Linux – Packt>

Possui sete camadas principais que vão da mais alta (aplicação) à mais baixa (física). São elas:

  • Aplicação;
  • Apresentação;
  • Sessão;
  • Transporte;
  • Rede;
  • Dados;
  • Link;
  • Física.

Cada uma das camadas tem seus protocolos que descrevem como os dados são transmitidos na forma de pacotes.

Um pacote é normalmente composto de um cabeçalho e uma carga útil de dados. Cada protocolo tem seu próprio cabeçalho típico. Isso é anexado ao pacote quando a carta desce na pilha de camadas antes de ser enviada e removida quando sobe na pilha após ser recebido.

Para ser breve, nesta postagem, descreverei brevemente o conjunto de protocolos TCP / IP que opera na camada de transporte e rede, respectivamente.

IP (INTERNET PROTOCOL)

O principal protocolo da camada de rede é o Internet Protocol (ou IP) cuja versão 4 ainda é a mais utilizada. O protocolo IP executa as funções de endereçamento e roteamento de pacotes. Os campos principais do cabeçalho IP são os campos de endereço de origem e destino. Existem 32 bits cada, como podemos ver neste diagrama.

IMAGEM: Digital Forensics with Kali Linux – Packt>

ENDEREÇAMENTO IP

Os endereços IP versão 4 são divididos em quatro octetos separados por pontos. Cada octeto tem 256 valores possíveis de 0 a 255 em notação decimal.

No roteamento inter-domínio “sem classe” (CIDR, ou Classless Inter-Domain Routing), os endereços IP são compostos por dois grupos. Os bits mais significativos são o endereço de rede, que identifica uma rede ou sub-rede inteira, enquanto os outros identificam o endereço do host.

Por exemplo, o endereço 192.168.0.1/24 identifica um endereço de rede de 24 bits e um endereço de host formado pelos 8 bits restantes. O número 24 após / é chamado de máscara de rede.

Na versão 6 do IP, os endereços têm 128 bits, estendendo bastante a gama de endereços IP possíveis. Os endereços IPv6 são escritos em hexadecimal e são divididos em 8 grupos de 16 bits cada.

PROTOCOLO TCP (TRANSMISSION CONTROL PROTOCOL)

Os principais protocolos de transmissão são o TCP e o UDP. TCP (protocolo de controle de transmissão) e UDP (protocolo de datagrama do usuário). TCP é um protocolo de transmissão confiável e orientado para conexão. Ele prepara seu próprio cabeçalho para um pacote IP para formar um segmento TCP, como vemos neste diagrama:

IMAGEM: Digital Forensics with Kali Linux – Packt>

O cabeçalho TCP tem dois campos principais de 16 bits: Portas de origem e Porta de destino.

TCP controla o estado de controle e o fluxo de conexões por meio de sinalizadores de controle opostos, e a sequência em números de confirmação no cabeçalho TCP. Os principais sinalizadores de controle são SYN, ACK, RST e FIN. Cada sinalizador é um único bit que pode ser definido ou não.

Uma conexão TCP é estabelecida por meio de uma sequência chamada three way handshake (3WH).

IMAGEM: Digital Forensics with Kali Linux – Packt>

O host inicial envia um pacote com o sinalizador SYN, definido para iniciar uma conexão. O respondente responde com um pacote que tem o SYN e ACK like definidos, e o iniciador envia de volta o pacote ACK para confirmar a solicitação de conexão. Da mesma forma, os sinalizadores FIN-ACK são usados para fechar uma conexão enquanto RST é usado para redefinir uma conexão.

O número de sequência rastreia os bytes de dados enviados, enquanto o número de confirmação rastreia os bytes de dados recebidos pela outra extremidade. Assim, os pacotes que não foram reconhecidos são enviados novamente.

PROTOCOLO UDP (USER DATAGRAM PROTOCOL)

Outro protocolo de camada de transporte importante e amplamente usado é o UDP. É um protocolo de conexão não confiável e é utilizado pelo serviço DNS (ou Domain Name System), SNMP (ou Simple Network Management Protocol) e para streaming de dados em tempo real. Podemos ver sua estrutura de cabeçalho neste diagrama como o protocolo TCP.

IMAGEM: Digital Forensics with Kali Linux – Packt>

Ele usa campos de 16 bits para as portas de origem e destino.

Bem. Nesta postagem, apresentei análise forense de redes e a teoria básica dos protocolos TCP/IP, em particular. Na próxima postagem, veremos como capturar o tráfego de rede que flui de um host para outro com a ferramenta de detecção Wireshark.

Comente. Deixe seu like!

Até logo!

Deixe um comentário