Em um movimento que deve introduzir um novo nível de segurança para a linguagem de programação favorita do mundo, o Python Package Index (PyPI), o repositório oficial de projetos Python de código aberto de terceiros, anunciou que está definido para introduzir autenticação de dois fatores para o que a plataforma considera projetos ‘críticos’.
Anunciado no início de julho, a consideração orientada à segurança foi amplamente bem recebida pelos membros da comunidade do Python, embora um desenvolvedor conhecido tenha optado por excluir seu código do PyPI antes de republicá-lo como um novo projeto livre de seu status ‘crítico’ designado.
Como os dados acima mostram, o Python superou muitas linguagens de programação líderes para se tornar a linguagem favorita do mundo nos últimos anos, e a mudança para proteger seus projetos mais valiosos com uma camada extra de segurança ajudou a implementar um elemento adicional de confiança.
Após a implementação da nova medida de segurança, qualquer projeto PyPI responsável pelo 1% superior dos downloads nos últimos seis meses, bem como qualquer uma das dependências do PyPI, foi rotulado como ‘crítico’ e, portanto, exige autenticação de dois fatores.
“Para melhorar a segurança geral do ecossistema Python, o PyPI começou a implementar um requisito de autenticação de dois fatores (2FA) para projetos críticos. Esse requisito entrará em vigor nos próximos meses”, observaram os administradores do PyPI no site do projeto.
Esse salto para o 2FA ocorre após uma série de incidentes de segurança que fizeram com que bibliotecas de software legítimas fossem invadidas no ecossistema PyPI e na extensa biblioteca npm.
Ao longo de 2021, as bibliotecas npm que viram níveis significativos de tráfego, como ‘ua-parser-js’, ‘coa’ e ‘rc’ foram fundamentalmente alteradas por malware depois que suas contas de mantenedor foram comprometidas. Isso fez com que o GitHub, empresa controladora do npm, tomasse a medida de implantar a segurança 2FA para desenvolvedores no final do ano passado – com outros procedimentos adicionados em maio de 2022.
As coisas vieram à tona nas últimas semanas após a notícia de que o projeto PyPI, ‘ctx’ foi sequestrado por hackers, conforme relatado pelo BleepingComputer. Posteriormente, foi revelado que ‘ctx’ foi vítima de um experimento de hacking ‘ético’ que deu errado – mas a plataforma levou o incidente a sério o suficiente para lançar uma atualização abrangente de como seus projetos operam.
Chaves de segurança de hardware gratuitas para projetos críticos
Para ajudar a facilitar a transição para o 2FA, o Python Package Index está distribuindo 4.000 chaves de segurança do Google Titan como parte de sua tentativa de transportar todos os projetos críticos criados usando a linguagem de programação Python.
Embora a linguagem de código aberto seja muito popular e amplamente segura devido ao grande número de programadores que trabalham para melhorar continuamente a linguagem, os hackers se apegaram ao grande número de atualizações que o programa sofre como meio de backdooring em seus sistemas Windows, Linux, e máquinas da Apple por meio de pacotes falsos que são nomes semelhantes aos lançamentos oficiais em um movimento popularmente conhecido como ataques à cadeia de suprimentos de software.
Com a ajuda da Open Source Security Foundation (OpenSSF) da Linux Foundation, o Google pretende enfrentar a ameaça de pacotes de linguagem maliciosos e ataques à cadeia de suprimentos de software de código aberto. No espaço de apenas um mês, os gigantes dos mecanismos de busca identificaram mais de 200 pacotes maliciosos de JavaScript e Python e destacaram as ‘consequências devastadoras’ para desenvolvedores e organizações para as quais escrevem códigos ao instalá-los.
A estrutura de código aberto do Python continua sendo a melhor para as empresas
Apesar do anúncio recente de que a autenticação 2FA deve ser introduzida nos principais projetos do Python, a linguagem de programação continua sendo uma das melhores opções para empresas que buscam construir sua presença online hoje.
A razão fundamental para isso é a estrutura de código aberto do Python e o fato de que muitos outros olhos podem observar, identificar e corrigir problemas emergentes rapidamente.
Embora alguns observadores argumentem que programas de código aberto podem significar que o código está aberto para hackers, isso geralmente funciona mais a favor dos volumes muito maiores de solucionadores de problemas que trabalham dia e noite para detectar e remediar vulnerabilidades. No caso do Python, hackers, contribuidores e usuários de chapéu branco podem trabalhar em conjunto, encontrando problemas e agindo sobre eles instantaneamente.
Também pode ser um benefício significativo para empresas que desejam contratar serviços de desenvolvimento Python, nos quais os desenvolvedores têm o benefício de trabalhar de perto e diretamente com a linguagem de programação de uma maneira que linguagens comerciais mais fechadas não podem oferecer.
Essa última iteração de segurança para Python ajudou instantaneamente a proteger os projetos mais usados que operam no ecossistema. Embora os 99% restantes dos projetos não precisem fazer a mudança para 2FA, seus usuários podem ter certeza de que as atualizações continuam sendo lançadas rapidamente.
À medida que o impulso global para a transformação digital continua a acelerar, o Python provou ser um líder de mercado em termos de desenvolvimento web – devido à sua extensa rede de bibliotecas de código aberto.
O esforço para acomodar o 2FA entre seus maiores projetos representa uma consideração importante para os projetos mais movimentados da plataforma – e um passo considerável na direção certa para uma linguagem de programação que ainda tem muito espaço para crescimento.