O intrincado labirinto de dependências de código aberto em toda a cadeia global de fornecimento de software criou um quebra-cabeça de segurança de aplicativos de proporções gigantescas. Seja de código aberto ou fechado, a maior parte do software do mundo hoje é construída em componentes e bibliotecas de terceiros. Consequentemente, um pedaço de código vulnerável até mesmo no menor dos projetos de código aberto pode ter um efeito dominó que afeta milhares de outros aplicativos, APIs, componentes de infraestrutura de nuvem e muito mais.
Esse problema está se tornando uma das preocupações de segurança mais prementes dos CISOs atualmente e, em nível empresarial individual, as organizações estão trabalhando arduamente para lidar com isso com projetos como criar listas de materiais de software (SBOMs), estabelecer padrões de gerenciamento de segurança de código aberto e criando proteções técnicas para que os desenvolvedores as sigam.
Mas esses esforços não resolvem necessariamente o problema em um nível mais sistêmico. De acordo com muitos especialistas na comunidade de código aberto, a fim de causar o maior impacto na cadeia de suprimentos downstream, é necessário mais esforço para ajudar os mantenedores de projetos de código aberto a limpar seu código .
Esse é o objetivo do Projeto Alfa-Ômega . Prestes a completar seu aniversário de um ano no próximo mês, o Alpha-Omega é um projeto de segurança de grande porte reunido pela Open Source Security Foundation (OpenSSF) e sua organização controladora, a Linux Foundation, para abordar as questões fundamentais na cadeia de suprimentos de software. segurança.
O lado “Alpha” do projeto está focado em colaborar com os mantenedores dos projetos de código aberto mais críticos para a cadeia de suprimentos mais ampla – incluindo notáveis como node e jQquery – para ajudá-los a melhorar a postura de segurança de seu código. Esses são projetos selecionados a dedo pelo grupo de trabalho OpenSSF Securing Critical Projects, usando opinião de especialistas e dados de benchmarks como o Open SSF Criticality Score para determinar os projetos com o maior impacto downstream.
O lado “Omega” do projeto se volta para a cauda longa da segurança da cadeia de suprimentos de software, usando automação e ferramentas para identificar vulnerabilidades de segurança críticas em uma variedade de 10.000 projetos de código aberto amplamente implantados. É um esforço para escalar a correção das falhas mais óbvias e de baixo custo que são difundidas em toda a cadeia de suprimentos.
Financiado inicialmente pelo Google e pela Microsoft, com cadeia de ferramentas adicional e suporte de pessoal do gigante financeiro Citi, o Alpha-Omega encerrou 2022 obtendo US$ 2,5 milhões adicionais da Amazon Web Services. Mais importante ainda, o projeto está se preparando para 2023 com duas novas contratações críticas – Yesenia Yser, ex-engenheira de segurança de produto da Red Hat, e Jonathan Leitschuh, que acabou de terminar seu período de um ano como o primeiro Dan Kaminsky Fellow for Human Security. Yser entra como engenheiro sênior de segurança de software, e Leitschuh continuará sua pesquisa sobre automatização da pesquisa e correção de segurança de código aberto como pesquisador sênior de segurança de software.
Primeiro ano do projeto Alpha-Omega
Este projeto é um dos vários projetos de segurança de alto perfil liderados e arrecadados por OpenSSF e Linux Foundation no ano passado para resolver os problemas sistêmicos na segurança de código aberto. Seguindo o modelo de sucesso das organizações para financiamento rápido e ação em projetos de segurança, a Alpha-Omega já avançou em várias frentes significativas.
De acordo com o primeiro relatório anual do projeto, o projeto já se envolveu com cinco diferentes projetos de código aberto: Node.js, Eclipse Foundation, Rust Foundation, jQuery e Python Software Foundation. Ao longo de 2022, a Alpha-Omega distribuiu US$ 1,5 milhão em doações para diferentes projetos, incluindo US$ 460.000 para a Rust Foundation, US$ 400.000 para a Eclipse Foundation e US$ 300.000 para a Node. No caso do Node, esse suporte ajudou a reativar o Node Security Working Group e fazê-lo trabalhar em um modelo de segurança e ameaças para o Node.js. Também estimulou a triagem de 20 relatórios de vulnerabilidade diferentes na base de código do projeto.
Além disso, a Alpha-Omega lançou recentemente a versão inicial do Omega Analysis Toolchain, que orquestra 27 analisadores de segurança diferentes para identificar vulnerabilidades críticas em pacotes de código aberto. O projeto também lançou uma série de ferramentas experimentais, incluindo um portal de triagem para tornar a pesquisa de segurança e relatórios mais eficientes.
Para o segundo ano, o projeto planeja acelerar o trabalho no lado Omega da casa.
O que 2023 reserva para o projeto
A adição de Yser e Leitschuh ao Projeto Alpha-Omega não apenas infundirá mais inteligência, tempo e talento nos esforços existentes, mas também muito entusiasmo para mover a agulha na segurança de código aberto.
“O software de código aberto está em todos os equipamentos usados hoje, desde nossos automóveis, aviões, telefones, rastreadores e até mesmo sistemas utilitários”, diz Yser, que tem raízes profundas nos mundos do DevSecOps e da cadeia de suprimentos de software. Em seu cargo na Red Hat, ela era a líder técnica de operações da cadeia de suprimentos.
“A visão do projeto tem um impacto global de melhorar a postura de segurança do software de código aberto, a segurança da cadeia de suprimentos e a vida das pessoas em todo o mundo”, diz ela.
A Yser trabalhará diretamente para melhorar a cadeia de ferramentas Omega e o portal de triagem para ajudar a projetar melhorias na forma como os projetos e impactos de vulnerabilidade são analisados e priorizados para mitigação.
“Para a cadeia de ferramentas Omega, uma meta para este ano será ter um sistema operacionalizado que um mantenedor ou desenvolvedor possa alavancar”, diz ela. “Para o Triage Portal, o objetivo será apoiar a capacidade de um pesquisador de triar um achado descoberto por meio da importação de um relatório SARIF para o portal e lidar com sua investigação dentro do sistema. O sistema permanecerá limitado à equipe Alpha-Omega até indicação em contrário , mas graças ao software de código aberto, um pesquisador pode executar sua própria instância e enviar solicitações de pull ao repositório e apoiar a missão geral.”
Yser trabalhará em estreita colaboração com Leitschuh, que traz uma experiência significativa e muito nova na área de dimensionamento e automatização de correções em projetos de código aberto. Ele passou a bolsa do ano passado trabalhando exatamente nesse problema. Seu objetivo é continuar o trabalho que fez lá e usar o que aprendeu para promover sua missão de erradicar as falhas mais prevalentes e impactantes que se escondem em uma ampla gama de projetos de código aberto.
“Podemos não saber onde estão os pequenos pinos que estão impedindo a existência de toda a indústria de software” , diz Leitschuh . “Pode ser um daqueles pequenos pedaços de software que tem 15 estrelas no GitHub que ninguém conhece, mas está segurando toda a Internet. Então, como podemos proteger esses projetos que ninguém conhece, mas [são] de alguma forma fundamentais para o toda a cadeia de suprimentos?”
Ele diz que seu trabalho durante a bolsa o ajudou a aprofundar seu nicho de não necessariamente se aprofundar em nenhuma vulnerabilidade de segurança, mas, em vez disso, observar um certo tipo de vulnerabilidade e desenvolver maneiras automatizadas de encontrar a mesma falha em muitos lugares diferentes em todo o ecossistema de código aberto. Isso se encaixa perfeitamente com o ethos Omega, que é o que o levou a seu mais novo show.
A Leitschuh continuará a oferecer suporte a refinamentos em métodos automatizadospara eliminar falhas na análise de fluxo de dados e controle e na geração automática de solicitações pull. Mas ele também continuará o trabalho manual de colaboração. Uma das lições importantes que ele aprendeu no ano passado é que muito do trabalho que tem pela frente e sua equipe Alpha-Omega não é necessariamente técnico. Trata-se de construir relacionamentos com os mantenedores para ajudá-los a ver como, às vezes, até mesmo correções simples em seus projetos podem ter um grande impacto nas posturas de segurança da cadeia de suprimentos de software global.
“Tecnólogos e pessoas de software, nem sempre amamos o elemento humano – é mais fácil para nós sentar e escrever uma linha de código que detecta essa coisa e jogá-la por cima de uma parede do que nos envolvermos com uma pessoa real. e tentar convencê-los de que vale a pena consertar isso”, diz ele.
Ele explica como uma instância no ano passado ilustra perfeitamente esse ponto. Nesse caso, ele trabalhou com um mantenedor de um analisador YAML que tinha uma falha de execução remota de código de 6 anos que teve muito impacto no downstream. Por muito tempo, quando Leitschuh o abordou sobre isso, o mantenedor disse a ele: “Não confie em YAML não confiável. Esta não é minha vulnerabilidade.”
Finalmente, depois de sentar o mantenedor em uma videochamada com muito debate técnico, Leitschuh conseguiu mostrar a ele que a mudança que ele solicitou era extremamente restrita e poderia ter um impacto enorme.
“Portanto, agora ele está disposto a corrigir essa vulnerabilidade de execução remota de código de 6 anos neste analisador YAML porque alguém como eu sentou-se com ele em uma videochamada, finalmente, e conversou com ele para convencê-lo da coisa mínima que ele precisava fazer para torná-lo mais seguro”, diz ele.
Embora Leitschuh pudesse ter corrigido automaticamente a vulnerabilidade a jusante, a correção mais elegante foi ter essa discussão.
“Achei que valia a pena sentar e passar o tempo focando neste único software para tentar convencer o mantenedor. Ter essas conversas é o que terá um impacto positivo mais amplo em todo o setor.” ele diz. “Nesse ponto, você só precisa de botas no chão. Você precisa de pessoas que saibam do que estão falando para se sentar e passar o tempo necessário para se envolver com uma pessoa real.”
FONTE: DARK READING