Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
pentest_lab — Laboratório local de testes de penetração usando docker-compose. | Kitploit
Ferramentas/GitHubGitHub/oliverwiegers/pentest_lab
Segurança WebTestes de PenetraçãoAprendizado e EducaçãoLabs e Prática
GitHuboliverwiegers/pentest_lab

pentest_lab

Laboratório local de testes de penetração usando docker-compose.

Ver Repositório
218552há 1 anoRevisado 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

Laboratório de Pentest

Não estou mais desenvolvendo ativamente isso, mas vou corrigir bugs e analisar issues e pull requests. Ajuda é apreciada :)

Este laboratório local de pentest utiliza docker compose para levantar vários serviços vítimas e um serviço atacante rodando Kali Linux. Se você executar este laboratório pela primeira vez, levará algum tempo para baixar todas as diferentes imagens docker.

Screencast

Comandos executados:

  • ./lab.sh --help
  • ./lab.sh --check-dependencies
  • ./lab.sh --up --all-services
  • ./lab.sh --info
  • ./lab.sh --overview all
  • ssh root@kali -o "UserKnownHostsFile /dev/null"
  • ./lab.sh --down
  • Uso

    O laboratório deve funcionar imediatamente se todas as dependências necessárias estiverem instaladas. Na inicialização, o laboratório executará uma verificação de dependências.

    Iniciar o laboratório

    root@kitploit:~
    git clone https://github.com/oliverwiegers/pentest_lab
    cd pentest_lab
    ./lab.sh -u
    

    Por padrão, o laboratório iniciará todos os serviços vítimas e um serviço red team. Outros serviços podem ser iniciados e adicionados. Mais informações sobre isso abaixo.

    Para mais informações de uso, considere ler a mensagem de ajuda exibida por ./lab.sh -h | --help.

    Dependências

    • bash
    • find
    • sed
    • yq (A versão Python. Não yq-go.)
    • docker
    • docker-compose

    O laboratório tem uma verificação de dependências embutida que é executada na inicialização. Isso também pode ser executado manualmente com ./lab.sh -C.

    Heimdall

    img

    Para facilidade de uso, uma interface Heimdall foi adicionada, exposta em localhost:7000. Todos os serviços que estão expostos à sua máquina local e podem ser acessados via navegador estão listados lá. As alterações feitas na interface são automaticamente salvas em ./etc/heimheimdall. Este diretório é então transformado em ./etc/heimdall.tar ao parar o laboratório. Este arquivo tar será extraído na inicialização. Tanto ./etc/heimdall.tar quanto ./etc/heimdall são ignorados pelo git por padrão. O papel de parede usado pode ser encontrado aqui.

    Serviços

    Este laboratório conhece os seguintes quatro tipos de serviços.

    • red_team
    • blue_team
    • victim
    • monitoring

    O serviço red team padrão - o serviço Kali - é uma instância Kali bastante básica. No entanto, o metapacote kali-tools-web está instalado. Para um laboratório de teste de aplicações web, as ferramentas básicas de teste web parecem úteis. Isso pode ser alterado editando o Dockerfile a partir do qual a imagem é construída. Ele está localizado em ./dockerfiles/kali. O serviço Kali instala estes dotfiles por padrão. Isso também pode ser alterado ajustando o Dockerfile.

    Serviços vítimas

    • juice-shop
    • hackazon
    • tiredful-api
    • WebGoat
    • bwapp
    • DVWA
    • XVWA
    • ninjas

    Serviços de monitoramento

    img
    img

    Embora os serviços de monitoramento também sejam serviços blue_team, eles são separados em uma categoria diferente.

    Esta pilha fornece funcionalidade de observação de logs e desempenho.

    Para mais informações sobre instâncias individuais, veja abaixo.

    Atualmente, a configuração de monitoramento consiste nos seguintes serviços:

    • Grafana - Visualizar logs e métricas.
    • Loki - Enviar logs do docker para o grafana.
    • Prometheus - Enviar métricas para o grafana.
    • cAdvisor - Coletar uso de recursos dos contêineres e métricas e enviar para o prometheus.

    Grafana

    A instância do Grafana fornece dois dashboards: um para logs e outro para métricas.

    • Dashboard de logs
    • Dashboard de métricas

    Eles são bastante básicos. Pode-se adicionar mais adicionando dashboards através da interface do Grafana. Esses dashboards serão perdidos quando o volume do Grafana for deletado. Para adicionar dashboards permanentemente, consulte a Documentação de Provisionamento do Grafana. Os diretórios usados para provisionamento estão localizados em ./etc/grafana/.

    Para alterar configurações através da interface do Grafana, deve-se fazer login como admin. As credenciais são as padrão: admin:admin. #hacktheplanet

    Loki

    Para que o Loki possa coletar logs do Docker, este laboratório instala o Loki Docker Driver como plugin do Docker.

    Prometheus / cAdvisor

    Para que o Prometheus possa acessar métricas de desempenho dos contêineres em execução no cluster, o cAdvisor é usado.

    Adicionando serviços

    Para adicionar serviços adicionais, é necessário um pouco de conhecimento de arquivos docker-compose.yml. O arquivo docker-compose.yml na raiz deste repositório é gerado automaticamente quando o laboratório é iniciado. Esse processo usa os arquivos yaml localizados em ./etc/services.

    root@kitploit:~
    ➜  pentest_lab tree ./etc/services
    ./etc/services
    ├── blue_team
    │   └── endlessh.yml
    ├── default.yml
    ├── monitoring
    │   ├── cadvisor.yml
    │   ├── grafana.yml
    │   ├── loki.yml
    │   └── prometheus.yml
    ├── red_team
    └── victim
        ├── beginner
        │   ├── bwapp.yml
        │   ├── dvwa.yml
        │   ├── hackazon.yml
        │   ├── tiredful.yml
        │   ├── webgoat.yml
        │   └── xvwa.yml
        ├── expert
        │   └── juice-shop.yml
        └── intermediate
            └── ninjas.yml
    

    Quais serviços serão iniciados são controlados invocando ./lab.sh com as opções correspondentes. Para desabilitar permanentemente um serviço, remova a extensão .yml do arquivo.

    Um exemplo de um serviço vítima seria:

    root@kitploit:~
    bwapp:
      labels:
        class: 'victim'
        cluster: 'pentest_lab'
        level: 'beginner'
      image: raesene/bwapp
      ports:
        - '8080:80'
      networks:
        pentest_lab:
          ipv4_address: 10.5.0.100
      hostname: bwapp
      volumes:
        - bwapp-data:/var/lib/mysql
    

    Nota: Se um serviço exigir algum tipo de instalação no primeiro uso, use docker inspect <image_name> para descobrir onde a imagem docker armazena os dados e adicione um volume apontando para esse diretório. No exemplo acima, isso é:

    root@kitploit:~
      volumes:
        - bwapp-data:/var/lib/mysql
    

    Isso garante que você não precise configurar o serviço novamente toda vez que reiniciar o laboratório. Mas se você quiser redefinir o laboratório e começar do zero, pode usar ./lab.sh -p | --prune. Isso excluirá todos os recursos pertencentes ao laboratório.

    Faixas de IP

    A razão pela qual usamos endereços IP estáticos é que a máquina Kali precisa ter um endereço IP que não mude para simplificar o login SSH. Mais informações na seção Dicas/Truques abaixo.

    • Serviços red team começam em 10.5.0.5
      • O serviço Kali tem 10.5.0.5.
    • Serviços blue team começam em 10.5.0.50
    • Serviços vítimas começam em 10.5.0.100
    • Serviços de monitoramento começam em 10.5.0.200

    Informações do serviço

    Se você adicionar serviços e houver informações adicionais que sejam úteis para qualquer pessoa que execute este laboratório, você pode adicionar essas informações em ./etc/services_info. O conteúdo deste arquivo será impresso linha por linha como está executando ./lab.sh -i.

    Dicas/Truques

    SSH

    Para uma conexão fácil ao serviço Kali, pode-se adicionar o seguinte ao $HOME/.ssh/cofig:

    root@kitploit:~
    Host kali
        User root
        Hostname 10.5.0.5
        UserKnownHostsFile /dev/null
        StrictHostKeyChecking accept-new
    

    Então, em vez de ssh [email protected] -o "UserKnownHostsFile /dev/null", pode-se executar ssh kali.

    Para usuários de tmux, o seguinte anexará automaticamente a uma sessão tmux:

    root@kitploit:~
    Host kali
        User root
        Hostname 10.5.0.5
        UserKnownHostsFile /dev/null
        StrictHostKeyChecking accept-new
        RequestTTY yes
        RemoteCommand tmux -L tmux new-session -As hacktheplanet
    
    Baixar ferramenta