“Geralmente é mais barato construir software seguro do que corrigir problemas de segurança após a entrega do mesmo como um produto final ou pacote completo, sem falar nos custos que podem estar associados a uma falha de segurança”. Esta é uma das frases que faz parte do guia sobre as melhores práticas de programação segura feito pela OWASP, uma comunidade dedicada à partilha de conhecimento tecnológico.
Por programação segura devemos entender todos os atos de desenvolvimento de software que têm em conta as melhores práticas de segurança. Ou seja, criação de programas secure by default. Já sabemos que no mundo da tecnologia é imprudente falar em projetos 100% seguros, mas se pelo menos forem criados seguindo boas práticas de segurança, alguns problemas poderão à partida ser prevenidos.
Foi justamente nesta perspetiva que a Checkmarx, uma empresa especializada em segurança informática, decidiu criar um manual de boas práticas de desenvolvimento, seguindo o modelo da OWASP, para a linguagem de programação Go. Esta é a linguagem desenvolvida pela Google e é atualmente um dos principais sistemas usados pelos programadores.
De acordo com dados apurados em 2017 pela plataforma Stack Overflow, a linguagem Go ainda está longe de ser das mais usadas – aparece apenas em 19º lugar -, mas já é a 5ª linguagem de programação mais adorada pelos developers e é atualmente a terceira com maiores níveis de interesse. De destacar que neste estudo participaram 64 mil programadores.
Não é por isso de estranhar que o projeto da Checkmarx, publicado em modelo open source na plataforma GitHub, tornou-se rapidamente num dos mais populares dos últimos 30 dias. Já esteve na segunda posição, mas à hora de publicação deste artigo ocupava o terceiro lugar.
“Nós escolhemos esta linguagem por ser ‘nova’ [lançada em 2009] e popular. Desde que foi introduzida tem vindo a crescer em popularidade. (…) Alguns tipos de vulnerabilidade também não eram bem documentados e havia pouca informação na web sobre o assunto, por isso a Checkmarx criou este projecto – que será mantido e atualizado regularmente”.
Foi assim que o investigador de segurança informática David Sopas explicou a escolha da linguagem para este projeto. David foi a pessoa responsável por coordenar o guia de programação segura, que contou com a participação de quatro outros investigadores portugueses da Checkmarx.
Apesar de saber que a comunidade open source é gigante, David Sopas mostrou-se surpreendido pela receção que o projeto acabou por ter no GitHub. Já há, por exemplo, quem esteja a traduzir o guia para mandarim – e o próprio investigador acredita que será uma questão de tempo até que surja uma versão em português.
Além dos motivos já apontados, o especialista defende que atualmente vive-se uma fase de maior consciencialização para a importância de criar produtos seguros em todas as etapas de desenvolvimento, o que também ajudou na receção do projeto.
“Nos últimos anos tem havido um aumento na preocupação com a segurança, não apenas com o facto do código funcionar ou não. Infelizmente, no contexto académico ainda não é dada muita atenção a este tipo de considerações, mas há um crescente interesse em utilizar práticas seguras ao programar”, disse em resposta enviada por email ao FUTURE BEHIND.
O projeto já recebeu algumas contribuições da comunidade de programadores, mas David Sopas não está seguro se algum destes elementos faz ou não parte da equipa da Google responsável pelo projeto.
Mesmo tendo levado dois meses a ser desenvolvido, o Go Secure Coding Practises não será seguramente o único projeto do género que a Checkmarx pretende concretizar.
“Posso avançar que será num futuro próximo [outros guias de segurança]. Achamos muito importante a existência de guias como este para poder auxiliar programadores de todo o tipo de linguagens a desenvolver código mais seguro”, concluiu David Sopas.