CyberChef
O canivete cibernético suíço
CyberChef é um aplicativo da web simples e intuitivo para realizar todos os tipos de operações "cibernéticas" em um navegador da web. Essas operações incluem codificação simples como XOR e Base64, criptografia mais complexa como AES, DES e Blowfish, criação de binários e hexdumps, compactação e descompactação de dados, cálculo de hashes e somas de verificação, análise IPv6 e X.509, alteração de codificações de caracteres e muito mais. .
A ferramenta foi projetada para permitir que analistas técnicos e não técnicos manipulem dados de maneiras complexas sem ter que lidar com ferramentas ou algoritmos complexos. Foi concebido, projetado, construído e aprimorado gradativamente por um analista em seu tempo de inovação de 10% ao longo de vários anos.
Demonstração ao vivo
CyberChef ainda está em desenvolvimento ativo. Como resultado, não deve ser considerado um produto acabado. Ainda há testes e correção de bugs a serem feitos, novos recursos a serem adicionados e documentação adicional a ser escrita. Por favor contribua!
Não se deve confiar nas operações criptográficas no CyberChef para fornecer segurança em qualquer situação. Nenhuma garantia é oferecida quanto à sua exatidão.
Uma demonstração ao vivo pode ser encontrada aqui – divirta-se!
Recipientes
Se quiser experimentar o CyberChef localmente, você pode construí-lo você mesmo:
docker build --tag cyberchef --ulimit nofile=10000 .
docker run -it -p 8080:80 cyberchef
Ou você pode usar nossa imagem diretamente:
docker run -it -p 8080:80 ghcr.io/gchq/cyberchef:latest
Esta imagem foi criada e publicada por meio de nossos fluxos de trabalho do GitHub
Como funciona
Existem quatro áreas principais no CyberChef:
- A caixa de entrada no canto superior direito, onde você pode colar, digitar ou arrastar o texto ou arquivo no qual deseja operar.
- A caixa de saída no canto inferior direito, onde será exibido o resultado do seu processamento.
- A lista de operações na extrema esquerda, onde você pode encontrar todas as operações que o CyberChef é capaz de realizar em listas categorizadas ou por meio de pesquisa.
- A área da receita no meio, onde você pode arrastar as operações que deseja usar e especificar argumentos e opções.
Você pode usar quantas operações quiser de maneiras simples ou complexas. Alguns exemplos são os seguintes:
- Decodifique uma string codificada em Base64
- Converter uma data e hora para um fuso horário diferente
- Analisar um endereço Teredo IPv6
- Converta dados de um hexdump e descompacte
- Descriptografar e desmontar shellcode
- Exibir vários carimbos de data/hora como datas completas
- Realize diferentes operações em dados de diferentes tipos
- Use partes da entrada como argumentos para operações
- Execute a descriptografia AES, extraindo o IV do início do fluxo de criptografia
- Detectar automaticamente várias camadas de codificação aninhada
Características
- Arraste e solte
- As operações podem ser arrastadas para dentro e para fora da lista de receitas ou reorganizadas.
- Arquivos de até 2 GB podem ser arrastados pela caixa de entrada para carregá-los diretamente no navegador.
- Assar automaticamente
- Sempre que você modificar a entrada ou a receita, o CyberChef irá “assar” automaticamente para você e produzir a saída imediatamente.
- Isto pode ser desligado e operado manualmente se estiver afetando o desempenho (se a entrada for muito grande, por exemplo).
- Detecção automatizada de codificação
- CyberChef usa uma série de técnicas para tentar detectar automaticamente em quais codificações seus dados estão. Se encontrar uma operação adequada que dê sentido aos seus dados, ele exibirá o ícone 'mágico' no campo Saída, no qual você pode clicar para decodificar seus dados.
- Pontos de interrupção
- Você pode definir pontos de interrupção em qualquer operação da sua receita para pausar a execução antes de executá-la.
- Você também pode percorrer a receita, uma operação por vez, para ver a aparência dos dados em cada estágio.
- Salvar e carregar receitas
- Se você criar uma receita incrível que deseja usar novamente, basta clicar em “Salvar receita” e adicioná-la ao armazenamento local. Ele estará esperando por você na próxima vez que visitar o CyberChef.
- Você também pode copiar o URL, que inclui sua receita e informações, para compartilhá-lo facilmente com outras pessoas.
- Procurar
- Se você souber o nome da operação desejada ou uma palavra associada a ela, comece a digitá-la no campo de pesquisa e todas as operações correspondentes serão mostradas imediatamente.
- Destaque
- Ao destacar o texto na entrada ou saída, os valores de deslocamento e comprimento serão exibidos e, se possível, os dados correspondentes serão destacados na saída ou entrada respectivamente (exemplo: destaque a palavra 'pergunta' na entrada para ver onde aparece na saída).
- Salvar em arquivo e carregar do arquivo
- Você pode salvar a saída em um arquivo a qualquer momento ou carregar um arquivo arrastando e soltando-o no campo de entrada. Arquivos de até 2 GB são suportados (dependendo do seu navegador), no entanto, algumas operações podem demorar muito para executar essa quantidade de dados.
- CyberChef é inteiramente do lado do cliente
- Deve-se observar que nenhuma configuração ou entrada de sua receita (tanto texto quanto arquivos) é enviada para o servidor web CyberChef - todo o processamento é realizado dentro do seu navegador, no seu próprio computador.
- Devido a esse recurso, o CyberChef pode ser baixado e executado localmente. Você pode usar o link no canto superior esquerdo do aplicativo para baixar uma cópia completa do CyberChef e soltá-la em uma máquina virtual, compartilhá-la com outras pessoas ou hospedá-la em uma rede fechada.
Links diretos
Ao manipular o hash de URL do CyberChef, você pode alterar as configurações iniciais com as quais a página é aberta. O formato é https://gchq.github.io/CyberChef/#recipe=Operation()&input=...
Os argumentos suportados são recipe
, input
(codificado em Base64) e theme
.
Suporte ao navegador
CyberChef foi desenvolvido para oferecer suporte
- Google Chrome 50+
- Mozilla Firefox 38+
Suporte a Node.js.
CyberChef foi desenvolvido para oferecer suporte total ao Node.js v16
. Para obter mais informações, consulte a página wiki "Node API"
Contribuindo
Contribuir com uma nova operação para o CyberChef é super fácil! O script de início rápido orientará você durante o processo. Se você consegue escrever JavaScript básico, você pode escrever uma operação CyberChef.
Um passo a passo de instalação, guias de instruções para adicionar novas operações e temas, descrições da estrutura do repositório, tipos de dados disponíveis e convenções de codificação podem ser encontrados na página wiki "Contribuindo".
- Envie suas alterações para seu fork.
- Envie uma solicitação pull. Se estiver fazendo isso pela primeira vez, você será solicitado a assinar o Contrato de Licença de Contribuidor do GCHQ por meio do assistente CLA na solicitação pull. Isso também perguntará se você deseja que o GCHQ entre em contato com você sobre um agradecimento por sua contribuição ou sobre oportunidades de emprego no GCHQ.
Licenciamento
CyberChef é lançado sob a licença Apache 2.0 e é coberto pelos direitos autorais da Crown.