Vulnerabilidade não corrigida no site Moviecom

Joas Antonio
4 min readNov 25, 2019

--

Um pesquisador de segurança chamado Joas Antonio, encontrou uma vulnerabilidade de XSS refletido no site da redes de cinema Moviecom

Antes de tudo, o que seria essa falha de XSS?

Segundo a OWASP, uma das principais organizações responsáveis por metodologias relacionadas em segurança com foco em aplicações web, descreve o seguinte da falha:

Os ataques de cross-site scripting (XSS) são um tipo de injeção, na qual scripts maliciosos são injetados em sites de outra forma benignos e confiáveis. Os ataques XSS ocorrem quando um invasor usa um aplicativo da Web para enviar código malicioso, geralmente na forma de um script do lado do navegador, para um usuário final diferente. As falhas que permitem que esses ataques sejam bem-sucedidos são bastante difundidas e ocorrem em qualquer lugar em que um aplicativo Web use entrada de um usuário na saída gerada sem validá-lo ou codificá-lo.

Um invasor pode usar o XSS para enviar um script mal-intencionado a um usuário inocente. O navegador do usuário final não tem como saber que o script não deve ser confiável e o executará. Como ele acha que o script veio de uma fonte confiável, o script mal-intencionado pode acessar todos os cookies, tokens de sessão ou outras informações confidenciais retidas pelo navegador e usadas com esse site. Esses scripts podem até reescrever o conteúdo da página HTML.

TIPOS DE XSS

XSS armazenado (AKA persistente ou tipo I)

O XSS armazenado geralmente ocorre quando a entrada do usuário é armazenada no servidor de destino, como em um banco de dados, em um fórum de mensagens, log de visitantes, campo de comentários etc. E, em seguida, a vítima pode recuperar os dados armazenados do aplicativo Web sem isso dados sendo tornados seguros para renderização no navegador. Com o advento do HTML5 e de outras tecnologias do navegador, podemos prever que a carga útil do ataque seja permanentemente armazenada no navegador da vítima, como um banco de dados HTML5, e nunca seja enviada ao servidor.

XSS refletido (AKA não persistente ou tipo II)

O XSS refletido ocorre quando a entrada do usuário é retornada imediatamente por um aplicativo da Web em uma mensagem de erro, resultado da pesquisa ou qualquer outra resposta que inclua parte ou toda a entrada fornecida pelo usuário como parte da solicitação, sem que esses dados sejam tornados seguros. renderizar no navegador e sem armazenar permanentemente os dados fornecidos pelo usuário. Em alguns casos, os dados fornecidos pelo usuário podem nunca sair do navegador (consulte a seguir XSS baseado em DOM).

XSS baseado em DOM (AKA Tipo 0)

Conforme definido por Amit Klein, que publicou o primeiro artigo sobre esse problema [1], o XSS baseado em DOM é uma forma de XSS em que todo o fluxo de dados corrompidos da fonte para o coletor ocorre no navegador, ou seja, a fonte dos dados é no DOM, o coletor também está no DOM e o fluxo de dados nunca sai do navegador. Por exemplo, a fonte (onde dados maliciosos são lidos) pode ser a URL da página (por exemplo, document.location.href) ou pode ser um elemento do HTML, e o coletor é uma chamada de método sensível que causa a execução dos dados maliciosos (por exemplo, document.write).

Como funciona o ataque no site da Moviecom?

  1. O atacante entra no site e seleciona uma região
  2. Após isso no campo “O que você procura?”, o atacante coloca um determinado código em javascript

Exemplo: “><img src=x onmouseover=alert(domain)>

No caso esse código ele um evento com o parametro <img> aonde caso você passe o seu mouse na imagem, ai sim, ele executa algo dentro do onmouseover e no exemplo seria um alert que retornaria o dominio do site.

Veja:

Além disso, foi possível até mesmo rodar o jogo doom no site

Essa vulnerabilidade já foi reportada no OBB e já entrei em contato com a própria Moviecom, porém sem solução nenhuma.

Espero que depois dessa noticia possa ter um feedback com a solução, assim garantindo a segurança dos dados de clientes como no meu caso, na hora de comprar um ingresso…

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

No responses yet

Write a response