
GitPwnd is a network penetration tool that lets you use a git repo for command and control of compromised machines
GitPwnd é uma ferramenta para auxiliar em testes de penetração de rede. GitPwnd permite que um atacante envie comandos para máquinas comprometidas e receba os resultados de volta usando um repositório git como camada de transporte de comando e controle. Ao usar o git como mecanismo de comunicação, as máquinas comprometidas não precisam se comunicar diretamente com seu servidor de ataque, que provavelmente está em um host ou IP não confiável para a máquina comprometida.
Atualmente, o GitPwnd assume que o repositório git de comando e controle está hospedado no GitHub, mas isso é apenas um detalhe de implementação para a iteração atual. A mesma técnica é igualmente aplicável a qualquer serviço que possa hospedar um repositório git, seja BitBucket, Gitlab, etc.
O script de configuração do GitPwnd (setup.py) e o servidor (server/) foram escritos e testados usando Python3, mas Python 2.7 provavelmente também funcionará. O processo de inicialização para configurar persistência em máquinas comprometidas foi testado no Python 2.7.
# Install Python dependencies
$ pip3 install -r requirements.txt --user
# Set up config
$ cp config.yml.example config.yml
# Configure config.yml with your custom info
# Run the setup script
$ python3 setup.py config.yml
$ cd server/
$ pip3 install -r requirements.txt --user
$ python3 server.py
Contribuições são bem-vindas! Sinta-se à vontade para abrir uma issue ou PR e responderemos o mais rápido possível.