Primeiras aulas do curso Segurança de redes: Conheça as vulnerabilidades de servidores e clientes

Segurança de redes: Conheça as vulnerabilidades de servidores e clientes

Switches e Hubs - Introdução

Olá! Eu sou Rafa Nercessian e vou fazer uma introdução do que veremos no curso de Segurança de redes. Procurei fazer o curso de forma bem prática.

Teremos o computador do hacker, que será o Kali Linux.

Computador do hacker

E também o computador da vítima, que será o que eu estou usando.

Computador da vítima

E também o servidor web, que usaremos para fazer alguns testes de vulnerabilidade também no lado do servidor.

Servidor web

Começaremos o curso falando o que o hacker poderá usar como vantagem de alguns equipamentos de rede, como o hub. E, por meio de uma análise de protocolo, visualizar o que a vítima está acessando. Depois, veremos de quais formas o hacker tentará comprometer o funcionamento de um switch. Ele o fará, por meio de um programa de emulação que veremos também, para tentar visualizar o que está trafegando do lado da vítima, e obter informações que ele não deveria.

Na etapa seguinte, veremos como esse hacker pode manipular os protocolos de comunicação para que ele fique no meio dela, e possa ver tudo o que a vítima faz. Depois, saberemos de que maneira essa manipulação de protocolo conseguirá mudar o redirecionamento de uma URL para um site com características muito próximas do original para enganar a vítima.

Na sequência, veremos os ataque contra o servidor e descobrir algumas vulnerabilidades que existem, bem como algumas soluções que existem para elas.

Enfim, mostrarei como um hacker pode tentar comprometer um cliente e infectar o seu computador para ganhar acesso a tudo dessa máquina.

É importante ressaltar que tudo o que mostramos aqui tem intuito informativo e educacional. Não usem essas técnicas contra outras pessoas ou com equipamentos de rede, pois isso é ilegal.

Para que tenhamos resultados parecidos, recomendo que você trabalhe com Windows, pois é o sistema que usarei. Se você não tem Windows, não há problema. A Microsoft disponibiliza o Windows por 90 dias, basta fazer o download.

Para trabalhar simultaneamente com a máquina do hacker e da vítima, recomendo o uso de um computador com, no mínimo, 8 Gb de memória RAM. Caso você não tenha 8 Gb de RAM, também pode trabalhar com dois computadores: um para o hacker (Kali Linux) e um para a vítima (Windows).

Nos exercícios eu dou mais detalhes de como isso pode ser feito. Sejam muito bem-vindos e espero que esse curso ajude no crescimento profissional de vocês. Até breve!

Switches e Hubs - Hub wireshark

No curso de redes, havíamos conversado sobre o funcionamento de alguns equipamentos. Começamos pelo hub, que é usado para interconectar dispositivos finais. Vamos lembrar como ele trabalha?

Suponha que tenhamos João com o seu computador, e que este computador está conectado a um hub.

João e Hub

No curso de redes, fizemos algumas simulações de acesso a algumas páginas da internet, usando um servidor. No entanto, o hub tem uma limitação: ele não consegue identificar qual equipamento está conectado em cada porta.

Joao hub e servidor

Ele não sabe que o computador do João está à esquerda e o servidor à direita. Sabendo como o hub trabalha, o hacker irá conectar o computador dele e usar programas que analisam tráfego e os protocolos que estão passando pela rede. O seu objetivo é descobrir o que João, que agora se tornou uma vítima, está acessando. O programa usado pelo hacker para colher esses dados é o Wireshark. Você pode baixá-lo e fazer uso do mesmo neste curso.

Wireshark

Clicando em Download, você é redirecionado para uma página que te permite escolher o seu sistema operacional.

Download Wireshark

Basta clicar no que corresponde a sua máquina e o download se iniciará automaticamente. A instalação desse programa é bem imediata, basta abrir o instalador e clicar em Next e I Agree até que a instalação peça mais autorizações.

Setup Wizard

Logo a seguir abre-se o Wizard de instalação do WinPcap, que é um programa que roda por trás para pegar os protocolos. Também iremos instalá-lo.

Setup Wizard Winpcap

Depois de completar as instalações, abriremos o Wireshark.

Inicial Wireshark

Estou usando conexão cabeada aqui, por isso o programa mostra a tecnologia Ethernet. Na sua casa você terá outras placas de rede, e essa entrada estará de acordo com elas. Ao clicar duas vezes sobre essa placa de rede, o programa começará a nos mostrar uma série de protocolos que estão passando pela rede.

Ethernet

Protocolos

O João, a nossa vítima, quer ler algumas notícias na internet. Para isso, vai acessar o site da Uol.

João abre Uol

Enquanto isso, o hub está passando a informação para todas as portas e o hacker está colhendo as informações de tudo o que o João acessa.

O hacker fará uma análise de protocolos no Wireshark. Faremos uma busca por protocolos HTTP, aplicando um filtro na parte superior.

Filter HTTP

Agora vemos apenas os protocolos HTTP que foram transmitidos pelo hub. Perceba que o primeiro deles já é uma requisição GET. Sabemos então que algum usuário fez essa requisição para alguma página. Se olharmos embaixo, veremos que há o campo Hypertext Transfer Protocol.

Hypertext Transfer Protocol

Esse é o nome oficial do HTTP, e, clicando sobre ele vemos que houve uma requisição GET, e que ela foi feita para o site da Uol. Assim o hacker sabe que o João acessou esse site.

Hypertext Transfer Protocol

E o hacker pode saber ainda mais. Suponha que o João precisa fazer cadastro em um site e se logar na parte administrativa deste site.

Joao faz login

Quando o João se loga, o hacker está obtendo as informações. Vamos inspecionar a página para ver como está estruturado esse formulário.

Inspecionar

O que veremos, abrindo cada nível, é o seguinte código:

...<html>==</head>
  <head>...</head>
  <body>
    <div class="container">
      ::before
      <h1>Login</h1>
      <form id="command" action="/login" method"POST">
        <div class="form-group">...</div>
        <div class="form-group">...</div>
        <button type="submit" class="btn btn-primary">Logar</button>
        <div>...</div>
      </form>
      ::after
    </div>
  </body>
</html>

Observe que fizemos uma requisição POST, e é por meio dela que o usuário envia as informações para o servidor. Vamos ver se no Wireshark nós também encontramos essa requisição.

Como é uma requisição recente, vamos descer a barra de rolagem para encontrar essa requisição.

Post

Clicando sobre ele, veremos mais detalhes no campo inferior.

Hipertext Transfer Protocol
  POST /login HTTP/1.1\r\n
  Host: exemplo-login-fraco-alura.herokuapp.com\r\n
  Connection: keep-alive\r\n
  Content-Lenght: 92\r\n
  Cache-Control: max-age=0\r\n
  Origin: http://exemplo-login-fraco-alura.herokuapp.com\r\n
  Upgrade-Insecure-Requests 1\r\n
  User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36\r\n
  Content-Type: application/x-www-form-urlencoded\r\n
  Accept: text/html, application/xhtml+xml, application/xml;q=0.9, image/webp,*/*;q=0.8\r\n
  Referer: http://exemplo-login-fraco-alura.herokuapp.com/login\r\n
  Accept-Encoding: gzip, deflate\r\n
  Accept-Language: pt-BR, pt;q=0.8,en-US;q=0.6,en;q=0.4\r\n
  Cookie: JSESSIONID=DDE16B48A56B0C958F2FE8413BC16F8F\r\n
  \r\n

Vemos que houve uma requisição POST e a página em que o João a fez era exemplo-login-fraco-alura.herokuapp.com\r\n. Mas não há nenhuma informação tão consistente. Será que o hacker teria acesso à senha ou ao login do João?

Embaixo do campo Hypertext Transfer Protocol, há o campo HTML Form URL Encoded: application/x-www-form-urlencoded.

HTML form

Quando o abrirmos, teremos:

Form item: "username" = "joao@meudominio.com.br"
Form item: "password" = "123456"
Form item: "_csrf" = "469bde26-87c6-4e9c-82d3-ae2c61a41fe3"

Conseguimos ver o email e a senha que o João digitou no cadastro do site.

Percebemos uma limitação do hub, que é essa vulnerabilidade do usuário. O hacker consegue fazer essa análise dos protocolos e ver as informações que os outros usuários estão transmitindo. Além disso, há também um problema de lentidão.

Muitas portas hub

Como o hub não consegue identificar que máquina está em cada porta, ele passa essas informações para todas as portas. E por isso, temos a lentidão.

Existe um equipamento que é praticamente uma evolução do hub, e que veio suprir as limitações que mencionamos. Essa tecnologia é o switch. Em breve veremos como ele trabalha. Até lá!

Switches e Hubs - Switch Kali Linux

Já vimos que o hub apresenta limitações por não reconhecer qual máquina está em cada porta. Ele passa as informações para todas, e o hacker que estiver à espreita faz análise de protocolos e consegue colher dados, como e-mail e senha de sua vítima.

Com o objetivo de melhorar essa performance dos hubs, surgiram outros equipamentos. O que veio com o objetivo de substituir os hubs é o switch. A grande diferença entre eles é que o switch consegue detectar qual máquina está conectada a cada porta.

Switch

Ele detecta que a sua direita está o usuário, e que à sua esquerda está o servidor. E também percebe o computador do hacker, representado abaixo. Mas como ele consegue fazer essa distinção? Por meio do endereço físico de cada placa de rede, o endereço mac.

Toda placa de rede, ao sair do fabricante, possui um número de série, que a identifica; esse é o endereço mac. Abrindo o Prompt de Comando do Windows, podemos acessar esse endereço. Basta digitar o seguinte:

C:\Users\Alura>ipconfig/all

Dentre as muitas especificações que veremos, temos as da placa de rede:

Configuração de IP do Windows
    ...

Adaptador Ethernet Ethernet:

    Sufixo DNS específico de conexão......:
    Descrição.............................: Realtek PCIe GBE Family Controller
    Endereço Físico: D8-CB-8A-C1-AA-7F
    ...

Quando um usuário faz o acesso passando pelo switch, este gravará o endereço mac na sua memória. Assim, saberá para quem precisa passar a informação. Não será necessário passar a informação para todas as portas (e usuários) como era feito com o hub.

Isso dificulta muito a vida de um hacker. O switch não passa a informação para ele tão facilmente - como seria feito pelo hub. Mas sabemos que hackers não desistem muito facilmente. Eles querem saber as informações que são passadas para outros usuários. Assim, ele encontrará uma forma de comprometer esse switch.

Para isso, o hacker usará um programa projetado para testes de penetração de redes, que é o Kali Linux. Mas, como eu estou usando apenas uma máquina, antes de instalar o Kali Linux, preciso colocar um ambiente virtualizado na minha máquina e fazer a simulação da plataforma que o hacker usaria. E é isso que faremos agora.

A primeira etapa será fazer o download no site do Virtual Box.

Virtual box

Ao clicar em Download, seremos redirecionados para uma página que nos permite escolher que sistema operacional estamos utilizando.

Qual sistema operacional

Basta escolher o seu e o download se iniciará automaticamente. Depois, é preciso executar o installer. A instalação não tem segredo: basta seguir como a anterior. Quando ela terminar, pode-se abrir o programa, que é assim:

Virtual box

Agora podemos trazer a plataforma do hacker para ser gerenciada pelo Virtual Box. Para isso, clicaremos em Arquivo > Importar Appliance.

Importar Appliance

A máquina do hacker está disponível para download. Como já a tenho no meu computador vou selecioná-la dentre os meus arquivos.

Importar Appliance

Basta clicar em Próximo (N), e depois em Importar.

Importar Appliance

Assim que a importação terminar, podemos definir as configurações. É só clicar no ícone da máquina do hacker e a seguir emConfigurações.

Configurações

Faremos algumas alterações no painel que se abrirá.

Sistema

Essas alterações serão feitas de acordo com o seu computador. Eu recomendo 1 Gb como valor mínimo de uso de memória RAM, para ter uma performance razoável. Se o seu computador tiver mais capacidade, você pode colocar mais. Eu colocarei 2 Gb para o meu, que tem 16 Gb de memória.

Memória RAM

Agora mexeremos na aba Rede. Precisaremos colocar uma placa de rede no Kali Linux, para que ele trabalhe adequadamente. Usaremos a placa de vídeo do VirtualBox. Ela está listada como Placa de rede exclusiva de hospedeiro(host-only).

Selecionar placa

Perceba que no canto inferior consta o aviso Configurações inválidas detectadas. Ao clicarmos sobre ele, seremos informado que o problema está no suporte USB 2.0/3.0.

Configuração inválida

Para resolver esse problema, clicaremos na aba USB. Selecionaremos a Controladora USB 1.1 (OHCI), e o aviso deve sumir.

Configuração USB

Depois, basta dar OK na configuração e a máquina do hacker está pronta. Já temos a nossa própria máquina, a do João e o servidor.

Switch

Sobre o curso Segurança de redes: Conheça as vulnerabilidades de servidores e clientes

O curso Segurança de redes: Conheça as vulnerabilidades de servidores e clientes possui 204 minutos de vídeos, em um total de 52 atividades. Gostou? Conheça nossos outros cursos de Redes em Infraestrutura, ou leia nossos artigos de Infraestrutura.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda Redes acessando integralmente esse e outros cursos, comece hoje!

  • 1241 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

Premium

  • 1241 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$75
à vista R$900
Matricule-se

Premium Plus

  • 1241 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$100
à vista R$1.200
Matricule-se

Max

  • 1241 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$120
à vista R$1.440
Matricule-se
Procurando planos para empresas?

Acesso por 1 ano

Estude 24h/dia onde e quando quiser

Novos cursos todas as semanas