DockerScan: Análise e hacking para Docker

Olá gente! Tudo bem?

Continuando a série de textos sobre Segurança e Docker, hoje vou falar sobre uma das ferramentas que citei no texto Segurança e hacking de containers Docker, vamos ver mais detalhes sobre a ferramenta DockerScan.

DockerScan é uma ferramentas de análise e hacking de containers Docker, com ela é possível fazer uma varredura buscando por vulnerabilidades de segurança e também fazer o inverso, injetar vulnerabilidades em imagens Docker, abaixo vamos ver suas principais funcionalidades e alguns exemplos de uso.

Principais Funcionalidades

-> Faz scan de uma rede tentando localizar os Docker Registries

-> Registry

  • Delete: Exclui image / tag remota
  • Info: Mostra informações de registros remotos
  • Push: Envia uma imagem
  • Upload: Upload de arquivo

-> Image

  • Analyze

Busca por informações confidenciais em uma imagem

Busca por senhas em variáveis de ambiente

Busca por qualquer URL / IP em variáveis de ambiente

Tenta identificar o usuário usado para executar o software

  • Extract: extrair uma imagem
  • Info: Obtém meta-informação da imagem
  • Modify:

entrypoint: altere o ponto de entrada em um Docker

trojanize: injeta um reverse shell em uma imagem Docker

user: altere o usuário em execução em uma imagem Docker

Instalando o DockerScan

Vamos ver agora como é simples instalar a ferramenta DockerScan.

Primeiro instale o gerenciador de pacotes da linguagem Python o pip:

$ python3.5 -m pip install -U pip

Agora instalamos o DockerScan

$ python3.5 -m pip install dockerscan

Verifique se a instalação foi feita corretamente e exiba as opções de funcionamento:

$ dockerscan -h

Exemplos de utilização

Agora vamos para a parte legal, por a mão na massa, vamos ver alguns exemplos de como o DockerScan pode ser utilizado:

Com o comando a baixo pode ser escaneada uma imagem para identificar possíveis vulnerabilidades:

$ dockerscan image info nome-da-imagem

Seguindos os passos a baixo podemos injetar vulnerabilidade em uma imagem Docker. Vamos adicionar um reverse shell neste exemplo:

Um reverse shell é um tipo de shell no qual a máquina alvo se comunica de volta à máquina atacante. A máquina atacante tem uma porta ouvinte na qual ele recebe a conexão, que ao usar, o código ou a execução do comando são alcançados.

Isso é tudo por enquanto, no repositório do projeto DockerScan pode ser encontrada mais informações sobre esta ferramenta, se você conhece outras dicas, ferramentas, ficou com alguma dúvida ou tem algo a contribuir, deixe um comentário abaixo. Obrigado pela leitura.

Texto originalmente publicado no Mundo Docker.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.