Fraudes e ataques digitais acontecem – e muito. Para se ter uma ideia da gravidade da situação, a pesquisa Barômetro da Segurança Digital 2021, realizada pelo Instituto Datafolha, revelou que 57% das empresas entrevistadas citaram ser alvo de fraudes e ataques digitais com alta ou média frequência. Mesmo assim, apenas 32% delas têm um departamento próprio para cuidar da cibersegurança.
Esse mesmo levantamento revelou que, para quase metade de todas as empresas ouvidas, investir em segurança significa melhorar também a credibilidade junto a clientes e parceiros. Tal investimento – que ganha notoriedade a cada dia — mostrou-se ainda mais necessário após entrar em vigor a Lei Geral de Proteção de Dados (LGPD), com suas disposições relativas tanto à privacidade quanto à segurança da informação, e eventuais multas para quem infringi-las.
Em linha com a urgência desse tema, está o desenvolvimento seguro. Trata-se de um conjunto de práticas e processos que têm como finalidade proporcionar maior segurança desde o design e arquitetura de um software, até sua entrada em produção e sustentação como produto no mercado.
Mas como colocar esse tal de desenvolvimento seguro em prática? Para Matteo Nava, CEO da Berghem, consultoria especializada em Segurança Cibernética e da Informação, com notória expertise em Meios de Pagamento, segurança cibernética é um elemento que deve fazer parte de qualquer projeto, já que os problemas nesse aspecto têm aumentado com a alta velocidade nas transformações dos ambientes de negócios de desenvolvimento de software.
“Uma vez que um problema de segurança acontece em um software todos saem prejudicados. O cliente, obviamente, mas também a empresa, que tende a perder ainda mais para reparar essa falha, além de possíveis multas, danos à imagem da empresa e perda de clientes”, afirma.
Para aplicar as práticas de desenvolvimento seguro de software, Nava enumera algumas dicas:
1ª – Invista no Security Champions
Uma forma de começar, é investir na figura do Security Champions, aquele profissional da equipe de desenvolvimento do software que possui interesse em segurança. “Essa pessoa é uma espécie de referência no assunto dentro do time de criação de um novo produto. Ele pode receber mais treinamentos em segurança, participa desse time, mas mantém suas funções como desenvolvedor”, explica Nava.
O profissional é importante para mudar a cultura dentro da empresa. Com um profissional híbrido, a mudança acontece mais naturalmente, e há a possibilidade de os dois times alinharem suas respectivas metas sem que um prejudique o outro.
2ª – Faça uma modelagem de ameaças
Trata-se de uma atividade que tem, como princípio, identificar antecipadamente as implicações de segurança geradas pelas decisões dos times de negócios e desenvolvimento. “Digamos que alguém dê a sugestão de passar a aceitar pagamentos por meio de um aplicativo já desenvolvido. Isso gera uma série de riscos, e, consequentemente, novos requisitos necessários para manter o software seguro, mapeados a partir de uma modelagem de ameaças”, exemplifica o CEO da Berghem.
Em conjunto, as equipes de desenvolvimento e de segurança, por vezes com a participação de uma consultoria especializada, podem compreender quais estratégias um cibercriminoso usaria para invadir o sistema, realizar transações fraudulentas ou acessar informações confidenciais do software. Dessa forma, são capazes de entender as ameaças, definir os controles de segurança necessários ou optar por alternativas de desenvolvimento que ensejem menor risco.
3ª – Tenha uma gestão de vulnerabilidades
Da mesma forma, o gestor também pode identificar as vulnerabilidades sistêmicas passíveis de exploração por algum hacker. Elas precisam ser identificadas, classificadas, remediadas e documentadas como lição aprendida.
Para saber quais são essas brechas sistêmicas, os profissionais da área devem dispor de um processo para receber as informações sobre as vulnerabilidades encontradas. Um exemplo disso é o teste de penetração — também conhecido pela sigla EHT (Ethical Hacking Test) ou simplesmente como Pentest (Penetration Test). É uma avaliação de segurança capaz de, quando executada rigorosamente, fornecer análise técnica detalhada sobre tais problemas, comum tanto em softwares proprietários quanto de terceiros.
“A partir do momento em que uma vulnerabilidade é conhecida, ela precisa ser classificada (conforme o risco) e priorizada em uma fila de correções”, recomenda Nava. Isso permite que se controle o tratamento destinado a cada apontamento documentado nesse diagnóstico. Além de ser uma boa prática de segurança cibernética, também é um requisito para adequação à LGPD e ao GDPR, a lei de proteção de dados europeia, que inspirou a legislação brasileira.
4ª – Integre as equipes
Os times que trabalham com a criação do software e com a sua segurança, seja ela dentro de casa e/ou com o apoio de parceiros, devem agir em conjunto. Isso significa que, ao mesmo tempo que os desenvolvedores recebem as orientações do time de segurança, este, por sua vez, deve estar alinhado com os objetivos do negócio e suas relativas necessidades.
“Quando as equipes se preocupam antecipadamente com esse tema, os problemas são evitados, ao invés de corrigidos. Além de o software ficar mais seguro, há economia de tempo e dinheiro, ao reduzir os retrabalhos para correção das falhas de segurança “, explica o especialista.
5ª – Treinamentos e arquitetura de referência
Os gestores das empresas de desenvolvimento de sistemas não podem esquecer que treinamentos em segurança cibernética são fundamentais para os desenvolvedores. Dessa forma, de acordo com o CEO da Berghem, os produtos criados ficam menos vulneráveis a ataques.
Além disso é muito importante a utilização de arquiteturas de referência, ou seja, uma espécie de modelo ou template de arquitetura de software que contemple as melhores práticas de desenvolvimento e segurança. “Ao invés de criar um produto do zero, já se parte de uma estrutura-base com os principais aspectos de um sistema. Assim, é possível garantir menos vulnerabilidades”, ilustra Nava.