{"id":22407,"date":"2025-04-11T22:37:08","date_gmt":"2025-04-12T01:37:08","guid":{"rendered":"https:\/\/www.ethicalhacker.com.br\/site\/?p=22407"},"modified":"2025-04-11T22:50:48","modified_gmt":"2025-04-12T01:50:48","slug":"chegamos-a-um-ponto-critico-sem-distro","status":"publish","type":"post","link":"https:\/\/www.ethicalhacker.com.br\/site\/2025\/04\/basico\/chegamos-a-um-ponto-critico-sem-distro\/","title":{"rendered":"Chegamos a um ponto cr\u00edtico sem distro?"},"content":{"rendered":"\n<p style=\"text-align: justify;\">Existe um ciclo virtuoso na tecnologia que expande os limites do que est\u00e1 sendo constru\u00eddo e de como est\u00e1 sendo usado. Um novo desenvolvimento tecnol\u00f3gico surge e captura a aten\u00e7\u00e3o do mundo. As pessoas come\u00e7am a experimentar e descobrem novas aplica\u00e7\u00f5es, casos de uso e abordagens para maximizar o potencial da inova\u00e7\u00e3o. Esses casos de uso geram valor significativo, alimentando a demanda pela pr\u00f3xima itera\u00e7\u00e3o da inova\u00e7\u00e3o e por sua vez, uma nova onda de inovadores cria a pr\u00f3xima gera\u00e7\u00e3o de casos de uso, impulsionando novos avan\u00e7os.<\/p>\n<p style=\"text-align: justify;\">A conteineriza\u00e7\u00e3o tornou-se a base do desenvolvimento moderno de software nativo em nuvem, suportando novos casos de uso e abordagens para a constru\u00e7\u00e3o de aplicativos resilientes, escal\u00e1veis \u200b\u200be port\u00e1teis. Ela tamb\u00e9m cont\u00e9m as chaves para a pr\u00f3xima inova\u00e7\u00e3o em entrega de software, exigindo simultaneamente a evolu\u00e7\u00e3o para um software seguro por design e continuamente atualizado, servindo como o meio para chegar l\u00e1.<\/p>\n<p style=\"text-align: justify;\">Abaixo, falarei sobre algumas das inova\u00e7\u00f5es que levaram \u00e0 nossa revolu\u00e7\u00e3o conteinerizada, bem como algumas das caracter\u00edsticas do desenvolvimento de software nativo em nuvem que levaram a esse ponto de inflex\u00e3o \u2014 um ponto que preparou o mundo a se afastar das distribui\u00e7\u00f5es Linux tradicionais e adotar uma nova abordagem para a entrega de software de c\u00f3digo aberto.<\/p>\n<p>\u00a0<\/p>\n<p id=\"iteration-has-moved-us-closer-to-ubiquity\" class=\"anchor-heading\"><strong>A itera\u00e7\u00e3o nos aproximou da ubiquidade<\/strong><\/p>\n<p style=\"text-align: justify;\">Muitas inova\u00e7\u00f5es abriram caminho para uma entrega de c\u00f3digo aberto mais segura e eficiente. Para aproveitar seu tempo e minhas palavras, destacarei tr\u00eas marcos espec\u00edficos. Cada etapa, desde os Cont\u00eaineres Linux (LXC) at\u00e9 o Docker e, por fim a Iniciativa de Cont\u00eaineres Abertos (OCI), foi constru\u00edda sobre sua antecessora, abordando limita\u00e7\u00f5es e desbloqueando novas possibilidades.<\/p>\n<p style=\"text-align: justify;\">O LXC lan\u00e7ou as bases, aproveitando os recursos do kernel Linux (ou seja, cgroups e namespaces) para criar ambientes leves e isolados. Pela primeira vez, os desenvolvedores puderam empacotar aplicativos com suas depend\u00eancias, oferecendo um certo grau de consist\u00eancia entre diferentes sistemas. No entanto, a complexidade do LXC para os usu\u00e1rios e a falta de um cat\u00e1logo de distribui\u00e7\u00e3o de imagens padronizado dificultaram sua ampla ado\u00e7\u00e3o.<\/p>\n<p style=\"text-align: justify;\">O Docker surgiu como um divisor de \u00e1guas, democratizando a tecnologia de cont\u00eaineres. Simplificou o processo de cria\u00e7\u00e3o, execu\u00e7\u00e3o e compartilhamento de cont\u00eaineres, tornando-os acess\u00edveis a um p\u00fablico mais amplo. A interface amig\u00e1vel do Docker e a cria\u00e7\u00e3o do Docker Hub, um reposit\u00f3rio central para imagens de cont\u00eaineres, fomentaram um ecossistema vibrante. Essa facilidade de uso impulsionou a r\u00e1pida ado\u00e7\u00e3o, mas tamb\u00e9m levantou preocupa\u00e7\u00f5es sobre a depend\u00eancia de fornecedores e a necessidade de interoperabilidade.<\/p>\n<p style=\"text-align: justify;\">Reconhecendo o potencial de fragmenta\u00e7\u00e3o, a OCI (Open Containers Initiative) interveio para padronizar formatos e tempos de execu\u00e7\u00e3o de cont\u00eaineres. Ao definir especifica\u00e7\u00f5es abertas, a OCI garantiu que os cont\u00eaineres pudessem ser constru\u00eddos e executados em diferentes plataformas, promovendo um cen\u00e1rio competitivo e saud\u00e1vel. Projetos como runC e containerd, nascidos da OCI, forneceram uma base comum para tempos de execu\u00e7\u00e3o de cont\u00eaineres e possibilitaram maior portabilidade e interoperabilidade.<\/p>\n<p style=\"text-align: justify;\">Os padr\u00f5es OCI tamb\u00e9m permitiram que o Kubernetes (outro padr\u00e3o independente de fornecedor) se tornasse uma plataforma verdadeiramente port\u00e1til, capaz de rodar em uma ampla gama de infraestruturas e permitindo que as organiza\u00e7\u00f5es orquestrassem seus aplicativos de forma consistente em diferentes provedores de nuvem e ambientes locais. Essa padroniza\u00e7\u00e3o e as inova\u00e7\u00f5es associadas desbloquearam todo o potencial dos cont\u00eaineres, abrindo caminho para sua presen\u00e7a onipresente no desenvolvimento de software moderno.<\/p>\n<p>\u00a0<\/p>\n<p id=\"-containerized-software-is-eating-the-world\" class=\"anchor-heading\"><strong>O software em cont\u00eaineres est\u00e1 devorando o mundo<\/strong><\/p>\n<p style=\"text-align: justify;\">Os avan\u00e7os no Linux, a r\u00e1pida democratiza\u00e7\u00e3o de cont\u00eaineres por meio do Docker e a padroniza\u00e7\u00e3o do OCI foram impulsionados pela necessidade, com a evolu\u00e7\u00e3o dos casos de uso de aplicativos nativos em nuvem impulsionando a orquestra\u00e7\u00e3o e a padroniza\u00e7\u00e3o. Essas caracter\u00edsticas dos aplicativos nativos em nuvem tamb\u00e9m destacam por que uma abordagem de prop\u00f3sito geral para distribui\u00e7\u00f5es Linux n\u00e3o oferece mais aos desenvolvedores de software as bases mais seguras e atualizadas para desenvolver.<\/p>\n<p>\u00a0<\/p>\n<p style=\"text-align: justify;\"><strong>Arquitetura orientada a microsservi\u00e7os:<\/strong> Aplicativos nativos em nuvem s\u00e3o normalmente desenvolvidos como um conjunto de pequenos servi\u00e7os independentes, com cada microsservi\u00e7o executando uma fun\u00e7\u00e3o espec\u00edfica. Cada um desses microsservi\u00e7os pode ser desenvolvido, implantado e mantido de forma independente, o que proporciona enorme flexibilidade e resili\u00eancia. Como cada microsservi\u00e7o \u00e9 independente, os desenvolvedores de software n\u00e3o precisam de pacotes de software abrangentes para executar um microsservi\u00e7o, contando apenas com o essencial dentro de um cont\u00eainer.<\/p>\n<p>\u00a0<\/p>\n<p style=\"text-align: justify;\"><strong>Conscientes do uso de recursos e eficientes:<\/strong> Os aplicativos nativos da nuvem s\u00e3o desenvolvidos para serem eficientes e conscientes do uso de recursos, minimizando a sobrecarga na infraestrutura. Essa abordagem simplificada se alinha naturalmente com cont\u00eaineres e uma estrat\u00e9gia de implanta\u00e7\u00e3o ef\u00eamera, com novos cont\u00eaineres sendo implantados constantemente e outras cargas de trabalho sendo atualizadas com o c\u00f3digo mais recente dispon\u00edvel. Isso reduz os riscos de seguran\u00e7a, aproveitando os pacotes de software mais recentes, em vez de esperar por patches e backports de distribui\u00e7\u00e3o.<\/p>\n<p>\u00a0<\/p>\n<p style=\"text-align: justify;\"><strong>Portabilidade:<\/strong> Os aplicativos nativos da nuvem s\u00e3o projetados para serem port\u00e1teis, com desempenho e confiabilidade consistentes, independentemente de onde o aplicativo esteja sendo executado. Gra\u00e7as \u00e0 padroniza\u00e7\u00e3o do ambiente por cont\u00eaineres, os desenvolvedores podem superar as antigas dores de cabe\u00e7a do tipo &#8220;funcionou bem na minha m\u00e1quina&#8221;.<\/p>\n<p>\u00a0<\/p>\n<p style=\"text-align: justify;\">O ciclo virtuoso da inova\u00e7\u00e3o que impulsiona novos casos de uso e por fim, novas inova\u00e7\u00f5es \u00e9 evidente quando se trata de conteineriza\u00e7\u00e3o e da ampla ado\u00e7\u00e3o de aplicativos nativos da nuvem. Fundamentalmente, esse ponto de inflex\u00e3o entre inova\u00e7\u00e3o e demandas de casos de uso impulsionou uma taxa incr\u00edvel de mudan\u00e7a no software de c\u00f3digo aberto \u2014 chegamos a um ponto em que as desvantagens de seguran\u00e7a, desempenho e inova\u00e7\u00e3o das distribui\u00e7\u00f5es Linux tradicionais &#8220;congeladas no tempo&#8221; superam a familiaridade e a estabilidade percebida da \u00faltima gera\u00e7\u00e3o de entrega de software.<\/p>\n<p>Ent\u00e3o, como deve ser a pr\u00f3xima gera\u00e7\u00e3o de entrega de software de c\u00f3digo aberto?<\/p>\n<p>\u00a0<\/p>\n<p id=\"enter-chainguard-os\" class=\"anchor-heading\"><strong>Chainguard OS<\/strong><\/p>\n<p style=\"text-align: justify;\">Para atender \u00e0s expectativas modernas de seguran\u00e7a, desempenho e produtividade, os desenvolvedores de software precisam do software mais recente, no menor formato poss\u00edvel, projetado para o seu caso de uso, sem nenhum dos CVEs que representam riscos para o neg\u00f3cio (e uma lista de &#8220;corre\u00e7\u00f5es&#8221; das equipes de seguran\u00e7a). Atender a esses par\u00e2metros exige mais do que apenas refazer o passado. Em vez disso, a pr\u00f3xima gera\u00e7\u00e3o de entrega de software de c\u00f3digo aberto precisa come\u00e7ar na fonte do software seguro e atualizado: os mantenedores upstream.<\/p>\n<p style=\"text-align: justify;\">\u00c9 por isso que\u00a0a Chainguard\u00a0desenvolveu essa nova abordagem sem distros, reconstruindo continuamente pacotes de software com base n\u00e3o nas distros downstream, mas nas fontes upstream que removem vulnerabilidades e adicionam melhorias de desempenho. Chamamos isso de\u00a0Chainguard OS\u00a0.<\/p>\n<p style=\"text-align: justify;\">O Chainguard OS serve como base para os amplos resultados de seguran\u00e7a, efici\u00eancia e produtividade que os produtos Chainguard oferecem hoje, &#8220;Chainguarding&#8221; um cat\u00e1logo em r\u00e1pido crescimento de mais de 1.000 imagens de cont\u00eainer.<\/p>\n<p>\u00a0<\/p>\n<p>O Chainguard OS adere a quatro princ\u00edpios-chave para tornar isso poss\u00edvel:<\/p>\n<ul>\n<li style=\"text-align: justify;\"><strong>Integra\u00e7\u00e3o e entrega cont\u00ednuas:<\/strong> enfatiza a integra\u00e7\u00e3o, os testes e o lan\u00e7amento cont\u00ednuos de pacotes de software upstream, garantindo um pipeline de desenvolvimento simplificado e eficiente por meio da automa\u00e7\u00e3o.<\/li>\n<li style=\"text-align: justify;\"><strong>Nano atualiza\u00e7\u00f5es e reconstru\u00e7\u00f5es:<\/strong> favorece atualiza\u00e7\u00f5es e reconstru\u00e7\u00f5es incrementais ininterruptas em vez de grandes atualiza\u00e7\u00f5es de vers\u00e3o, garantindo transi\u00e7\u00f5es mais suaves e minimizando mudan\u00e7as disruptivas.<\/li>\n<li style=\"text-align: justify;\"><strong>Artefatos m\u00ednimos, refor\u00e7ados e imut\u00e1veis:<\/strong> elimina o excesso de fornecedores desnecess\u00e1rios dos artefatos de software, tornando os pacotes secund\u00e1rios e extras opcionais para o usu\u00e1rio, ao mesmo tempo em que melhora a seguran\u00e7a por meio de medidas de refor\u00e7o.<\/li>\n<li style=\"text-align: justify;\"><strong>Minimiza\u00e7\u00e3o Delta:<\/strong> mant\u00e9m os desvios do upstream no m\u00ednimo, incorporando patches extras somente quando essencial e somente pelo tempo necess\u00e1rio at\u00e9 que uma nova vers\u00e3o seja cortada do upstream.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Talvez a melhor maneira de destacar o valor dos princ\u00edpios do Chainguard OS seja ver o impacto nas imagens do Chainguard.<\/p>\n<p style=\"text-align: justify;\">Na captura de tela abaixo (e que pode ser visualizada\u00a0<a href=\"https:\/\/images.chainguard.dev\/directory\/image\/python\/compare\" target=\"_blank\" rel=\"noopener\">aqui<\/a>\u00a0), voc\u00ea pode ver uma compara\u00e7\u00e3o lado a lado entre uma imagem externa &lt;python:latest&gt; e &lt;cgr.dev\/chainguard\/python:latest&gt; Chainguard.<\/p>\n<p>\u00a0<\/p>\n<div class=\"separator\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiPEaCwefkoka9xWJpOUgjCHfbSdHwFiiReiG41Je9B5KAl4eLXCkmouBTNj0unoBLjHRwouDXVQYaVlP24wJhC3LTF2FQPwf_gMksleg5L_9EocBc2kChFstUqwIY1ukbZYbJazSWbMhumHPqDV8PZK6W0mOb4lTfzqYV8TfetRUdLVR1DvuG90Q7STKo\/s728-rw-e365\/1.png\" class=\"gallery_colorbox\"><img loading=\"lazy\" decoding=\"async\" class=\"loaded aligncenter\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiPEaCwefkoka9xWJpOUgjCHfbSdHwFiiReiG41Je9B5KAl4eLXCkmouBTNj0unoBLjHRwouDXVQYaVlP24wJhC3LTF2FQPwf_gMksleg5L_9EocBc2kChFstUqwIY1ukbZYbJazSWbMhumHPqDV8PZK6W0mOb4lTfzqYV8TfetRUdLVR1DvuG90Q7STKo\/s728-rw-e365\/1.png\"  alt=\"\" width=\"582\" height=\"216\" border=\"0\" data-original-height=\"594\" data-original-width=\"1600\" \/><\/a><\/div>\n<div>\u00a0<\/div>\n<div>\n<p style=\"text-align: justify;\">Al\u00e9m da discrep\u00e2ncia bastante clara na contagem de vulnerabilidades, vale a pena examinar a diferen\u00e7a de tamanho entre as duas imagens de cont\u00eainer. A imagem Chainguard representa apenas 6% da imagem alternativa de c\u00f3digo aberto.<\/p>\n<p style=\"text-align: justify;\">Junto com o tamanho minimizado da imagem, a imagem do Chainguard foi atualizada pela \u00faltima vez apenas uma hora antes da captura de tela, algo que acontece diariamente:<\/p>\n<\/div>\n<div class=\"separator\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEgY45a-4M2HSX0QSucLND16weozcbQ6GshhNkUwYQLtq0Ra77LdWBChyphenhyphen0nohGM8XJXQqIMU7twyTRpxj5q4krdDKGYjc6aeeRxwiT8sO5wgP86Sfeqxke9ff-eRHCCxXztMfJktdJPpA5ZQW4QfRqILSQBj51DYih6gz2GcKvKPgOG3e7iMpFWsugITw2Y\/s728-rw-e365\/2.png\" class=\"gallery_colorbox\"><img loading=\"lazy\" decoding=\"async\" class=\"loaded aligncenter\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEgY45a-4M2HSX0QSucLND16weozcbQ6GshhNkUwYQLtq0Ra77LdWBChyphenhyphen0nohGM8XJXQqIMU7twyTRpxj5q4krdDKGYjc6aeeRxwiT8sO5wgP86Sfeqxke9ff-eRHCCxXztMfJktdJPpA5ZQW4QfRqILSQBj51DYih6gz2GcKvKPgOG3e7iMpFWsugITw2Y\/s728-rw-e365\/2.png\"  alt=\"\" width=\"592\" height=\"364\" border=\"0\" data-original-height=\"788\" data-original-width=\"1280\" \/><\/a><\/div>\n<div>\u00a0<\/div>\n<div>\u00a0<\/div>\n<div style=\"text-align: justify;\">Uma r\u00e1pida an\u00e1lise dos dados de proced\u00eancia e SBOM ilustra a integridade e imutabilidade de ponta a ponta dos artefatos \u2014 um tipo de r\u00f3tulo nutricional completo que ressalta a seguran\u00e7a e a transpar\u00eancia que uma abordagem moderna para entrega de software de c\u00f3digo aberto pode fornecer.<\/div>\n<div>\u00a0<\/div>\n<div>\n<p style=\"text-align: justify;\">Cada imagem do Chainguard \u00e9 um exemplo pr\u00e1tico do valor que o Chainguard OS oferece, oferecendo uma alternativa s\u00f3lida ao que j\u00e1 existia. Talvez o maior indicador seja o feedback que recebemos dos clientes, que compartilharam como as imagens de cont\u00eainer do Chainguard ajudaram a eliminar CVEs, proteger suas cadeias de suprimentos, alcan\u00e7ar e manter a conformidade e reduzir o trabalho dos desenvolvedores, permitindo-lhes realocar recursos preciosos.<\/p>\n<p style=\"text-align: justify;\">Acreditamos que os princ\u00edpios e a abordagem do Chainguard OS podem ser aplicados a uma variedade de casos de uso, estendendo os benef\u00edcios dos pacotes de software continuamente reconstru\u00eddos a partir do c\u00f3digo-fonte para uma parcela ainda maior do ecossistema de c\u00f3digo aberto.<\/p>\n<p style=\"text-align: justify;\">Se voc\u00ea achou isso \u00fatil, n\u00e3o deixe de conferir\u00a0nosso whitepaper\u00a0sobre o assunto ou\u00a0entre em contato com nossa equipe\u00a0para conversar com um especialista na abordagem distroless da Chainguard.<\/p>\n<p style=\"text-align: justify;\"><b>Observa\u00e7\u00e3o:\u00a0<\/b><i>este artigo foi escrito e contribu\u00eddo por\u00a0Dustin Kirkland\u00a0\u2014 vice-presidente de engenharia da\u00a0Chainguard\u00a0.<\/i><\/p>\n<\/div>\n<p>\u00a0<\/p>\n<p>Fonte e imagens: <a href=\"https:\/\/thehackernews.com\/2025\/04\/have-we-reached-distroless-tipping-point.html\" target=\"_blank\" rel=\"noopener\">https:\/\/thehackernews.com\/2025\/04\/have-we-reached-distroless-tipping-point.html<\/a><\/p>\n<div>\u00a0<\/div>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Existe um ciclo virtuoso na tecnologia que expande os limites do que est\u00e1 sendo constru\u00eddo e de como est\u00e1 sendo usado. Um novo desenvolvimento tecnol\u00f3gico surge e captura a aten\u00e7\u00e3o do mundo. As pessoas come\u00e7am a experimentar e descobrem novas aplica\u00e7\u00f5es, casos de uso e abordagens para maximizar o potencial da inova\u00e7\u00e3o. Esses casos de [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":22416,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[89,100,105],"tags":[],"class_list":["post-22407","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-basico","category-diversos","category-noticias"],"_links":{"self":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/22407","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/comments?post=22407"}],"version-history":[{"count":9,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/22407\/revisions"}],"predecessor-version":[{"id":22419,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/22407\/revisions\/22419"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/media\/22416"}],"wp:attachment":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/media?parent=22407"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/categories?post=22407"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/tags?post=22407"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}