Pular para o conteúdo
Skillpedia
Sites e telas (frontend)48 mil · #3382

js-reverse

Permite que seu agente analise e reproduza lógicas de JavaScript do lado do cliente. Isso é útil para entender como dados são processados ou criptografados em sites.

O que ela faz

Esta ferramenta ajuda a entender como sites e aplicativos web funcionam por dentro, especialmente como eles enviam informações de forma segura ou oculta. Ela permite investigar o código JavaScript para descobrir segredos e reproduzir o comportamento em seu próprio computador.

Quando usar

  • ✓Quando você precisa saber como um site protege seus dados ao enviá-los.
  • ✓Se você quer entender a lógica por trás de uma função específica em um site.
  • ✓Para recriar o funcionamento de uma parte de um site em seu próprio ambiente para estudo.

Exemplo do que pedir para a IA

“Quero entender como este site envia meus dados de login de forma segura. Você pode analisar o código JavaScript para me mostrar?”

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/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/js-reverse/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/js-reverse/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta observa o comportamento do site no navegador, como ele envia requisições e executa códigos. Ela pode 'parar' a execução em pontos específicos para ver os dados e, em seguida, tenta recriar essa lógica em um ambiente controlado no seu computador.

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 sickn33/agentic-awesome-skills --skill js-reverse

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/js-reverse/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.

⚠️ USO AUTORIZADO APENAS Esta habilidade é apenas para fins educacionais ou avaliações de segurança autorizadas. Você deve ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso indevido desta ferramenta é ilegal e estritamente proibido.

Portão de confirmação obrigatório Antes de executar qualquer comando que sonde, explore, altere, persista em, extraia dados de ou tente acesso a credenciais contra um alvo:

  1. Peça ao usuário para declarar a URL exata do alvo, IP, conta ou recurso.
  2. Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
  3. Mostre os comandos exatos e explique seu efeito esperado.
  4. Aguarde a confirmação explícita na conversa atual.

Sem essa confirmação, permaneça somente leitura e forneça apenas orientação defensiva. Prefira um sandbox, VM descartável ou laboratório controlado.

Normas de Tarefas de Engenharia Reversa de JS Front-end MCP

Quando Usar

  • Entender como um aplicativo web assina ou criptografa requisições de API.
  • Reproduzir criptografia do lado do cliente localmente para validar a análise.

Escopo de Aplicação

Priorize o uso desta habilidade quando a tarefa pertencer aos seguintes cenários:

  • Localizar assinatura de interface, parâmetros de criptografia, campos de controle de risco
  • Observar o fluxo de requisição da página e a origem do script
  • Capturar argumentos de função e valores de retorno em tempo de execução
  • Rastrear o ponto de gatilho de um XHR/Fetch/WebSocket
  • Levar evidências da página de volta para o Node para reprodução local e ambiente simulado

Se o alvo for binário, APK, PE, ELF, DLL, SO, use ida-reverse, radare2 ou reverse-engineering em vez disso.

Mapeamento de Ferramentas Padrão do Ambiente Atual

Esta habilidade não pressupõe a existência de nomes de ferramentas brutos, mas vincula por padrão as ferramentas js-reverse_* disponíveis no ambiente do cliente atual.

Se a tarefa atual mencionar explicitamente jshookmcp, JS hook, CDP, pontos de interrupção do navegador, interceptação de rede, SourceMap ou desofuscação AST, ainda assim use esta habilidade; apenas mude a camada MCP subjacente para jshookmcp, em vez de tratá-la como uma nova entrada geral.

Pré-requisito: jshookmcp não é uma ferramenta de comando bruta local, mas um servidor MCP que precisa ser baixado, registrado explicitamente e habilitado. Somente após ser conectado e habilitado na configuração MCP do cliente selecionado (Claude, Codex, etc.), as camadas de ferramentas relevantes poderão ser chamadas.

Mapeamentos Comuns:

  • list_scripts -> js-reverse_list_scripts
  • get_script_source -> js-reverse_get_script_source
  • search_in_sources -> js-reverse_search_in_sources
  • break_on_xhr -> js-reverse_break_on_xhr
  • evaluate_script -> js-reverse_evaluate_script
  • get_paused_info -> js-reverse_get_paused_info
  • set_breakpoint_on_text -> js-reverse_set_breakpoint_on_text
  • list_network_requests -> js-reverse_list_network_requests
  • get_request_initiator -> js-reverse_get_request_initiator
  • get_websocket_messages -> js-reverse_get_websocket_messages
  • take_screenshot -> js-reverse_take_screenshot
  • new_page -> js-reverse_new_page
  • navigate_page -> js-reverse_navigate_page
  • select_page -> js-reverse_select_page
  • select_frame -> js-reverse_select_frame
  • pause/resume -> js-reverse_pause_or_resume

Se os prefixos dos nomes das ferramentas mudarem no futuro, atualize esta seção primeiro, não adivinhe temporariamente durante a execução.

Localização do jshookmcp

  • Papel: Camada de execução aprimorada do js-reverse, não um controlador geral independente
  • Adequado para: Automação de navegador, depuração CDP, Hook de JS, interceptação de rede, reconstrução de SourceMap, assistência de compreensão de AST
  • Pré-requisito de chamada: Baixe e registre @jshookmcp/jshook na configuração do cliente MCP primeiro, e certifique-se de que este servidor esteja habilitado
  • Entrada recomendada: Ainda execute conforme Observe → Capture → Rebuild, mas priorize a chamada das capacidades de navegador e Hook do jshookmcp na fase Observe/Capture
  • Relação com anything-analyzer: Ambos podem realizar coleta de dados do lado do navegador/rede; anything-analyzer é mais voltado para captura de pacotes e análise HTTP, jshookmcp é mais voltado para tempo de execução de JS, CDP, Hook e compreensão de código-fonte.

Princípios Centrais

  • Observe-first
  • Hook-preferred
  • Breakpoint-last
  • Rebuild-oriented
  • Evidence-first

Observe a página primeiro, depois colete amostras minimamente, depois simule o ambiente localmente, não pule a coleta de dados e adivinhe o ambiente.

Fluxo de Trabalho de Cinco Estágios

1. Observar

Objetivo: Confirmar primeiro a requisição alvo, scripts relacionados e funções candidatas, sem adivinhar o ambiente.

Ações Padrão:

  • Abra a página alvo usando js-reverse_new_page ou js-reverse_navigate_page
  • Encontre a requisição alvo usando js-reverse_list_network_requests
  • Rastreie a origem da chamada usando js-reverse_get_request_initiator
  • Reduza o escopo do script usando js-reverse_list_scripts, js-reverse_search_in_sources

Produção Obrigatória:

  • URL ou característica da requisição alvo
  • Pista do iniciador (initiator)
  • URL de script suspeito
  • Registro inicial da tarefa

2. Capturar

Objetivo: Obter amostras de parâmetros, ordem de chamada e evidências em tempo de execução com amostragem minimamente invasiva da requisição alvo.

Regras:

  • Priorize js-reverse_break_on_xhr
  • Priorize js-reverse_evaluate_script para observação leve em tempo de execução
  • Após o acerto, olhe primeiro js-reverse_get_paused_info
  • Use js-reverse_set_breakpoint_on_text se necessário

3. Reconstruir

Objetivo: Organizar as evidências da página em materiais de reprodução iteráveis localmente no Node.

Regras:

  • A simulação de ambiente local deve ser baseada em evidências de observação da página
  • Não é permitido simular window/document/navigator/crypto/storage de forma especulativa
  • Registre apenas uma decisão mínima de patch causal por vez

4. Aplicar Patch

Objetivo: Aplicar patches no ambiente com base em erros e na primeira divergência, até que o script local execute os parâmetros alvo de forma estável.

Regras:

  • Veja o que está faltando primeiro, depois aplique o patch
  • Faça apenas uma decisão mínima de patch por vez
  • Teste novamente imediatamente após cada patch
  • Registre cada patch na tarefa

5. Mergulho Profundo

Objetivo: Após a execução local bem-sucedida, prossiga para desofuscação, restauração do fluxo de controle e purificação da lógica de negócios.

Regras:

  • Se a tarefa atual for apenas gerar a assinatura, esta fase pode ser degradada
  • Se o algoritmo precisar ser reutilizado a longo prazo, esta fase é obrigatória
  • Bypass de ofuscação do Issue #65 (U–AV §4): JSVMP (AD) → E-js-vmp; CFF + array de strings (AE) → E-js-deobf; Anti-depuração DevTools/debugger (AF) → E-js-anti-debug. Gatilhos completos podem ser vistos em ../reverse-engineering/references/nonpe-format-cookbook.md; detalhes de AST ainda usam references/ast-deobfuscation.md.

Requisitos de Execução

  • Todos os passos importantes devem ser escritos nos artefatos de tarefa locais
  • Se não for possível explicar por que uma ferramenta está sendo chamada, não a chame
  • Priorize o uso das capacidades MCP prontas do js-reverse_* ou jshookmcp para coleta de dados direta, não escreva scripts para recriar capacidades primeiro
  • Em caso de falha, retroceda conforme references/fallbacks.md
  • A saída deve seguir references/output-contract.md

Referências Obrigatórias

  • Entrada de automação: references/automation-entry.md
  • Valores padrão de parâmetros: references/tool-defaults.md
  • Modelo de entrada de tarefa: references/task-input-template.md
  • Orquestração de tarefas específica do MCP: references/mcp-task-template.md

…

Perguntas frequentes

Preciso ter permissão para usar esta ferramenta?

Sim, você precisa ter permissão explícita e por escrito do dono do sistema antes de usar esta ferramenta. O uso não autorizado é ilegal.

O que acontece se eu não tiver permissão?

Se você não tiver permissão escrita, a ferramenta só poderá fornecer informações defensivas e não poderá executar nenhuma ação que investigue ou altere o alvo.

Esta ferramenta pode quebrar sites?

O objetivo principal é entender e reproduzir a lógica, não quebrar sites. Ela é projetada para análise e estudo, mas como qualquer ferramenta de investigação, deve ser usada com responsabilidade e permissão.

Detalhes

Descrição original do autor

Front-end JavaScript reverse engineering: locate signature chains, analyze encrypted request parameters, sample runtime behavior, and reproduce logic locally in Node for evidence-based output.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3382
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas