Você Controla o Que Compõe Seu Produto? Como e Por Que Realizar Análise de Código Aberto

Você Controla o Que Compõe Seu Produto? Como e Por Que Realizar Análise de Código Aberto

Este artigo explora a importância da Análise de Código Aberto (OSA) para identificar vulnerabilidades, gerenciar riscos de licença e proteger contra ataques à cadeia de suprimentos. Descubra como a OSA pode fortalecer a segurança do seu produto e garantir o controle sobre suas dependências de código aberto.

MundiX News·28 de maio de 2026·10 min de leitura·👁 11 views

Olá! Meu nome é Ruslan, sou engenheiro no departamento de desenvolvimento de processos de segurança da YADRO. Hoje, vamos falar sobre código aberto (open source). No mundo do desenvolvimento moderno, ele é usado em quase todos os aplicativos: bibliotecas, frameworks e componentes open source ajudam a acelerar o desenvolvimento e torná-lo muito mais conveniente.

Mas há um problema: cada dependência não é apenas "vantagens", mas também riscos adicionais. Se uma vulnerabilidade aparecer no open source que você usa, você terá que corrigi-la com urgência - e dificilmente levará alguns minutos. Há também riscos legais - por exemplo, o autor do open source pode enviar uma solicitação para divulgar a parte do código que você modificou, e isso pode ser informações confidenciais para você. Como resultado, você não poderá fornecer parte do código, e a outra parte terá o direito total de ir ao tribunal.

A Análise de Código Aberto (Open Source Analysis, OSA) ajuda a evitar esses riscos. Vamos descobrir o que é e como executá-la.

Open Source - Tanto Risco Quanto Benefício

De acordo com o relatório Census III of Free and Open Source Software, de 70 a 96% do código em aplicativos modernos são componentes open source. Um serviço comum arrasta centenas de dependências transitivas para o projeto, das quais o desenvolvedor pode nem estar ciente.

Isso acarreta problemas:

  • Uma vulnerabilidade que pode estar em uma biblioteca open source se torna uma vulnerabilidade do seu aplicativo.
  • Os usuários confiam seus dados a você e esperam a segurança de seus serviços. Eles interagem com seu aplicativo, não diretamente com uma biblioteca separada. Quando ocorre um vazamento de dados ou um ataque, é você quem assume os riscos de reputação e legais. Adicione a isso possíveis perdas financeiras e a variedade de ataques - desde o roubo de dados até a introdução de código malicioso e o controle do sistema. E há também as "bombas dormentes": você pode não saber sobre a vulnerabilidade por anos, até que os invasores encontrem uma maneira de explorá-la. Poderíamos continuar assustando por muito tempo, mas vamos para o próximo ponto.
  • A atualização de uma dependência geralmente precisa ser adiada "para mais tarde", porque primeiro você precisa verificar se ela não vai quebrar o aplicativo.
  • Atualizações adiadas levam ao acúmulo de dívida técnica. Além disso, você pode continuar a usar código com vulnerabilidades já conhecidas e se privar de novas funções úteis que os desenvolvedores adicionaram.
  • Você pode violar acidentalmente o contrato de licença.
  • Infelizmente, as licenças de open source geralmente são lidas depois que a biblioteca é adicionada ao produto, ou não são lidas de forma alguma. Isso ameaça a empresa com ações judiciais, processos subsequentes e possíveis multas.

Como escrevi acima, a Análise de Código Aberto ajuda a evitar esses problemas. Acredito que ela deve se tornar uma prática comum - vamos falar sobre isso a seguir.

Quais tarefas a Análise de Código Aberto resolve

Vamos começar com o básico.

Open Source Analysis (OSA) é a análise de componentes open source que são usados em um aplicativo. A tarefa dessa análise é responder à pergunta:

"Quais riscos herdamos ao conectar outra biblioteca?"

A OSA se concentra em vários aspectos: vulnerabilidades, licenças, relevância e suporte de componentes, riscos para a cadeia de suprimentos (Supply Chain). Muitas vezes é usado com análise de composição (SCA). A combinação dessas práticas ajuda a avaliar a segurança do uso de open source de forma abrangente.

Com quais tarefas específicas a OSA ajuda:

  1. Encontrar vulnerabilidades - incidentes que já aconteceram.

Com a OSA, você identifica oportunamente vulnerabilidades em componentes abertos que podem levar a incidentes graves.

Como exemplo, sugiro que você se lembre do Log4Shell (CVE-2021-44228) - uma das vulnerabilidades mais significativas dos últimos anos. Essa vulnerabilidade RCE (Remote Code Execution) permitiu que invasores executassem código arbitrário em um servidor atacado por meio de uma simples solicitação de texto. Incidentes foram registrados em todo o mundo, e os desenvolvedores tiveram que lançar patches de emergência e desativar serviços. Depois desse caso, muitas empresas de desenvolvimento se perguntaram pela primeira vez se usavam Log4j em seus produtos. Aqueles que já tinham um processo de OSA construído foram capazes de responder a essa pergunta muito rapidamente. Outros gastaram dias e semanas.

E mais alguns exemplos:

  • XZ Utils Backdoor (CVE-2024-3094). Em março de 2024, tornou-se conhecido sobre a vulnerabilidade sob o codinome "XZ backdoor". Foi descoberto acidentalmente nas populares bibliotecas de compactação de dados XZ (liblzma). Qual foi a razão? O mantenedor não pôde mais se envolver no projeto e transferiu os direitos para um usuário de iniciativa, que acabou sendo o invasor. O resultado é um Supply Chain Attack, um backdoor incorporado no liblzma (xz-utils). Todos os modernos distribuições Linux foram afetadas - Debian, Fedora, Ubuntu e outros. O caso destacou a vulnerabilidade de projetos com um único mantenedor.
  • Trivy (CVE-2026-33634). Em março de 2026, o grupo TeamPCP implementou um ataque semelhante ao "efeito dominó", comprometendo vários projetos open source um após o outro. Primeiro, os hackers invadiram o Trivy - um popular scanner de vulnerabilidades usado em pipelines CI/CD. Eles introduziram código malicioso que roubava senhas e chaves de API diretamente durante a operação. Os tokens de acesso roubados dos usuários do Trivy foram usados para atacar o próximo alvo - a biblioteca para trabalhar com IA LiteLLM. Os invasores conseguiram publicar duas versões de pacote infectadas no PyPI em nome dos desenvolvedores. O código malicioso no LiteLLM foi oculto em um arquivo .pth. Esse arquivo é executado automaticamente no início do interpretador Python, o que significa que nem mesmo era necessário chamar explicitamente a biblioteca no código para a infecção. O caso com Trivy é um exemplo vívido de um ataque de vários níveis à cadeia de suprimentos (Supply Chain Attack).
  • Axios (CVE-2026-40175). Em março de 2026, Axios - uma das bibliotecas JavaScript mais populares para solicitações HTTP - foi atacada. Os invasores não invadiram diretamente o repositório GitHub - eles usaram engenharia social complexa para obter acesso ao computador do principal desenvolvedor do projeto. Os hackers entraram em contato com ele, fingindo ser funcionários de uma empresa de tecnologia, e o convidaram para uma reunião online. Quando o desenvolvedor tentou se conectar, foi-lhe oferecido para instalar uma "atualização" para o programa de videoconferência, que na verdade acabou sendo um cavalo de Troia de acesso remoto (RAT). Tendo assumido o controle do computador do mantenedor, os hackers publicaram versões maliciosas do Axios no registro npm. Ao instalar, essas versões executaram um cavalo de Troia multiplataforma que roubava credenciais e dava acesso oculto ao sistema.
  1. Identificar ataques à cadeia de suprimentos (Supply Chain Attacks).

Isso não é mais teoria, mas prática: os invasores os usam ativamente. Exemplos:

  • Carregamento de pacotes substituídos de repositórios públicos (Dependency Confusion);
  • Comprometimento de contas de mantenedores de projetos;
  • Introdução de código malicioso em atualizações.

Com a ajuda da OSA, você pode descobrir onde está a fonte da dependência e quem e como a mantém.

  1. Gerenciar riscos de licença já no estágio de desenvolvimento.

Um exemplo simples da prática. O produto já está pronto para lançamento, mas no estágio de verificação para entrega, de repente, fica claro que ele tem componentes distribuídos sob a licença GPL, e ela exige a divulgação do código-fonte do produto. Nessa situação, resta refazer o produto com urgência, transferir o lançamento e se preparar para uma possível perda de cliente.

A OSA permite tomar decisões de forma planejada. Durante a análise, as licenças dos componentes open source são verificadas. Se as licenças copyleft forem encontradas, uma substituição com condições mais "amigáveis" poderá ser encontrada para esses componentes open source.

Com a teoria clara, mas como essa análise se parece na prática?

Como a Análise de Código Aberto é conduzida

Passo um: inventário e SBOM.

A tarefa é entender quais componentes são usados no produto. Para isso, um Software Bill of Materials (SBOM) é formado. Os arquivos de manifesto (package.json, pom.xml), arquivos de bloqueio (package-lock.json) e imagens de contêiner são analisados. Como resultado, você obtém uma lista de dependências diretas e transitivas, indicando suas versões.

Passo dois: pesquisa e avaliação de vulnerabilidades conhecidas.

Todas as dependências são comparadas com bancos de dados de vulnerabilidades conhecidos - por exemplo, BDU FSTEC, NVD, CVE, GitHub Security Advisories. Se uma vulnerabilidade for detectada durante a verificação, um Application Security Engineer a analisa, determina se ela pode ser explorada por um invasor e filtra os falsos positivos dos scanners.

Passo três: análise de licenças.

Na maioria dos casos, as empresas têm uma política de uso de licenças: licenças permitidas (MIT, BSD, Apache 2.0), condicionalmente permitidas (LGPL), proibidas (GPL/AGPL). A OSA ajuda a identificar possíveis conflitos e faz você pensar em como usar, distribuir e modificar legalmente componentes open source em seu projeto.

Passo quatro: avaliação do suporte de componentes.

Ao escolher novos componentes, é importante avaliar não apenas as vulnerabilidades, mas também o suporte: quando a última versão foi lançada, quantos contribuidores ativos há no componente, se os desenvolvedores rastreiam as vulnerabilidades nas dependências de seu aplicativo e com que rapidez eles reagem aos problemas de segurança em seu produto. Uma biblioteca abandonada ou arquivada é um risco potencial de segurança.

Passo cinco: integração no CI/CD.

A aplicação da OSA na equipe pode ser desenvolvida:

  • Executando automaticamente em cada compilação do produto;
  • Bloqueando a compilação do produto se vulnerabilidades de nível crítico e alto forem encontradas;
  • Garantindo monitoramento constante e atualização das dependências existentes.

Como resultado, a integração da OSA no CI/CD permite automatizar verificações manuais e economizar o tempo de trabalho dos engenheiros.

A análise pode ser realizada com a ajuda de um grande número de ferramentas - tanto comerciais quanto open source. Entre elas: OWASP Dependency-Check, OWASP Dependency-Track, Snyk, Trivy, Code Scoring, GitHub Dependabot / Security Advisories. Qual ferramenta escolher depende do nível da empresa, da maturidade dos processos de desenvolvimento seguro, dos requisitos de licenciamento, do orçamento alocado e dos objetivos da equipe. Mas para começar a aplicar essa prática, ferramentas open source são suficientes.

Como conclusão, resumirei que a OSA dá ao desenvolvedor:

  • Transparência da composição dos componentes que são usados no aplicativo;
  • Compreensão do potencial vetor de ataque ao aplicativo em desenvolvimento;
  • A capacidade de reagir rapidamente a novas vulnerabilidades;
  • A capacidade de gerenciar riscos de licença;
  • Alto nível de segurança do produto em desenvolvimento.

Das listadas, as vantagens competitivas decorrem: você reduz a probabilidade de ataques e tempo de inatividade do equipamento, o que os incidentes poderiam levar. Portanto, a Análise de Código Aberto é uma prática de engenharia necessária. Essa análise ajuda a responder honestamente à pergunta: "Quão bem você realmente controla o que compõe seu produto?"

É claro que a implementação da OSA requer tempo e recursos - por exemplo, você definitivamente precisará de sessões regulares de conscientização com as equipes de desenvolvimento. Mas os esforços não serão em vão: da próxima vez, em vez de usar uma biblioteca open source com uma licença inadequada, os desenvolvedores escolherão imediatamente uma substituição ou pensarão na possibilidade de escrever um componente por conta própria. E, portanto, não haverá necessidade de resolver as consequências desagradáveis.

🛡️⚡

Pare de pesquisar. Comece a hackear.

O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.

Testar grátis por 7 dias →

Sem cartão para começar · Planos a partir de R$49/mês

📤 Compartilhar & Baixar

🧰 Ferramentas recomendadas

Divulgação: alguns links são patrocinados. Podemos receber comissão se você comprar — sem custo extra para você. Só indicamos o que faz sentido para a comunidade.

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Com centenas de ferramentas pré-instaladas, a distribuição Kali Linux facilita o trabalho de os profissionais de segurança começarem a fazer testes de segurança rapidamente. No entanto, com mais de 600 ferramentas em seu arsenal, o Kali Linux também pode ser desafiador. A nova edição deste prático livro abrange as atualizações nas ferramentas e inclui uma melhor abordagem da análise forense e da engenharia reversa. Ric Messier, autor, não fica apenas no teste de segurança, mas também faz uma abordagem sobre a execução de análise forense, incluindo a análise em disco e na memória, assim como alguma análise básica de malware. • Explore as diversas ferramentas disponíveis no Kali Linux • Entenda o valor do teste de segurança e examine os tipos de teste disponíveis • Aprenda os aspectos básicos do pentest em todo o ciclo de vida do ataque • Instale o Kali Linux em vários sistemas, tanto físicos quanto virtuais • Descubra como usar diferentes ferramentas destinadas à segurança • Estruture um teste de segurança baseado nas ferramentas do Kali Linux • Estenda as ferramentas do Kali para criar técnicas de ataque avançadas • Use o Kali Linux para ajudar a criar relatórios quando o teste terminar “A abordagem concisa, clara e baseada na experiência adotada por Ric Messier para a introdução do Kali Linux e dos testes de cibersegurança é incomparável. Este livro é uma leitura excelente e acessível para iniciantes e um recurso valioso para qualquer pessoa.” —Alexander Arlt, Consultor sênior de segurança, Google

Ver na Amazon
Gshield 2 em 1 Hub Extensor Conector USB-C + USB-A e Adaptador de Rede Ethernet LAN RJ45 com 3 Entradas USB 3.0 até 5 Gbps em Liga de Alumínio para Computador e Notebook, Cinza

Gshield 2 em 1 Hub Extensor Conector USB-C + USB-A e Adaptador de Rede Ethernet LAN RJ45 com 3 Entradas USB 3.0 até 5 Gbps em Liga de Alumínio para Computador e Notebook, Cinza

Compatível com portas USB-C e USB-A, ideal para ampliar a conectividade de dispositivos como MacBook Pro e outros com portas USB-C. Inclui um adaptador USB-A extra, proporcionando uma conexão Ethernet estável e veloz de até 1 Gbps, perfeita para filmes, jogos online e videoconferências. Oferece três portas USB 3.0 com velocidades de transferência de até 5 Gbps, permitindo conectar mouse, teclado, discos rígidos e outros periféricos. Fabricado em alumínio durável, garantindo longa vida útil e resistência ao uso diário. Design compacto e leve, ideal para viagens de negócios e uso diário, facilitando o transporte e armazenamento. Funciona com Windows 10/8.1/8, Mac OS e Chrome OS, oferecendo versatilidade incomparável para diversas necessidades de conectividade. Assegura uma conectividade estável e rápida, perfeita para tarefas exigentes como transferência de dados, streaming e mais.

Ver na Amazon
Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs is a crash course on web API security testing that will prepare you to penetration-test APIs, reap high rewards on bug bounty programs, and make your own APIs more secure. You'll learn how REST and GraphQL APIs work in the wild and set up a streamlined API testing lab with Burp Suite and Postman. Then you'll master tools useful for reconnaissance, endpoint analysis, and fuzzing, such as Kiterunner and OWASP Amass. Next, you'll learn to perform common attacks, like those targeting an API's authentication mechanisms and the injection vulnerabilities commonly found in web applications. You'll also learn techniques for bypassing protections against these attacks. In the book's nine guided labs, which target intentionally vulnerable APIs, you'll practice: Enumerating APIs users and endpoints using fuzzing techniques Using Postman to discover an excessive data exposure vulnerability Performing a JSON Web Token attack against an API authentication process Combining multiple API attack techniques to perform a NoSQL injection Attacking a GraphQL API to uncover a broken object level authorization vulnerability

Ver oferta
Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Up-to-date strategies for thwarting the latest, most insidious network attacks This fully updated, industry-standard security resource shows, step by step, how to fortify computer networks by learning and applying effective ethical hacking techniques. Based on curricula developed by the authors at major security conferences and colleges, the book features actionable planning and analysis methods as well as practical steps for identifying and combating both targeted and opportunistic attacks. Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition clearly explains the enemy's devious weapons, skills, and tactics and offers field-tested remedies, case studies, and testing labs. You will get complete coverage of Internet of Things, mobile, and Cloud security along with penetration testing, malware analysis, and reverse engineering techniques. State-of-the-art malware, ransomware, and system exploits are thoroughly explained. Fully revised content includes 7 new chapters covering the latest threats Includes proof-of-concept code stored on the GitHub repository Authors train attendees at major security conferences, including RSA, Black Hat, Defcon, and B-Sides

Ver na Amazon
Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Proteção de privacidade aprimorada: protege o link de transmissão de dados para evitar roubo de informações, fornecendo proteção de segurança robusta que protege a privacidade do usuário durante transferências de arquivos e garante uma conexão segura para interações de dispositivos sem preocupações em vários ambientes Uso a longo prazo: a camada protetora resistente ao desgaste, combinada com um corpo de metal resistente, oferece gerenciamento de calor confiável e qualidade duradoura durante o uso diário Entrega eficiente de energia: a tecnologia de chip inteligente garante a identificação automática dos requisitos de energia, fornecendo carregamento eficiente alinhando-se com vários protocolos de carregamento rápido para maior conveniência Proteção contra sobrecarga: evitando riscos de sobrecarga, este bloqueador de dados USB protege a vida útil da bateria e garante um desempenho estável, mantendo um fluxo estável de energia para melhorar a longevidade do dispositivo de forma eficaz Prático de transportar: com atenção à portabilidade, este bloqueador de dados USB oferece um design compacto que é leve e fácil de transportar, melhorando a conveniência do usuário e operação eficiente

Ver na Amazon

📩 Newsletter MundiX

Receba novidades de cibersegurança + um checklist de pentest grátis. Sem spam.

Ao assinar você concorda em receber e-mails. Cancele quando quiser.