#Docker
#Docker – Soluções WEB

Ferramenta de código aberto popular por fornecer um ambiente consistente para aplicativos. Usa contêineres isolados que compartilham o sistema operacional e recursos, reduzindo significativamente o uso de recursos em comparação com servidores ou máquinas virtuais.

Benefícios:
  • Portabilidade: Contêineres podem ser executados em qualquer ambiente que suporte Docker, seja localmente, na nuvem ou em servidores dedicados.
  • Eficiência: Compartilhamento de kernel entre contêineres reduz o uso de recursos em comparação com máquinas virtuais.
  • Velocidade: Permite criar, distribuir e implantar rapidamente aplicações em contêineres.
  • Reprodutibilidade: Garante que a aplicação seja executada da mesma forma em qualquer ambiente.
  • Escalabilidade: Docker facilita a escalabilidade de aplicações, permitindo que múltiplos contêineres sejam executados simultaneamente.
Ciclo de vida:
  • Construção: Criar imagens de contêiner com o comando docker build.
  • Distribuição: Publicar e compartilhar imagens no Docker Hub ou repositórios privados.
  • Execução: Executar contêineres a partir de imagens com o comando docker run.
  • Monitoramento: Verificar o desempenho e logs dos contêineres com docker logs e docker stats.
  • Manutenção: Parar, reiniciar ou remover contêineres e volumes com docker stop, docker restart, e docker rm.
Arquitetura:
  • Docker Daemon: Gerencia as operações do Docker no host, como construção e execução de contêineres.
  • Imagens: São templates imutáveis que contêm a aplicação e suas dependências para serem executadas em contêineres.
  • Contêineres: Instâncias executáveis de imagens que encapsulam a aplicação e suas dependências.
  • Docker Hub: Repositório online onde as imagens Docker podem ser armazenadas e compartilhadas.
Recursos:
  • Isolamento: Cada contêiner é isolado em seu próprio ambiente, com suas próprias bibliotecas e variáveis de ambiente.
  • Imagens Leves: Imagens Docker são compactas e reutilizáveis, permitindo o desenvolvimento ágil.
  • Integração Contínua: Facilita pipelines de CI/CD para testar e implementar contêineres automaticamente.
  • Orquestração: Integração com Kubernetes e Docker Swarm para orquestrar a execução de múltiplos contêineres.
  • Volumes Persistentes: Armazena dados de forma persistente usando volumes e bind mounts.
  • Segurança: Docker oferece recursos de controle de acesso, isolamento de contêiner e proteção de rede.
News
Vulnerabilidade Crítica no Docker
A Docker está alertando os usuários para atualizarem o Docker Engine em modo de correção, após descobrir uma vulnerabilidade de gravidade quase máxima que permaneceu ativa por cinco anos. Agora rastreada como CVE-2024-41110, o bug de escalonamento de privilégios foi originalmente descoberto em 2018 e corrigido na versão 18.09.1 de janeiro de 2019. No entanto, a correção não foi mantida nas atualizações seguintes, o que significa que as versões a partir da 19.03 continuaram vulneráveis. A vulnerabilidade está no uso de plugins de autorização (AuthZ) pelo Docker para um maior controle de acesso. Esses plugins são usados para aprovar e negar solicitações, e fazem isso com base nas informações fornecidas no corpo da solicitação, que são avaliadas para tomar decisões de validação. Os invasores poderiam explorar a vulnerabilidade enviando uma solicitação de API especialmente criada com o comprimento do corpo (Content-Length) definido como 0. Sem um corpo, o plugin AuthZ não recebe informações para serem usadas na solicitação de autorização. Ao enviar uma solicitação sem corpo, um invasor pode forçar o cliente da API do Docker Engine a encaminhar essa solicitação para um plugin de autorização, que pode, por engano, aprovar uma solicitação que teria sido negada se o conteúdo do corpo tivesse sido encaminhado. Isso pode levar à execução de comandos não intencionais, resultando em consequências como a escalada de privilégios por parte de atacantes. A Docker afirma que a probabilidade de esse ataque ser explorado é baixa, mas a avaliação do CVSS da vulnerabilidade indica que é um ataque de baixa complexidade que requer privilégios de baixo nível e nenhuma interação do usuário. O impacto potencial na confidencialidade, integridade e disponibilidade é considerado “alto”, o que contribuiu para uma pontuação de severidade geral de 9,9, de acordo com o Banco de Dados Nacional de Vulnerabilidades. Um aviso separado do projeto de código aberto Moby avaliou essa vulnerabilidade com uma pontuação perfeita de 10. A Docker recomenda que os usuários atualizem para as versões seguras: > v23.0.14 e > v27.1.0. Se você estiver executando uma versão afetada, mas não depende de plugins de autorização, você não está vulnerável ao CVE-2024-41110, e o mesmo vale para os usuários do Mirantis Container Runtime. Para quem usa o Docker Desktop, uma correção está a caminho na versão 4.33, mas o impacto é considerado menos grave do que em ambientes de produção, segundo a Docker. Para acessar a API do Docker, crucial para um exploit, o atacante já precisaria ter acesso local à máquina ou ter o daemon do Docker exposto via TCP. Embora as versões vulneráveis do Docker Engine estejam na versão mais recente do Docker Desktop, a configuração padrão do Desktop não depende de plugins AuthZ. Mesmo que as condições acima fossem favoráveis a um atacante, a escalada de privilégios também seria limitada à VM do Docker Desktop e não ao host. ®
Vulnerabilidade Crítica no Docker
A Docker está alertando os usuários para atualizarem o Docker Engine em modo de correção, após descobrir uma vulnerabilidade de gravidade quase máxima que permaneceu ativa por cinco anos. Agora rastreada como CVE-2024-41110, o bug de escalonamento de privilégios foi originalmente descoberto em 2018 e corrigido na versão 18.09.1 de janeiro de 2019. No entanto, a correção não foi mantida nas atualizações seguintes, o que significa que as versões a partir da 19.03 continuaram vulneráveis. A vulnerabilidade está no uso de plugins de autorização (AuthZ) pelo Docker para um maior controle de acesso. Esses plugins são usados para aprovar e negar solicitações, e fazem isso com base nas informações fornecidas no corpo da solicitação, que são avaliadas para tomar decisões de validação. Os invasores poderiam explorar a vulnerabilidade enviando uma solicitação de API especialmente criada com o comprimento do corpo (Content-Length) definido como 0. Sem um corpo, o plugin AuthZ não recebe informações para serem usadas na solicitação de autorização. Ao enviar uma solicitação sem corpo, um invasor pode forçar o cliente da API do Docker Engine a encaminhar essa solicitação para um plugin de autorização, que pode, por engano, aprovar uma solicitação que teria sido negada se o conteúdo do corpo tivesse sido encaminhado. Isso pode levar à execução de comandos não intencionais, resultando em consequências como a escalada de privilégios por parte de atacantes. A Docker afirma que a probabilidade de esse ataque ser explorado é baixa, mas a avaliação do CVSS da vulnerabilidade indica que é um ataque de baixa complexidade que requer privilégios de baixo nível e nenhuma interação do usuário. O impacto potencial na confidencialidade, integridade e disponibilidade é considerado “alto”, o que contribuiu para uma pontuação de severidade geral de 9,9, de acordo com o Banco de Dados Nacional de Vulnerabilidades. Um aviso separado do projeto de código aberto Moby avaliou essa vulnerabilidade com uma pontuação perfeita de 10. A Docker recomenda que os usuários atualizem para as versões seguras: > v23.0.14 e > v27.1.0. Se você estiver executando uma versão afetada, mas não depende de plugins de autorização, você não está vulnerável ao CVE-2024-41110, e o mesmo vale para os usuários do Mirantis Container Runtime. Para quem usa o Docker Desktop, uma correção está a caminho na versão 4.33, mas o impacto é considerado menos grave do que em ambientes de produção, segundo a Docker. Para acessar a API do Docker, crucial para um exploit, o atacante já precisaria ter acesso local à máquina ou ter o daemon do Docker exposto via TCP. Embora as versões vulneráveis do Docker Engine estejam na versão mais recente do Docker Desktop, a configuração padrão do Desktop não depende de plugins AuthZ. Mesmo que as condições acima fossem favoráveis a um atacante, a escalada de privilégios também seria limitada à VM do Docker Desktop e não ao host. ®