Criar aplicações mais seguras: 5 dicas para programadores

As aplicações que todos utilizamos, sejam móveis, web ou empresariais, são um ponto de acesso para os cibercriminosos acederem aos dados sensíveis dos utilizadores.

Sem ir mais longe, a Comunidade de Madrid lançou recentemente uma aplicação web para solicitar a marcação para a vacinação COVID-19 e ocorreu uma falha de segurança que revelou dados de saúde e pessoais dos cidadãos da região.

Para evitar tais ameaças, o utilizador deve tomar precauções ao utilizar estas aplicações, enquanto para os programadores a segurança dos dados sensíveis deve ser uma preocupação constante. Segundo um estudo do Gartner, mais de 75% das aplicações móveis reprovariam nos testes de segurança base, ficando muito aquém dos compromissos mínimos de segurança.

Antes de criar uma aplicação e equipá-la com as ferramentas para assegurar a proteção dos dados dos utilizadores, o ponto de partida é conhecer antecipadamente as possíveis vulnerabilidades, a fim de reforçar a segurança.

 

Nexllence propõe 5 dicas que os programadores devem ter em conta no desenvolvimento de aplicações:

 

1. Ter em conta os princípios gerais de segurança

Quando a segurança das aplicações depende de uma base de dados para funcionar, o utilizador final deve ter acesso limitado às mesmas, não deve poder criar ou apagar dados. Por este motivo, é essencial manter um histórico de dados e acessos de modo que, em caso de problema ou interrupção de dados, seja possível identificar rapidamente a origem do problema.

Além disso, deve-se ter sempre cuidado ao utilizar componentes externos da nossa ferramenta. Se forem identificadas vulnerabilidades, é melhor não as utilizar ou tomar precauções nestas situações de modo a não comprometer a aplicação.

Finalmente, existem falhas básicas ao desenvolver uma aplicação que devem ser tidas em conta, tais como permitir que os certificados digitais expirem, ter portas desnecessariamente abertas no servidor web, utilizar protocolos obsoletos de nível de segurança, não proteger ficheiros dentro do servidor ou utilizar bibliotecas de software antigas.

 

2. Incorporação da segurança em código

Um dos maiores riscos de segurança que qualquer solução de software pode sofrer são os bugs no código, seja HTML, Javascript ou SQL. Qualquer lacuna na codificação ou desenho pode dar aos atacantes acesso a informação sensível do utilizador, pelo que os programadores devem validar os dados para que apenas os dados formatados corretamente entrem na estrutura da aplicação web. Este filtro impede o tratamento de dados incorretos ou corrompidos que possam levar a um mau funcionamento da aplicação. Além disso, recomenda-se a realização regular de testes simulando ataques para ver como a aplicação reagiria e para verificar a sua penetrabilidade.

 

3. O utilizador é uma porta de entrada para ciberataques

Ao aceder a uma aplicação, é importante verificar quem está a tentar entrar, mas hoje em dia as credenciais básicas do nome de utilizador e senha já não são suficientes e há uma necessidade crescente de autenticação multifator, que vai além da autenticação de dois fatores.

O principal objetivo ao conceber uma aplicação web é dar aos utilizadores o mínimo de permissões possível e gerar uma hierarquia adaptada a cada situação para garantir que nem todos os utilizadores possam ver e aceder aos mesmos dados. Cada utilizador deve ter um perfil e ter acesso apenas a um determinado conjunto de funcionalidades da aplicação.

É importante que os sistemas que compõem uma aplicação mantenham sempre um registo dos acessos e das ações realizadas pelos utilizadores. Especialmente quanto mais sensível ou confidencial for a natureza dos dados. Assim, em caso de problema, esta informação facilitará a identificação da origem do problema.

 

4. Prevenção de ataques de cross-site Scripting

O Cross-Site Scripting ou XSS é um dos ataques mais frequentes a uma aplicação. Esta vulnerabilidade de segurança da web permite a um hacker comprometer as interações que os utilizadores têm num sítio web.

O XSS permite ao criminoso cibernético fazer-se passar por um utilizador vítima, realizar qualquer ação que o utilizador possa realizar e aceder a quaisquer dados do utilizador. Se a vítima tiver acesso privilegiado dentro da aplicação, o hacker poderá obter o controlo total da aplicação.

Para evitar o colapso da aplicação quando o utilizador altera a interface através da edição de dados numa página web específica, é necessário compreender por onde passam os dados e evitar caminhos alternativos. Para prevenir tais ataques, pode ou aplicar encriptação sensível ao contexto, ou seja, filtrar dados à chegada do utilizador e encriptar dados à saída, ou permitir uma Política de Segurança de Conteúdos (CSP) para minimizar as vulnerabilidades XSS que ainda existem.

 

5. Ser sempre avisado de ameaças desconhecidas

À medida que a utilização de aplicações aumenta, as ameaças à segurança também evoluem e podem surgir tipos desconhecidos de ataques. Por esta razão, é importante manter-se a par das últimas tendências em ciberataques e ter um plano proativo para agir o mais rapidamente possível no caso de tal ameaça.

“Quando se trata de segurança da web, qualquer precaução que possamos tomar não é suficiente; qualquer simples movimento pode ser um ponto de entrada para os cibercriminosos. Os programadores devem cumprir as boas práticas de segurança ao desenvolver uma aplicação, para que, quando esta é utilizada, não haja problemas durante a sua utilização e os dados dos utilizadores estejam sempre protegidos", diz David Faustino, Diretor Geral da Nexllence.

 

Fonte: Cepyme News

 

SABER MAIS SOBRE A NEXLLENCE

2021-07-29