Aplicativos de mensageria e a sua privacidade

AGRADEÇA AO AUTOR COMPARTILHE!

[email protected], quero começar esse artigo com a seguinte premissa: A internet nunca esquece.

Eu diria que apps tais como WhatsApp e Viber são provavelmente os aplicativos mais usados ​​em quaisquer smartphones no Brasil e quiçá no mundo na atualidade.

Por motivos óbvios: São simples de usar e funcionam bem, mesmo com conexões relativamente lentas.

A maioria dos usuários acredita que ninguém poderá ler as mensagens que estão sendo enviadas. Sim, o mundo virtual passa essa falsa sensação de privacidade.

Imagem via Shutterstock

Imagem via Shutterstock

Enretanto…

Na última segunda-feira os principais jornais on line do País noticiaram uma pesquisa da Safernet (http://new.safernet.org.br/) sobre o vazamento de dados íntimos. Os pedidos de ajuda subiram de 25 em 2010 para 224 em 2014. O perfil é predominantemente feminino e no caso das denúncias são pessoas com menos de 25 anos. Não é preciso mencionar que na vida real, fora das denúncias efetivadas, esse número é exponencialmente maior. A prática de enviar mensagens, fotos ou vídeos sexualmente explícitos pelo celular tem um nome: “sexting”.

Qualquer coisa que deixa o seu app sempre corre o risco de ser lançado na internet. Já parou para se perguntar quanto tempo o app mantém os dados entregues como, por exemplo, imagens no servidor?

As empresas informam que seus servidores apagam os dados quando as mensagens são entregues. Mas nunca podemos ter 100% de certeza.

Entenda que um vazamento pode acontecer de várias maneiras:

  • do telefone do seu receptor,
  • durante o transporte para os servidores do app, via ataque main-the-middle.
  • no próprio servidor do app

Detalhando o mecanismo de entrega de mensagens:

Vou detalhar de forma resumida o caminho das mensagens em tais aplicativos.

No caso do caminho telefone-servidor existe o famoso e já conhecido “armazenar e encaminhar”. Quando um app se conecta aos servidores de bate-papo, o processo store-and-forward ocorre em ambas as direções.

O cliente envia as mensagens pendentes para o servidor, enquanto o servidor envia todas as mensagens acumuladas destinadas para esse cliente. Este processo é feito em uma base “acknowlegement”. Isto significa que as mensagens são enviadas repetidamente até que o outro lado reconheça a recepção da mensagem. (Seus dados ficam no limbo 1).

O ciclo de vida de uma mensagem de ‘Fulano’ a ‘Beltrana’, por exemplo, é assim: 

  • Um usuário envia uma mensagem ao pressionar o botão ‘Enviar’.
  • O código do app de Fulano se conecta ao servidor de bate-papo.
  • Fulano envia o corpo da mensagem para o servidor de bate-papo.
    1. O servidor de bate-papo envia um ‘ack’ de volta para o código do app de modo que a mensagem não seja enviada novamente no futuro. Isso coloca a mensagem em ‘cheque único” na UI (interface do usuário).
  • A mensagem é detida pelo servidor. O app de Beltrana já estará on-line a certa altura, a mensagem pode então ser enviada na conexão que Beltrana estabeleceu com o servidor.

Agora… Se o cliente ‘Beltrana’ não está neste momento online, em seguida, o servidor tem uma árvore de decisão de ações a serem tomadas para tentar fazer Beltrana a se conectar. Normalmente, uma notificação de envio é entregue ao cliente Beltrana. (Seus dados ficam no limbo 2)

Algumas plataformas só vão mostrar a notificação diretamente para o usuário, e esperam por uma ação do usuário para iniciar o aplicativo. Outros permitem a notificação de envio para ser entregue diretamente para o app.

Uma diferença entre o servidor e o cliente para “armazenar e transmitir” é que o servidor, em tese, despreza mensagens uma vez que elas são reconhecidas – não há armazenamento de longo prazo. No âmbito do app, o cliente é o armazenamento de mensagens do tipo canônico, e o servidor é um roteador com o armazenamento temporário. (Seus dados ficam no limbo 3)

Você não tem que pensar que este é o fim do mundo, porque muitos servidores de e-mails ainda estão rodando sem criptografia através da rede, e podem ser facilmente visualizados com ferramentas como o Wireshark.

Mas o problema é que esses apps dão a impressão de que as mensagens estão sendo criptografadas quando são enviadas. Mas a implementação de SSL, até bem pouco tempo atrás, não era feita perfeitamente. Tradicionalmente o aplicativo usa a porta 443 para https, mas isso realmente não importa, já que as mensagens ainda estão sendo transferidas sem criptografia. O que significa que se você estiver na mesma rede WI-FI, pode ver os números de telefone, nomes de usuários e até mesmo mensagens em texto claro.

Adicionalmente o problema é que esses dados vão do app para os demais ambientes virtuais na rede, tais como Facebook, G+, Instagram, Youtube, Blogs. Passam-se os anos e a vítima tem seu material publicado, bastando alguém com uma memória um pouco melhor e tempo para buscar, a exposição então retorna com força.  A internet nunca esquece.

Finalizando, uma das melhores dicas de segurança é proteger o aplicativo com uma senha ou PIN. O próprio WhatsApp não oferece tal função, mas existem aplicativos de terceiros que fazem. Pode parecer complicado, mas se você perder seu telefone vai impedir que qualquer outra pessoa acesse suas conversas.

E a outra naturalmente é: não envie dados que possam ser constrangedores ou sigilosos.

Obs.: Segue canal de ajuda da Safernet para pessoas que sofreram Sexting ou Cyberbullying http://new.safernet.org.br/helpline

AGRADEÇA AO AUTOR COMPARTILHE!

Abian Laginestra

Mais artigos deste autor »

Profissional com 20 anos de experiência nas áreas de tecnologia, compliance e administrativa de empresas, com forte preocupação em segurança da informação e aderência regulatória. Possui larga experiência na área de Ciência da Computação, com ênfase em Sistemas de Informação. MBA em Gestão da Segurança da Informação pelo INFNET, e graduado em Processos Gerenciais pela EBAPE - Fundação Getúlio Vargas.


Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">