Este projeto foi desenvolvido estritamente para fins educacionais e de pesquisa em segurança cibernética. O objetivo é demonstrar o funcionamento técnico de ameaças digitais para melhorar mecanismos de defesa e detecção. O uso deste código para fins maliciosos, sem autorização expressa em sistemas de terceiros, é ilegal e viola as diretrizes de segurança.
Este projeto é uma Prova de Conceito (PoC) que simula o comportamento básico de um Ransomware. Ele foi desenvolvido como um desafio prático para consolidar conhecimentos em manipulação de arquivos no sistema operacional e aplicação de algoritmos de criptografia com Python.
O projeto é dividido em duas partes essenciais:
encrypter.py: Localiza o arquivo alvo, realiza a leitura dos dados, aplica a criptografia e altera a extensão do arquivo.decrypter.py: Localiza o arquivo criptografado, realiza a leitura dos dados afetados, reverte o processo de criptografia utilizando a chave correta e restaura o arquivo original.
- Linguagem: Python 3.x
- Bibliotecas:
os(manipulação de sistema) epyaes(criptografia AES) - Conceito: Criptografia Simétrica (AES - Advanced Encryption Standard)
Primeiro criamos um arquivo .txt com qualquer coisa escrita como um teste.
Após isso, desenvolvemos nosso arquivo de criptografia usando a linguagem Python. Como o Kali Linux já possui o Python instalado nativamente, precisamos apenas preparar o ambiente para receber as bibliotecas externas (como o pyaes). Para evitar conflitos com o sistema operacional e garantir que o projeto rode em uma estrutura limpa, criamos e ativamos um ambiente virtual isolado (venv), onde todas as dependências do laboratório ficam guardadas separadamente.
os: É uma biblioteca nativa do Python utilizada para interagir diretamente com o sistema operacional. Neste projeto, ela é usada especificamente para manipular o sistema de arquivos e deletar o arquivo original após a leitura dos dados.pyaes: É a biblioteca responsável pelo trabalho pesado da criptografia. Ela implementa o algoritmo AES (Advanced Encryption Standard), um dos padrões de cifragem mais seguros e auditados do mundo, utilizado globalmente por governos, instituições financeiras e empresas de tecnologia para proteger dados sensíveis.
O script define que o alvo é o arquivo teste.txt.
Ele abre o arquivo no modo "rb" (Read Binary / Leitura Binária). Isso é um detalhe técnico importante: em vez de ler o arquivo como texto simples, ele lê os bytes brutos (zeros e uns). Isso garante que o script funcione com qualquer tipo de arquivo: fotos, PDFs, executáveis, e não apenas textos.
O conteúdo é guardado na variável file_data e o arquivo é fechado para liberar memória.
Vetor de Ataque Simulado: Esta linha simula a letalidade de um ataque real. Através do método os.remove(), o arquivo original é deletado permanentemente do índice do sistema operacional. A partir deste exato momento do fluxo, as informações contidas na variável file_data passam a ser a única cópia sobrevivente dos dados na máquina.
- Derivação da Chave (
b"..."): O prefixobforça a conversão da string em uma cadeia de bytes. Como a string"testeransomwares"possui exatamente 16 caracteres, ela resulta em uma chave de 16 bytes (128 bits). O padrão AES exige comprimentos de chave estritos (128, 192 ou 256 bits). - Modo de Operação CTR (Counter Mode): O modo contador transforma a cifra de bloco AES em uma cifra de fluxo. Ele gera um fluxo de keystream baseado em um contador incremental e aplica uma operação lógica XOR entre este fluxo e os bytes do arquivo original. É um modo altamente performático, pois permite o processamento paralelo e não exige preenchimento (padding) no bloco final de dados.
A função .encrypt() processa a massa de bytes brutos utilizando a matriz matemática do algoritmo AES parametrizada pela chave. O resultado armazenado em crypto_data torna-se uma sequência binária pseudo-aleatória sem qualquer padrão reconhecível.
- Alteração de Extensão: Adiciona-se o sufixo
.ransomwaretrollao nome original (teste.txt.ransomwaretroll). Essa é uma assinatura clássica de malwares reais, que serve tanto para sinalizar o ataque ao usuário quanto para quebrar a associação de programas padrão do Sistema Operacional, impedindo que cliques duplos comuns abram o arquivo. - Modo de Escrita
"wb"(Write Binary): Grava a massa de dados cifrados diretamente no disco rígido, finalizando o processo de sequestro digital da informação.
Após executarmos (python encrypter.py teste.txt), nossa criptografia é feita com sucesso e obtemos um novo arquivo chamado de (teste.txt.ransomwaretroll).
Após a simulação da cifragem dos dados, desenvolvemos o script responsável por realizar o processo inverso: a reversão criptográfica para restaurar o arquivo original ao seu estado legível.
O código foi estruturado em Python utilizando os mesmos parâmetros de algoritmo e modo de operação para garantir a integridade da reversão:
- Leitura do Arquivo Cifrado: O script localiza o arquivo modificado (
teste.txt.ransomwaretroll) e realiza a leitura dos seus dados em modo binário ('rb').
- Reversão Criptográfica (AES-CTR): Utilizando a mesma chave simétrica de 16 bytes (
testeransomwares) e o modo de operação CTR (Counter Mode) através da bibliotecapyaes, a função.decrypt()processa os blocos binários para reconstruir o conteúdo original na memória.
- Limpeza do Sistema: O arquivo cifrado temporário é removido permanentemente do disco utilizando o método
os.remove().
- Restauração do Arquivo Original: Um novo arquivo com o nome original (
teste.txt) é criado e escrito em modo binário ('wb'), salvando os dados perfeitamente recuperados.
Após isso, podemos ler em texto legível o nosso arquivo novo arquivo com (python decrypter.py teste.txt.ransomwaretroll), e (cat teste.txt).
Este laboratório prático demonstrou o mecanismo fundamental de manipulação e transformação de arquivos utilizando criptografia simétrica (algoritmo AES no modo CTR). Através de scripts automatizados em Python, simulou-se o ciclo de vida de uma modificação não autorizada de dados (cifragem e remoção do arquivo original) seguido pelo processo de resposta a incidentes ou recuperação (descriptografia e restauração dos dados originais).
O objetivo principal foi compreender, em ambiente controlado de testes, como ameaças modernas interagem com o sistema de arquivos e como a matemática criptográfica opera em nível de bytes.
Os conceitos e estruturas de código explorados neste desafio possuem aplicação direta em diversas frentes da Segurança da Informação e Engenharia de Software:
- Simulação de Adversários (Red Teaming): Criação de artefatos controlados para testar se as soluções de monitoramento de uma empresa são capazes de detectar comportamentos suspeitos baseados em volumetria ou assinaturas.
- Engenharia de Detecção (Blue Teaming): Análise do comportamento do script (abrir -> ler -> deletar -> escrever) para o desenvolvimento de regras de correlação (como regras SIEM, YARA ou Sigma) que identifiquem e bloqueiem processos maliciosos em tempo real.
- Proteção de Dados Legítima: Aplicação dos mesmos conceitos de criptografia simétrica para rotinas automáticas de backup seguro e proteção de dados confidenciais em repouso (data at rest).
Por fim, a facilidade com que um script simples pode alterar a integridade de arquivos locais reforça a necessidade crítica de implementar defesas robustas e em camadas nas infraestruturas corporativas e pessoais. Para mitigar e evitar que ataques reais dessa natureza causem impactos operacionais, as seguintes posturas são fundamentais:
- Controle de Privilégios Mínimos (PoLP): Garantir que usuários e aplicações executem apenas com as permissões estritamente necessárias, impedindo que scripts alterem diretórios críticos do sistema.
- Monitoramento de Comportamento (EDR/XDR): Utilizar soluções de segurança avançadas que não dependam apenas de assinaturas de vírus conhecidos, mas que bloqueiem proativamente processos que apresentem comportamentos anômalos (como a modificação rápida e em massa de extensões de arquivos).
- Estratégia de Backup Resiliente (Regra 3-2-1): Manter cópias de segurança atualizadas, armazenadas em mídias diferentes e, crucialmente, com pelo menos uma cópia imutável ou offline (isolada da rede), garantindo a continuidade do negócio em qualquer cenário de falha ou incidente.
Agradeço sinceramente a você que acompanhou este documento até o final!
A jornada pelo universo da Segurança da Informação exige curiosidade, dedicação e o desejo contínuo de entender como as tecnologias funcionam nos bastidores. Desenvolver este laboratório prático e estruturar esta documentação foi um passo importante para consolidar conceitos essenciais de criptografia, automação e defesa cibernética.
Espero que este material tenha sido útil para expandir seus conhecimentos e ilustrar a importância de criarmos um ecossistema digital cada vez mais seguro e resiliente.













