
NebulaPulsar é um framework de implante em memória de prova de conceito para webshells Java (JSP) e ASP.NET (ASPX/ASHX/ASMX), originalmente desenvolvido como parte do projeto Alien.
Atualização: Este projeto agora se tornou um subprojeto do Alien para demonstrar minhas ideias e fins experimentais.
NebulaPulsar é um framework de implante in-memory de prova de conceito para Java (JSP) e ASP.NET (ASPX/ASHX/ASMX), originalmente desenvolvido como parte do projeto Alien.
Diferente das demonstrações tradicionais de webshell que focam apenas na execução de comandos, NebulaPulsar explora como um implante in-memory pode estabelecer um canal de comunicação criptografado, carregar dinamicamente payloads e executá-los inteiramente em memória.
O projeto destina-se à pesquisa em segurança, análise de malware e educação defensiva. Não foi projetado para ser um framework ofensivo operacional.
Detalhes técnicos:
Se você achar este projeto útil ou informativo, eu realmente apreciaria uma ⭐ no repositório. Seu apoio seria uma grande motivação para eu continuar melhorando esta ferramenta.
"Se você envergonha a pesquisa de ataque, você julga mal sua contribuição. Ofensa e defesa não são pares. A defesa é filha da ofensa." — John Lambert
Este projeto foi criado exclusivamente para fins educacionais, de pesquisa e de segurança cibernética defensiva.
Seu propósito é estudar a implementação de implantes in-memory modernos, comunicação criptografada e execução dinâmica de payloads nas plataformas Java e .NET.
O projeto não se destina a acesso não autorizado, persistência ou implantação maliciosa. Qualquer uso contra sistemas sem autorização explícita é estritamente desencorajado.
O autor não assume nenhuma responsabilidade por qualquer uso indevido ou dano resultante deste projeto.
Durante o desenvolvimento do Alien, eu queria entender melhor como webshells e implantes residentes em memória modernos são projetados internamente.
Muitos webshells disponíveis publicamente focam na funcionalidade, mas raramente explicam por que foram implementados daquela forma. Recursos como comunicação criptografada, execução de payload em memória, carregamento dinâmico de classes e implantes baseados em sessão são frequentemente tratados como caixas-pretas.
NebulaPulsar foi criado para preencher essa lacuna.
Em vez de clonar uma implementação existente, este projeto explora os conceitos subjacentes por trás dos implantes de memória modernos e demonstra como essas ideias podem ser implementadas tanto na plataforma Java quanto na .NET.
Ao longo do processo de desenvolvimento, estudei tópicos que incluem:
ClassLoader do JavaAssembly.Load() e reflexãoO objetivo é entender como essas técnicas funcionam, não incentivar seu uso indevido.
Este framework é dividido em duas camadas:
NebulaPulsar é o implante in-memory residente. Ele é responsável por:
DarkMatter é o payload executado pelo NebulaPulsar.
Ele implementa a lógica real de pós-exploração, mantendo-se independente da camada de transporte, facilitando a extensão com módulos e capacidades adicionais.
O NebulaPulsar é primeiro injetado no webshell alvo e permanece residente na memória.
Uma vez inicializado, ele estabelece um canal de comunicação criptografado e aguarda a chegada de payloads.
Payloads subsequentes, como o DarkMatter, são então entregues através deste canal. NebulaPulsar descriptografa o payload, carrega-o diretamente na memória e transfere a execução para ele.
DarkMatter é responsável por implementar funcionalidades mais avançadas, enquanto NebulaPulsar permanece leve e focado no gerenciamento de payloads e na comunicação.
Download:
wget https://github.com/iss4cf0ng/NebulaPulsar/releases/latest/download/NebulaPulsar.tar.gz
tar -xzf NebulaPulsar.tar.gz
cd ./NebulaPulsar
Execute com Python:
python3 main.py --url http://localhost/nebulapulsar.jsp --script java --encoding='utf-8'
Obrigado por conferir este projeto. Feedbacks e sugestões são bem-vindos.