Repensar a Assinatura Digital

Repensar a Assinatura Digital

Na corrida por vantagens competitivas, as empresas estão cada vez mais a virar-se para soluções de software especializadas. Como tal, os ambientes TI tornaram-se uma manta de retalhos de sistemas de diferentes marcas, colocando por vezes em causa a segurança da informação. Mais soluções aumentam o número de relações de confiança e oferece aos intrusos mais potenciais pontos de entrada para atacar

Os ataques que usam software de terceiros para se infiltrarem numa organização têm crescido exponencialmente. Em 2020, código malicioso integrado numa atualização de software da SolarWinds espalhou-se primeiro pelos departamentos do governo federal dos EUA antes se tornar global e infetar cerca de 18 mil organizações. Em Março deste ano, mais de 20 mil organizações norte-americanas ficaram comprometidas através de uma vulnerabilidade no Exchange Server da Microsoft. Por vezes, parceiros da cadeia de fornecimento relativamente inócuos acabam por ser responsáveis pelos maiores riscos. Uma das maiores quebras de dados alguma vez registada, o ataque de 2013 ao retalhista norte-americano Target, foi concretizado através da entrada de um hacker no software de ar condicionado de uma empresa parceira.

Apesar de ser impossível ignorar os riscos de ataques ao software da cadeia de fornecimento, também é impossível deixar de parte as promessas de destreza tecnológica. Este é o dilema que se coloca a muitas organizações. No dia-a-dia, esta percepção pode forçar os programadores de software a optar por cumprir os mais elevados padrões de segurança ou, ao invés, libertarem-se de inconvenientes e fricções para se focarem na criatividade. Uma forma de combinar estas duas tendências aparentemente opostas é repensar a assinatura do software, o processo de fornecer uma prova inegável de que o software não foi alterado ou corrompido antes da implementação. 

As técnicas de assinatura de código tradicionais usam chaves criptográficas para verificar a autoria e a integridade do conteúdo de um repositório de software, por exemplo. Isto coloca o ónus de gerar chaves e mantê-las seguras sobre o programador. Alguns podem considerar este ónus excessivo, e deixam de assinar o código que escrevem (mau para a segurança) ou escrevem menos código (mau para a inovação). Ambas as opções têm um efeito de dominó noutros programadores. Num mundo em que grande parte do software actual está assente no princípio do código aberto, em que qualquer pessoa pode pegar num código e adaptá-lo, a questão da proveniência torna-se fulcral. E isto aplica-se em igual medida ao software proprietário, que cada vez mais aproveita código open source. 

Dito isto, é a comunidade open source que está a assumir a liderança na concepção de um ambiente de assinatura de software mais amigo dos programadores. O projeto, que dá pelo nome de sigstore, substitui as velhas chaves por chaves efémeras vinculadas a identificadores existentes (tal como os endereços de e-mail e os inícios de sessão nas redes sociais). Isto também produz um registo público e imutável de toda a actividade, libertando os programadores da assinatura do software e permitindo-lhes concentrarem-se naquilo que fazem melhor. Além disso, um sistema que não depende de chaves que podem ser roubadas ou que se podem perder é, por definição, mais seguro.

O progresso tem sido célere. Desde que o sigstore foi lançado em 2019, os seus membros fundadores acolheram outras organizações, e o projecto mudou para a égide da The Linux Foundation. O âmbito também se expandiu, com os subprojectos a ganharem agora vida própria, como o Cosign (para assinatura de software geral e containers), o Rekor (um registo de transparência) e o Fulcio (uma autoridade de certificados). 

Estes não são apenas importantes indicadores de sucesso. Também apontam para o modo como o sigstore pode ser implementado: enquanto funcionalidade integrada numa tecnologia mais alargada. Quaisquer tentativas de assimilar as capacidades do sigstore num kit de ferramentas de programação existente só irá fazer avançar um dos principais objectivos do projecto: simplificar e automatizar a assinatura digital até ao ponto que ela se torne uma infra-estrutura invisível e os programadores deixem de reparar nela, ou deixem de se preocupar com ela.

Axel Simon

Segurança Open Source na Red Hat

Tags

RECOMENDADO PELOS LEITORES

REVISTA DIGITAL

IT INSIGHT Nº 38 Julho 2022

IT INSIGHT Nº 38 Julho 2022

NEWSLETTER

Receba todas as novidades na sua caixa de correio!

O nosso website usa cookies para garantir uma melhor experiência de utilização.