SHIFT >_CODE
← Journal

Bases de segurança de aplicações web que qualquer proprietário deve conhecer

Não é preciso ser especialista em segurança para fazer as perguntas certas. Os princípios essenciais que protegem um website ou aplicação web e os dados dos seus utilizadores.

A maior parte dos incidentes de segurança em projetos pequenos e médios não resulta de ataques sofisticados, mas de falhas simples: uma conta de administrador esquecida, um plugin desatualizado, uma chave secreta publicada por engano. Conhecer as bases ajuda o proprietário a fazer as perguntas certas e a confirmar que foram respondidas.

O acesso é verificado no servidor

Esconder um botão na interface não protege nada. Cada ação - ver, alterar ou apagar dados - tem de ser verificada no servidor: quem é o utilizador e tem permissão para isto? Em sistemas com base de dados, regras de acesso ao nível dos dados acrescentam outra camada de proteção, para que nem um erro no código exponha dados alheios.

Palavras-passe e segredos são tratados com cuidado

As palavras-passe dos utilizadores nunca são guardadas de forma legível; serviços ou bibliotecas de autenticação estabelecidos fazem isto corretamente. Chaves de API, palavras-passe da base de dados e tokens ficam numa configuração protegida no servidor - nunca no código que chega ao navegador nem em documentos ou chats partilhados. Os administradores usam palavras-passe fortes e únicas e, sempre que possível, autenticação de dois fatores.

Tudo é mantido atualizado

Frameworks, bibliotecas, plugins e o sistema operativo do servidor recebem correções de segurança regularmente. Um projeto sem atualizações há um ano provavelmente contém vulnerabilidades conhecidas. Planeie atualizações regulares como parte da manutenção, não como medida de emergência.

Os dados viajam encriptados

Todo o website funciona em HTTPS, para que os dados entre o utilizador e o servidor não possam ser lidos nem alterados pelo caminho. Os cookies de sessão são marcados como seguros e inacessíveis a scripts. Os ficheiros sensíveis não ficam em pastas de acesso público.

Não se confia nas entradas

Tudo o que chega de fora - formulários, ficheiros enviados, parâmetros em ligações, mensagens de sistemas parceiros - é validado no servidor. Limites de tamanho e tipo para os ficheiros enviados e proteção dos formulários contra spam automático evitam muitos problemas comuns.

Os problemas ficam visíveis

Registos das ações importantes, alertas para tentativas falhadas de início de sessão repetidas e verificações regulares de quem tem permissões de administrador permitem detetar um problema cedo. Juntamente com cópias de segurança testadas, transformam um possível desastre num incidente controlável.

Em resumo

Verifique o acesso no servidor, proteja palavras-passe e segredos, mantenha o software atualizado, use HTTPS em todo o lado, valide todas as entradas e acompanhe os registos. Estas bases evitam a maioria dos incidentes reais.