Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
LOLBITS — ** DESCONTINUADO ** C2 framework que usa o Background Intelligent Transfer Service (BITS) como protocolo de comunicação e Direct Syscalls + Dinvoke para evasão de hooking em modo de usuário do EDR. | Kitploit
Ferramentas/GitHubGitHub/kudaes/lolbits
Escalada de PrivilégiosFrameworks de ExploraçãoMovimento LateralPós-ExploraçãoComando e ControleRed TeamingDesenvolvimento de Payloads
GitHubkudaes/lolbits

LOLBITS

** DESCONTINUADO ** C2 framework que usa o Background Intelligent Transfer Service (BITS) como protocolo de comunicação e Direct Syscalls + Dinvoke para evasão de hooking em modo de usuário do EDR.

Ver Repositório
2223820há 3 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

License

			 ██╗      ██████╗ ██╗     ██████╗ ██╗████████╗███████╗
			 ██║     ██╔═══██╗██║     ██╔══██╗██║╚══██╔══╝██╔════╝
			 ██║     ██║   ██║██║     ██████╔╝██║   ██║   ███████╗
			 ██║     ██║   ██║██║     ██╔══██╗██║   ██║   ╚════██║
			 ███████╗╚██████╔╝███████╗██████╔╝██║   ██║   ███████║
			 ╚══════╝ ╚═════╝ ╚══════╝╚═════╝ ╚═╝   ╚═╝   ╚══════╝

Índice

  • Sobre o Projeto
    • Agradecimentos
  • Primeiros Passos
    • Pré-requisitos
    • Configuração
  • Uso
  • Contribuição
  • Licença
  • Contato

Sobre o Projeto

O LOLBITS é um framework de C2 que utiliza o Background Intelligent Transfer Service (BITS) da Microsoft para estabelecer o canal de comunicação entre o host comprometido e o backend. O backend do C2 está oculto atrás de uma aplicação web flask aparentemente inofensiva e só é acessível quando as requisições HTTP recebidas pela aplicação contêm um cabeçalho de autenticação válido. Como esta ferramenta foi projetada para ser usada em ambientes altamente monitorados, os seguintes recursos foram implementados para evitar a detecção por EDR e AV:

  • Correção de ETW e AMSI.
  • Uso de chamadas de sistema diretas para evitar o hooking de API em modo de usuário do EDR.
  • Mapeamento manual de kernel32.dll e advapi32.dll em combinação com DInvoke.
  • Detecção básica de sandbox antes de estabelecer o canal de comunicação com o backend do C2.
  • Uso do BITS em modo de fundo para gerar o canal de comunicação sem perturbar a experiência do usuário.

Em relação à arquitetura, o LOLBITS é composto por 3 elementos principais:

  • O agente C# responsável por executar os comandos no host comprometido e enviar a saída de volta ao servidor C2 assim que a tarefa for concluída.
  • A aplicação web flask que atua como um despachante. Este elemento é o que permite ocultar a infraestrutura C2 por trás de um site inofensivo, ao mesmo tempo em que fornece novos comandos ao agente quando uma requisição autenticada é recebida.
  • O console C2, usado para controlar o agente.

Para impedir a inspeção de conteúdo por proxies, todo o conteúdo relevante enviado entre o agente e o servidor C2 é criptografado usando RC4 com uma chave secreta pré-compartilhada gerada aleatoriamente. Um diagrama de alto nível do comportamento da infraestrutura seria como mostrado na imagem a seguir:

![Diagrama de alto nível][high-level-diagram]

Para evitar que a Equipe Azul possa reproduzir algumas das requisições antigas e descobrir a infraestrutura do backend C2, cada cabeçalho de autenticação é gerado aleatoriamente e é válido apenas para um único ciclo (um ciclo é composto por uma requisição POST seguida de uma requisição GET, nessa ordem). Cabeçalhos de autenticação antigos serão ignorados e o site inofensivo será exibido para essas requisições.

Agradecimentos

Algumas funcionalidades desta ferramenta foram implementadas reutilizando código de outros projetos ou graças ao esforço de vários pesquisadores de segurança cibernética. Abaixo listo alguns dos trabalhos e projetos externos que foram usados de uma forma ou de outra para melhorar esta ferramenta:

  • Salsa Tools
  • Dinvoke
  • SharpSploit
  • Windows System Call Table
  • CheckPlease for Sandbox Evasion

Primeiros Passos

Pré-requisitos

Para a infraestrutura C2, é necessário um Windows Server 2016 ou superior com Python 3.4+ e PowerShell 5.1+. O agente C# foi testado com sucesso no Windows Server 2012, Windows Server 2016, Windows Server 2019, Windows 7, Windows 8.1 e Windows 10. Para compilá-lo, é necessário:

  • Visual Studio 2017 ou superior.
  • .NET Framework 4.5 ou superior.

Configuração

  1. Clone este repositório no seu servidor C2
git clone https://github.com/Kudaes/LOLBITS.git
  1. Instale o Servidor Web (IIS) através do Gerenciador do Servidor Windows. Certifique-se de instalar as funções CGI, ASP.NET e Extensibilidade .NET.

![Funções do Servidor][server-roles]

Também instale os recursos do .NET Framework e do BITS para o IIS.

![Recursos do Servidor][server-features]

  1. Execute o script setup.ps1 como administrador para implantar toda a infraestrutura e configurar o agente C#.

  2. Compile o agente C#. A compilação gerará um .exe e uma dependência externa (Newtonsoft.Json.dll). Você pode gerar um único .exe usando ILMerge ou apenas enviar ambos os arquivos para o host comprometido. Para evitar a saída de DEBUG, certifique-se de compilar o projeto como Aplicação Windows.

![Aplicação Windows][windows-app]

  1. (Opcional) Por padrão, o script setup.ps1 criará um novo Site da Web no seu IIS chamado lawlbits ouvindo na porta HTTP padrão (80/TCP). Este novo Site da Web não usa HTTP sobre TLS e, embora o conteúdo das requisições enviadas pelo agente C# ao C2 seja criptografado usando RC4 com uma chave secreta pré-compartilhada e gerada aleatoriamente, é recomendável configurar o uso de HTTPS para o novo site. Para fazer isso, recomendo usar o Let's Encrypt no lawlbits, que é uma das maneiras mais fáceis de configurar HTTPS. Depois disso, lembre-se de modificar a variável Url em Program.cs para usar HTTPS em vez de HTTP, que é o comportamento padrão.

Uso

Para obter a shell reversa, basta digitar python lawlbin.py em um cmd do servidor C2 e executar o agente C# no host comprometido.

Como este projeto nasce das cinzas de um projeto anterior e fracassado, algumas das funcionalidades antigas foram mantidas. O projeto antigo era uma shell onde todos os comandos disponíveis seriam executados exclusivamente usando Living of The Land Binaries. É daí que vem o LOL do LOLBITS, e é por isso que as seguintes funcionalidades são executadas exclusivamente usando LOLBINS (isso pode ajudar a contornar a AWS e alguns filtros de AV/EDR):

  • download: Baixar um arquivo de um Webdav remoto para o host comprometido.
  • base64encode: Codificar o conteúdo de um arquivo local usando base64.
  • base64decode: Decodificar um arquivo codificado em base64.
  • compile: Compilar arquivos .cs em .exe ou .dll.

Embora essas funcionalidades possam ser interessantes em alguns ambientes (hmm, baixar arquivos remotos sem usar PowerShell? Eu gosto disso!), eu as mantive apenas para reutilizar parte do código antigo para o console C2. Abaixo está uma lista com algumas outras funcionalidades que tenho certeza que serão mais úteis em um contexto clássico de red team:

Baixar ferramenta