Skip to content
KitploitKITPLOIT
FerramentasBlog
Log in
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
layerleak — layerleak – o Scanner de Segredos do Docker Hub | Kitploit
Ferramentas/GitHubGitHub/brumbelow/layerleak
Scanners de VulnerabilidadesSegurança de ContêineresSegurança na NuvemDevSecOpsDetecção de SegredosSegurança de API
GitHubbrumbelow/layerleak

layerleak

layerleak – o Scanner de Segredos do Docker Hub

Ver Repositório
42213há 22 diasRevisado 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

layerleak o Scanner de Segredos de Imagens OCI

made-with-Go

Consulte CONTRIBUTING.md para diretrizes de contribuição.

  • Scanner de segredos de imagens OCI que funciona contra qualquer registro compatível com OCI (Docker Hub, GHCR, Quay, GCR, MCR, Amazon ECR Public, auto-hospedado). Ele analisa camadas de imagem, metadados de configuração e histórico de imagem, e armazena resultados desduplicados por digest do manifesto.
  • Scanners de segredos tradicionais frequentemente tratam uma imagem de contêiner como um bloco plano ou dependem de um daemon Docker local. Este projeto é projetado em torno dos internos de imagens OCI.

Conteúdo

  • Página de Documentação
  • Capacidades Atuais
  • Instalação
  • Persistência Postgres
  • Como Iniciar
  • API HTTP
  • Implantação com Docker Compose (Dockge / Komodo)
  • Licença
  • Apoie este Projeto

Página de Documentação

  • https://brumbelow.github.io/layerleak/docs

O site publicado é construído a partir de web/ no branch main por .github/workflows/pages.yml. A fonte da documentação e a demonstração simulada do navegador estão ambas sob esse diretório.

Capacidades Atuais:

  • Imagens públicas de qualquer registro compatível com OCI (Docker Hub, GHCR, Quay, GCR, MCR, Amazon ECR Public, auto-hospedado)
  • Varredura somente leitura
  • Nenhuma verificação de segredo
  • Nenhuma dependência de daemon Docker necessária
  • Varredura ciente de manifesto e camada
  • Varre o sistema de arquivos final e artefatos de camadas excluídas
  • Varre metadados de configuração de imagem, variáveis de ambiente, rótulos e histórico
  • Desduplica resultados por impressão digital do segredo e colapsa trechos de contexto idênticos repetidos por manifesto
  • Detectores nativos para mais de 60 tipos de segredo, além dos padrões do TruffleHog como camada de fallback
  • Suprime resultados de caminhos de teste/fixture/spec/e2e/acceptance para reduzir falsos positivos em imagens de desenvolvimento

Instalação

Pré-requisitos:

  • Go 1.25.7+

Instale com Go:

go install github.com/brumbelow/layerleak@latest
layerleak --help

O destino de instalação canônico é a raiz do módulo. Para fixar uma versão explicitamente:

go install github.com/brumbelow/[email protected]

Substitua v1.0.0 pela tag v1.x.y publicada desejada. Certifique-se de que seu diretório GOBIN ou GOPATH/bin esteja no PATH.

O caminho do módulo é github.com/brumbelow/layerleak, então go install @latest resolve para a tag v1.x.y mais alta publicada. Uma versão v2.x.y do módulo exigiria que o caminho do módulo mudasse para github.com/brumbelow/layerleak/v2. Binários instalados via módulo reportam a versão do módulo resolvida através de layerleak --version; compilações a partir de checkout local reportam a versão que o Go incorpora para o checkout, caindo para dev quando nenhuma versão de módulo está disponível.

Compile a partir do código-fonte:

git clone https://github.com/brumbelow/layerleak.git
cd layerleak
go build -o layerleak .
./layerleak --help

Execute a API com uma imagem de contêiner:

docker pull ghcr.io/brumbelow/layerleak:latest
docker run --rm \
  -p 8080:8080 \
  -e LAYERLEAK_DATABASE_URL='postgres://<user>:<password>@<host>:5432/layerleak?sslmode=disable' \
  ghcr.io/brumbelow/layerleak:latest

A imagem do contêiner executa a API por padrão e define LAYERLEAK_API_ADDR=0.0.0.0:8080.

Configuração de ambiente opcional:

cp .env.example .env

Configuração de resultados e banco de dados:

export LAYERLEAK_LOG_LEVEL=info
export LAYERLEAK_FINDINGS_DIR=findings
export LAYERLEAK_API_ADDR=127.0.0.1:8080
export LAYERLEAK_PERSIST_RAW_SECRETS=0
export LAYERLEAK_TAG_PAGE_SIZE=100
export LAYERLEAK_HTTP_TIMEOUT=30s
export LAYERLEAK_MAX_FILE_BYTES=1048576
export LAYERLEAK_MAX_LAYER_BYTES=536870912
export LAYERLEAK_MAX_LAYER_ENTRIES=50000
export LAYERLEAK_MAX_MANIFEST_BYTES=0
export LAYERLEAK_MAX_CONFIG_BYTES=0
export LAYERLEAK_MAX_TAG_RESPONSE_BYTES=8388608
export LAYERLEAK_MAX_REPOSITORY_TAGS=0
export LAYERLEAK_MAX_REPOSITORY_TARGETS=0
export LAYERLEAK_REGISTRY_REQUEST_ATTEMPTS=2
# Sobrescritas opcionais de registro; geralmente deixe não definido.
export LAYERLEAK_REGISTRY_BASE_URL=
export LAYERLEAK_REGISTRY_AUTH_URL=
export LAYERLEAK_DATABASE_URL=postgres://postgres:postgres@localhost:5432/layerleak?sslmode=disable

As mesmas variáveis e seus padrões estão em .env.example, que é a fonte da verdade para valores padrão.

VariávelPadrãoPropósito
LAYERLEAK_LOG_LEVELinfoNível de log: debug, info, warn ou error.
LAYERLEAK_FINDINGS_DIRnão definidoOnde escrever arquivos de resultados JSON. Se não definido, assume findings/ sob o pai mais próximo contendo go.mod, caindo para o diretório de trabalho atual.
LAYERLEAK_API_ADDR127.0.0.1:8080Endereço de ligação para o servidor da API. A imagem do contêiner sobrescreve para 0.0.0.0:8080.
LAYERLEAK_PERSIST_RAW_SECRETS0Defina como 1 para escrever valores brutos de segredos e trechos brutos de contexto no disco e no Postgres. Os resultados permanecem ocultados por padrão.
LAYERLEAK_HTTP_TIMEOUT30sTempo limite por requisição para cada chamada de registro (manifestos, blobs, páginas de tags, tokens de autenticação). Aceita qualquer duração Go (30s, 2m, 1h).
LAYERLEAK_MAX_FILE_BYTES1048576 (1 MiB)Máximo de bytes descomprimidos armazenados em buffer por arquivo dentro de uma camada. Arquivos maiores que isso são ignorados como muito grandes. Deve ser maior que zero.
LAYERLEAK_MAX_LAYER_BYTES536870912 (512 MiB)Máximo de bytes do fluxo de camada descomprimido por camada. 0 desabilita o limite.
LAYERLEAK_MAX_LAYER_ENTRIES50000Máximo de entradas tar por camada. 0 desabilita o limite.
LAYERLEAK_MAX_MANIFEST_BYTES0Máximo de bytes do corpo do manifesto. 0 desabilita o limite.
LAYERLEAK_MAX_CONFIG_BYTES0Máximo de bytes do corpo da configuração de imagem. 0 desabilita o limite.
LAYERLEAK_MAX_TAG_RESPONSE_BYTES8388608 (8 MiB)Máximo de bytes por página de resposta da lista de tags do registro. 0 desabilita o limite.
LAYERLEAK_TAG_PAGE_SIZE100Tamanho da página da lista de tags do registro para varreduras em todo o repositório.
LAYERLEAK_MAX_REPOSITORY_TAGS0Máximo de tags enumeradas por varredura de repositório. 0 desabilita o limite.
LAYERLEAK_MAX_REPOSITORY_TARGETS0Máximo de alvos distintos resolvidos por varredura de repositório. 0 desabilita o limite.
LAYERLEAK_REGISTRY_REQUEST_ATTEMPTS2Número de tentativas (incluindo a primeira) para cada requisição de registro.
LAYERLEAK_REGISTRY_BASE_URLnão definidoSobrescrita opcional. Normalmente o layerleak deriva isso de cada referência de imagem; defina apenas para forçar varreduras através de um proxy ou endpoint alternativo.
LAYERLEAK_REGISTRY_AUTH_URLnão definidoSobrescrita opcional. Normalmente descoberto a partir do desafio WWW-Authenticate do registro.
LAYERLEAK_DATABASE_URLnão definidoSe definido, o layerleak escreve varreduras no Postgres e falha o comando se a persistência não for bem-sucedida.

Quando qualquer um dos limites MAX_* é definido como um valor positivo, excedê-lo falha a varredura com um erro claro em vez de truncar o trabalho silenciosamente.

Comportamento dos resultados:

Baixar ferramenta