Ataque man-in-the-middle

O man-in-the-middle (pt: Homem no meio, em referência ao atacante que intercepta os dados) é uma forma de ataque em que os dados trocados entre duas partes (por exemplo, você e o seu banco) são de alguma forma interceptados, registrados e, possivelmente, alterados pelo atacante sem que as vitimas se apercebam.[1] Numa comunicação normal os dois elementos envolvidos comunicam entre si sem interferências através de um meio, aqui para o que nos interessa, uma rede local à Internet ou ambas.

Comunicação normal.
Comunicação interceptada.

Durante o ataque man-in-the-middle, a comunicação é interceptada pelo atacante e retransmitida de uma forma discricionária. O atacante pode decidir retransmitir entre os legítimos participantes os dados inalterados, com alterações ou bloquear partes da informação.

Como os participantes legítimos da comunicação não se apercebem que os dados estão a ser adulterados tomam-nos como válidos, fornecendo informações e executando instruções por ordem do atacante.

Exemplo de um ataque editar

Suponha que Alice quer comunicar com Bob. Enquanto isso, Pedro deseja interceptar a conversa para ler a mesma e, possivelmente, (embora este passo é desnecessário) entregar uma mensagem falsa para Bob.

Primeiro, Alice pede a Bob sua chave pública. Se Bob enviar sua chave pública para Alice, Pedro é capaz de interceptá-lo, um ataque man-in-the-middle pode começar. Pedro envia uma mensagem forjada para Alice que afirma ser de Bob, mas em vez disso inclui a chave pública de Pedro .

Alice, acreditando que esta chave pública venha de Bob, criptografa sua mensagem com a chave de Pedro e envia a mensagem cifrada de volta para Bob. Pedro novamente intercepta, decifra a mensagem usando sua chave privada, possivelmente altera a mesma se ele quiser, e re-encripta a mesma usando a chave pública Bob originalmente enviado para Alice. Quando Bob receber a mensagem cifrada, ele irá acreditar que ela veio de Alice.

1. Alice envia uma mensagem para Bob, que é interceptada por Pedro :

 Alice "Oi Bob, sou eu, Alice. Me passe a sua chave"-->  Pedro      Bob

2. Pedro envia esta mensagem para Bob; Bob não pode dizer que não é realmente de Alice:

 Alice      Pedro "Oi Bob, sou eu, Alice. Me passe a sua chave"-->   Bob

3. Bob responde com sua chave de criptografia:

 Alice      Pedro   <--[Chave de Bob] Bob

4. Pedro substitui a chave de Bob com a sua, e transmite isso para Alice, alegando que é a chave de Bob:

 Alice   <--[Chave de Pedro] Pedro      Bob

5. Alice criptografa uma mensagem com o que ela acredita ser a chave de Bob, pensando que só Bob pode lê-lo:

Alice "Me encontre no ponto de ônibus!"[Encriptado pela chave de Pedro]-->   Pedro      Bob

6. No entanto, a mensagem foi criptografada com chave de Pedro, Pedro pode decifrá-la, lê-la, modificá-la (se desejar), re-criptografar com chave de Bob, e envia ao Bob:

 Alice      Pedro "Me encontre em uma van próxima ao rio!"[Encriptado pela chave de Bob]-->   Bob

7. Bob acha que esta mensagem é uma comunicação segura de Alice.

Ferramentas Utilizadas editar

Para realizar o ataque, é possível utilizar as ferramentas Ettercap ou Wireshark, onde é possível realizar o envenenamento da tabela ARP, sendo assim, todos os computadores da rede passam a entender que o computador que emite pacotes é o Gateway, então todosos pacotes passam agora pelo computador atacante. Além disso, um segundo passo é necessário, falsificar o certificado SSL que realiza a criptografia na camada de transporte, é possível realizar isso utilizando as ferramentas sslsniff e ssldump, disponiveis para sistemas Linux

Referências

  1. «Ataque man in the middle». pt.kioskea.net. Consultado em 26 de fevereiro de 2011 
  Este artigo sobre Criptografia é um esboço. Você pode ajudar a Wikipédia expandindo-o.