Tiny Online Tools logoTiny Online ToolssearchBuscar ferramentas…grid_viewTodas as ferramentas
Iniciochevron_rightFerramentas de engenharia reversachevron_rightAssistente de Desofuscação JavaScriptAssistente de Desofuscação JavaScript

Assistente de Desofuscação JavaScript

Reverte padrões estáticos comuns de ofuscação JavaScript: arrays de strings, escapes, constantes reduzidas, ramos mortos e colchetes convertidos em pontos.

infoIsto reverte apenas padrões de ofuscação ESTÁTICA comuns: arrays de strings, literais escapados, aritmética literal, ramos sempre verdadeiros/falsos e acesso por colchetes. Não executa nenhum código, por isso não consegue desempacotar carregadores baseados em eval, resolver condições dependentes de tempo de execução, nem reverter o achatamento de fluxo de controlo além de um teste literal trivial. Os nomes das variáveis ficam intactos.JavaScript ofuscado

Ferramentas semelhantes

Ofuscador de JavaScript

Ofuscador de JavaScript

Renomeia variáveis locais, oculta strings e achata o fluxo de controle em JavaScript, tudo no seu navegador, sem enviar nada.

Analisador de Código Morto JavaScript

Analisador de Código Morto JavaScript

Cole um pacote JS e encontre funções de nível superior sem nenhuma referência estática no arquivo — uma análise heurística de alcançabilidade, não uma certeza.

Inspetor de JavaScript em PDF

Inspetor de JavaScript em PDF

Encontra todos os scripts dentro de um PDF — ações de documento, eventos de página e anotação e cálculos de formulário — e permite lê-los sem executá-los.

Extrator de Strings Binárias

Extrator de Strings Binárias

Extraia strings imprimíveis ASCII e UTF-16LE de qualquer arquivo binário, com deslocamentos de byte, comprimento mínimo configurável e filtragem em tempo real.

Visualizador de G-code CNC

Visualizador de G-code CNC

Visualize G-code de fresagem e router como uma trajetória 3D real — movimentos rápidos, passagens de corte, arcos e profundidade Z a cores, direto no seu navegador.

carimbo de data/hora conversor

carimbo de data/hora conversor

converter Unix timestamps into human-readable dates.

PDF para JPG

PDF para JPG

Converta paginas PDF em imagens JPG de alta qualidade.

apps

Mais ferramentas

Explore nossa colecao completa de ferramentas online gratuitas.

O que esta ferramenta reverte

Muitos ofuscadores de JavaScript — incluindo o deste mesmo site — reescrevem o código através de um pequeno conjunto de transformações estáticas mecânicas: movem cada string literal para um único array e substituem cada uso por uma chamada a uma função getter, escapam caracteres normais como sequências \xNN ou \uNNNN, expandem aritmética simples em expressões equivalentes porém mais longas, envolvem código real num if sempre verdadeiro ou sempre falso, e reescrevem a.b como a['b']. Esta ferramenta reverte exatamente essas cinco coisas:

  1. Inlining de array de strings — encontra var _s = ["foo", "bar"]; function _g(i){ return _s[i]; } e substitui cada chamada tipo _g(0) cujo índice seja um número literal pela string real, depois remove o array e a função se mais nada os usar.
  2. Decodificação de escapes — mostra \x48\x69 como Hi em vez da forma escapada.
  3. Redução de constantes — transforma 1 + 2 em 3, "a" + "b" em "ab" e aritmética literal semelhante, evitando qualquer coisa que exigisse adivinhação (como dividir por um literal zero).
  4. Remoção de ramos mortosif (true) { A } else { B } torna-se apenas A; um while (false) {} desaparece por completo.
  5. Colchete para pontoobj['nome'] torna-se obj.nome quando nome é um identificador válido.

O que não faz

Isto é correspondência de padrões estática sobre uma AST, não um desofuscador geral. Não executa nenhum código, por isso não consegue desempacotar um carregador baseado em eval, resolver um predicado opaco que dependa de um valor em tempo de execução, nem reverter o achatamento de fluxo de controlo além do caso literal único de if/while/ternário acima. Os nomes das variáveis são deixados exatamente como estão — _0x1a2b continua _0x1a2b. Se o seu ficheiro não corresponder exatamente à forma array-de-strings + função getter, essa fase simplesmente reporta zero chamadas embutidas em vez de adivinhar outro padrão.

Como funciona

O código é analisado numa AST com acorn, percorrido e reescrito com transformações escritas à mão que só atuam quando um valor já é comprovadamente literal, e regenerado com astring. Nada é enviado a nenhum servidor: a análise e a reescrita acontecem no seu navegador.

Como usar

Cole ou escreva JavaScript no editor e execute. O resumo mostra exatamente quantas vezes cada fase foi acionada, para que veja o que mudou e o que não mudou. Copie o resultado ou descarregue-o como ficheiro .js.