• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
  • Skip to footer

Sucuri Blog Português

Notícias de Segurança de Sites

  • Produtos
    • Segurança Completa para Sites
    • Proteção para Sites
    • Segurança para Muitos Sites
    • Segurança para Sites Enterprise
  • Opções
    • Detecção
    • Proteção
    • Desempenho
    • Resposta
    • Backups
  • Parcerias
    • Soluções para Agências
    • Parceiros
    • Programa de Indicações
    • E-commerce
  • Recursos
    • Guias
    • Webinars
    • Infográficos
    • SiteCheck
    • Relatórios
  • Ajuda Imediata
  • Login
  • Languages
    • Inglês
    • Espanhol
    • Português

Consultoria de Segurança: XSS Armazenado em bbPress

May 3, 2016Marc-Alexandre Montpas0 ComentáriosEnglishEspanol

0
COMPARTILHADOS
FacebookTwitterInscreva-se

Nível de Segurança: Perigoso

Nível de Exploração: Fácil/Remoto
DREAD Score: 7/10
Vulnerabilidade: XSS Armazenado
Versão Patched:  bbPress 2.5.9

Durante uma audição de rotina para o Firewall da Sucuri, descobrimos uma vulnerabilidade de XSS armazenada que afeta o plugin bbPress para WordPress, atualmente está instalado em 300.000 websites ao vivo – um desses sites, é o popular fórum de suporte wordpress.org.

Linha do Tempo da Divulgação da Vulnerabilidade:
  • 12 de abril de 2016 – Bug descoberto, relatório inicial à equipe do bbPress
  • 2 de maio de 2016 – A equipe do bbPress anuncia o lançamento de segurança
  • 3 de maio de 2016 – A Sucuri anuncia o lançamento

Seu Site está Correndo Risco?

Esse bug está presente em cada instalação padrão do bbPress < 2.5.9, então sim, seu site provavelmente está correndo risco. A vulnerabilidade permite que qualquer usuário malicioso participe em um fórum para inserir snippets de Javascript maliciosos nos posts e nas respostas. Isso é muito perigoso, devido a natureza social dos fóruns.

Como se trata de uma vulnerabilidade Cross-Site Scripting (XSS), pode permitir ao usuário sequestrar (hijack) a conta de outro usuário, e fazer ações em seu nome (como administradores, moderadores, etc.) para escalar os privilégios de usuários.

Detalhes Técnicos

Todos os posts e respostas são sanitizadas pela função do WordPress wp_kses(), que funciona como uma função de sanitização de whitelist. Isso significa que ela permite apenas tags HTML aprovadas e seus atributos whitelisted (e protocolo de URL para atributos como o href e src) pelo motor de filtro.

A função bbp_mention_filter é interessante, já que é uma das poucas funções que não provém do WordPress.

Esse código faz o seguinte:

  • Procura menções no post: bbp_find_mentions, tendo como resultado cada combinação a partir do regex: /[@]+([A-Za-z0-9-_\.@]+)\b/
  • Para cada combinação, verifica se ela corresponde a um usuário conhecido e se esse usuário está ativo ou não.
  • Uma vez feito isso, ele irá substituir essas menções por uma tag HTML de hyperlink, com o link para a página de perfil do usuário.

O código não verifica se as menções encontradas já estão localizadas dentro de um atributo de tag HTML. Então, se um usuário com o nome ‘test’ enviar uma resposta contendo uma tag de=o hyperlink cujo atributo está configurado para @test, isso quebraria a tag do hyperlink.

Para ilustrar melhor, isto:

<a href="@test">link</a>

… tornaria-se:

<a href="<a href="http://targetsite/test/profile/" rel="nofollow">test</a>">link</a>

Esse código quebra a sequência de aspas duplas da tag do hyperlink, permitindo ao atacante inserir handlers de eventos arbitrários (parecido com a divulgação do Akismet), com o objetivo de executar o código malicioso do Javascript.

Atualize o Mais Rápido Possível

Se você estiver usando uma versão vulnerável desse plugin, atualize o mais rápido possível! Se você não puder fazê-lo, recomendamos que use um Firewall ou uma tecnologia equivalente para fazer seu patch virtual.

0
COMPARTILHADOS
FacebookTwitterInscreva-se

Categorias: Divulgação de Vulnerabilidades, Segurança de WordPressTags: Javascript, Plugins do WordPress

Sobre Marc-Alexandre Montpas

A paixão de Marc por códigos e segurança da Informação não tem limite. Você pode encontrá-lo em competições de segurança capture-the flag ou pesquisando vulnerabilidades de segurança em muitos produtos por pura diversão. Ele também é um grande fã de heavy-metal. Siga o Marc noTwitter em @marcs0h.

Reader Interactions

Share Your Comments: Cancel reply

Primary Sidebar

Fique em contato com a Sucuri

Entre em contato com a equipe da Sucuri via redes sociais
  • Facebook
  • Twitter
  • LinkedIn
  • YouTube
  • Instagram
  • RSS Feed

Junte-se a Mais de 20.000 Inscritos!

Footer

Produtos

  • Firewall de Sites
  • Antivírus de Sites
  • Backups de Sites
  • Segurança de WordPress
  • Serviços Enterprise

SOLUÇÕES

  • Proteção contra DDoS
  • Detecção de Malware
  • Remoção de Malware
  • Prevenção de Malware
  • Remoção de Listas Negras

Suporte

  • Blog
  • Base de Conhecimentos
  • SiteCheck
  • Labs
  • FAQ

Empresa

  • Sobre
  • Mídia
  • Eventos
  • Emprego
  • Contato
  • Testemunhos
  • Facebook
  • Twitter
  • LinkedIn
  • Instagram

Login para Clientes

Sucuri Home

  • Termos de Uso
  • Política de Privacidade
  • Perguntas Mais Frequentes
© 2019 Sucuri Inc. Todos os direitos reservados.
Usamos ferramentas, como cookies, para habilitar serviços essenciais e funcionalidades em nosso site e para coletar dados sobre como os visitantes interagem com o site, os produtos e os serviços. Ao clicar em Continuar, você concorda com o uso dessas ferramentas para publicidade, analytics e suporte. Continuar Mais Informações
Privacy & Cookies Policy