Pular para o conteúdo
Aback Tools Logo

Empacotador JavaScript/Desempacotador de Compressor

Detecte e descompacte código JavaScript compactado, incluindo o formato Dean Edwards Packer. Identifica automaticamente a assinatura do empacotador, extrai a carga útil codificada e o dicionário de palavras-chave e reconstrói o código-fonte legível original. Perfeito para pesquisa de segurança, engenharia reversa e compreensão de scripts compactados de terceiros - todo o processamento é local e privado.

JavaScript Packer/Compressor Unpacker

Detect and unpack packed JavaScript code, including Dean Edwards Packer format and similar compressors. Paste packed JavaScript code to automatically identify the packer, extract the unpacking algorithm, and reveal the original readable source code. All processing runs locally in your browser - no signup required.

Packer detected: Dean Edwards Packer - ready to unpack
490 bytes
176 bytes(-314)
Packer Type
Dean Edwards
Encoding Base
62
Keywords
11
Payload Size
64% of original
Extracted Components
Encoded Payload:6 1(3,4){2 0=0;2(5 7=0;7<3.8;7++){2 9=3[7];0+=9.8*9.a}b 0}
Base
62
Word Count
11
Splitter
Split by "|"
Keyword Dictionary (11 words):
#EncodedKeyword
00function
11items
22var
33
44
55for
66
77calculateTotal
88i
99length
10aprice
Note: This unpacker handles Dean Edwards Packer format (commonly used by JavaScript compressors online). It may not work with all packer variants, custom implementations, or multi-layer packing. For heavily obfuscated code, multiple passes of unpacking may be required. Always verify the unpacked output for correctness before use.

Por que usar nosso JavaScript Packer/Compressor Unpacker?

  • Detecção automática de Packer: detecta instantaneamente o formato Dean Edwards Packer e compressores JavaScript semelhantes. A ferramenta procura a assinatura da função característica (p,a,c,k,e,d), identifica a base de codificação, extrai dicionários de palavras-chave e revela o código-fonte original legível - tudo com um único clique.
  • Extração completa de componentes: visualize todos os componentes extraídos do compactador: a carga útil codificada, o número base da codificação, a contagem de palavras-chave e o dicionário completo de palavras-chave com mapeamentos codificados para originais. A tabela de palavras-chave mostra o identificador codificado na base N e sua palavra-chave decodificada correspondente para cada entrada.
  • Copie e baixe o código descompactado: exporte facilmente o código descompactado com os botões Copiar para a área de transferência ou Baixar como arquivo .js. A comparação lado a lado mostra a entrada compactada e a saída descompactada com alterações no tamanho de bytes para que você possa ver exatamente quanto espaço o empacotamento economizou.
  • Processamento seguro e privado do navegador: toda a descompactação é executada inteiramente no seu navegador usando JavaScript. O código compactado, os componentes extraídos e a saída descompactada nunca saem do seu dispositivo. Sem inscrição, sem upload de dados, sem rastreamento – privacidade total para pesquisa de segurança e análise de malware.

Casos de uso comuns para JavaScript Packer/Compressor Unpacker

  • Análise de script de malware e segurança: pesquisadores de segurança e analistas de SOC usam o descompactador de empacotador para analisar cargas JavaScript potencialmente maliciosas. O código compactado é comumente usado em downloads drive-by, páginas de phishing e droppers de malware. A descompactação revela a funcionalidade maliciosa real escondida atrás da camada de compressão.
  • Widgets minificados de engenharia reversa: ao analisar widgets JavaScript de terceiros ou scripts de rastreamento que usam empacotamento Dean Edwards, o descompactador revela os nomes das variáveis ​​originais e a estrutura do código. Isso ajuda a entender quais dados o script coleta, quais APIs ele chama e como ele se comporta no seu site.
  • Prática educacional de desofuscação: Os alunos que aprendem a ofuscação e desofuscação de JavaScript usam o packer unpacker para entender como funciona a embalagem Dean Edwards. A visualização dos componentes extraídos mostra exatamente como a base de codificação, o dicionário de palavras-chave e o algoritmo de substituição de limites de palavras reconstroem o código original.
  • Solução de desafios CTF: Os participantes do Capture The Flag (CTF) encontram JavaScript compactado na exploração da web e desafios de engenharia reversa. O descompactador do compactador remove rapidamente a camada de empacotamento, revelando o código subjacente que contém sinalizadores, cargas úteis ou dicas de vulnerabilidade.
  • Recuperação de código legado: ao manter aplicativos da Web mais antigos que usavam compressores JavaScript antes da minificação moderna se tornar padrão, o descompactador ajuda a recuperar o código-fonte legível de scripts compactados onde os arquivos originais não ofuscados foram perdidos.
  • Pesquisa de vulnerabilidades e recompensas de bugs: caçadores de recompensas de bugs que analisam aplicativos alvo geralmente encontram JavaScript compactado em produção. A descompactação revela a lógica real do aplicativo, os endpoints da API, os fluxos de autenticação e possíveis vulnerabilidades de segurança ocultas por trás da compactação.

O que é embalagem JavaScript?

O empacotamento JavaScript é uma técnica de compactação de código que substitui nomes de variáveis, nomes de funções e palavras-chave significativos por referências codificadas curtas. O formato mais comum é o Dean Edwards Packer, que usa um esquema de codificação base-N para representar identificadores de forma compacta. A saída compactada é envolvida em uma função autoextraível que, quando executada, reconstrói o código original substituindo os espaços reservados codificados pelas palavras-chave reais de um dicionário. Essa técnica foi amplamente utilizada nas décadas de 2000 e 2010, antes que ferramentas modernas de minificação como UglifyJS e Terser se tornassem padrão.

Como funciona nosso Packer Unpacker

  1. Digitalizar e detectar: ​​a ferramenta verifica seu código JavaScript em busca da assinatura característica Dean Edwards Packer - um eval() envolvendo uma função com parâmetros (p, a, c, k, e, d). Esta assinatura identifica exclusivamente o formato do compactador entre outros métodos de compactação.
  2. Extrair componentes: usando a extração de regex, a ferramenta extrai os cinco componentes principais do compactador: a string de carga útil codificada (p), o número base de codificação (a, normalmente 62), a contagem de palavras-chave (c), a lista de palavras-chave compactada (k) e o caractere divisor usado para separar palavras-chave. Esses componentes são exibidos na seção de componentes extraídos.
  3. Reconstruir código original: o descompactador implementa o algoritmo de decodificação Dean Edwards: ele converte cada índice numérico em sua forma codificada na base N usando dígitos de 0 a 9 e letras de az e, em seguida, substitui cada ocorrência de limite de palavra da forma codificada na carga útil pela palavra-chave correspondente do dicionário. O resultado é o código-fonte JavaScript legível original.

O que é descompactado

  • Referências de palavras-chave: espaços reservados numéricos na carga compactada (representados como strings codificadas curtas como 0, 1, a, b, etc.) são substituídos pelas palavras-chave e identificadores JavaScript reais da matriz de dicionário.
  • Nomes de variáveis ​​e funções: nomes significativos que foram substituídos por referências codificadas durante o empacotamento são restaurados à sua forma original, revelando o propósito real de cada variável e função.
  • Literais de string: os valores de string que foram extraídos e armazenados no dicionário de palavras-chave são colocados de volta no código em suas posições originais, tornando o código legível novamente.
  • Estrutura do código: A estrutura geral do código (loops, condicionais, chamadas de função, padrões de acesso a objetos) é totalmente preservada durante a descompactação. Apenas os identificadores codificados são transformados de volta à sua forma original.

Privacidade e Limitações

Nosso JavaScript Packer/Compressor Unpacker processa tudo localmente em seu navegador. Seu código compactado, componentes extraídos e saída descompactada nunca saem do seu dispositivo - sem uploads, sem processamento de servidor, sem armazenamento de dados. No entanto, esta ferramenta lida especificamente com o formato Dean Edwards Packer e compressores estruturalmente semelhantes. Pode não funcionar com implementações de empacotadores personalizados, código compactado multicamadas ou ferramentas modernas de ofuscação como Jscrambler ou Obfuscator.io. Para código compactado multicamadas, pode ser necessário executar o descompactador diversas vezes, passando a saída de cada passagem de volta como entrada até que nenhuma outra assinatura do empacotador seja detectada. Sempre verifique a exatidão do código descompactado antes de confiar nele.

Perguntas frequentes

Um empacotador/descompactador JavaScript reverte a compactação de código como o Dean Edwards Packer. Ele detecta código compactado por sua assinatura, extrai componentes codificados e reconstrói o código-fonte legível original, substituindo espaços reservados codificados por palavras-chave reais do dicionário de compactação.

O Dean Edwards Packer envolve o código em uma função autoextraível com a função de assinatura (p,a,c,k,e,d). Os parâmetros representam: p (carga útil codificada com espaços reservados), a (base de codificação, geralmente 62), c (contagem de palavras-chave), k (lista de palavras-chave separadas por vírgula), e (função de codificação) e d (dicionário opcional).

Nosso desempacotador lida com o formato padrão Dean Edwards Packer e compressores estruturalmente semelhantes. Pode não funcionar com implementações de empacotadores personalizados, código compactado multicamadas ou ferramentas modernas de ofuscação usando técnicas totalmente diferentes.

O dicionário de palavras-chave mapeia índices numéricos para palavras-chave e identificadores JavaScript reais. Cada índice é codificado em uma string base N e cada ocorrência como uma palavra inteira na carga útil é substituída pela palavra-chave correspondente. A visualização dos componentes extraídos mostra a tabela de mapeamento completa.

Absolutamente. Toda a descompactação acontece inteiramente no seu navegador usando JavaScript. Seu código compactado, componentes extraídos e saída descompactada nunca saem do seu dispositivo. Não é necessária inscrição, privacidade total.

Para código compactado multicamadas, pode ser necessário executar o descompactador várias vezes. Cole a saída descompactada de volta no painel de entrada e clique em Descompactar novamente. Cada passagem remove uma camada de embalagem até que o código esteja totalmente legível.

A base de codificação (normalmente 62) determina como os índices de palavras-chave são convertidos em identificadores de string. A base 62 usa dígitos de 0 a 9 e letras a-z e A-Z. Uma base mais alta produz identificadores codificados mais curtos, resultando em uma saída compactada mais compacta.

Sim - nosso JavaScript Packer/Compressor Unpacker é 100% gratuito, sem necessidade de inscrição, sem nível premium, sem limites de uso, sem restrições de tamanho de arquivo e sem anúncios. Use-o vezes ilimitadas para qualquer finalidade.