Executando verificação de segurança...
3

Cibersegurança e listagem de vulnerabilidades

Segurança (ou a falta dela)

Com o avanço massivo das tecnologias e sistemas de informação que presenciamos nos últimos anos, está claro que, mais importante do que saber escrever código, é saber escrever código seguro. Não é incomum vermos grandes vazamentos de dados e ataques críticos em empresas que julgávamos serem seguras. Felizmente, cada vez mais estas empresas estão dispostas em investir tempo e dinheiro na área de cibersegurança, visto que os problemas acarretados pela falta desta são muito reais e danosos.

Vulnerabilidades

Quando falamos em Segurança de Aplicações Web (Cibersegurança) , estamos nos referindo a uma série de ações a serem tomadas a fim de encontrar e remediar possíveis vulnerabilidades em uma dada aplicação. Uma aplicação é dita vulnerável quando esta apresenta alguma fraqueza ou problema que a torne mais suscetível a falhas (não intencionais) ou ataques (intencionais).

De forma geral, uma aplicação vulnerável falha em um desses 3 pilares da segurança:

  • Confidencialidade: o acesso à informação é dado somente àqueles autorizados - privacidade.
  • Integridade: dados e informações não são corrompidos durante nenhum processo, mantendo sempre a confiança de todas as partes - sem manipulação indevida.
  • Disponibilidade: as informações estão sempre acessíveis e disponíveis para um usuário legítimo, sempre que estas forem necessárias.

Catalogação de vulnerabilidades conhecidas

A maior parte dos ataques sofridos por empresas hoje começa a partir de falhas comuns já conhecidas e bem documentadas. O programa Common Weakness Enumeration (CWE)¹ é um sistema de categorização de vulnerabilidades de software e hardware. O objetivo é identificar tais problemas e desenvolver maneiras de mitigá-los. Cada vulnerabilidade é definida e identificada por um número, facilitando que todos os desenvolvidores e arquitetos de software, por exemplo, possam se comunicar numa mesma linguagem.
Exemplificando com uma vulnerabilidade muito conhecida: SQL Injection². A página do CWE relativa a esta vulnerabilidade tem o número 89. Além da descrição da vulnerabilidade, nesta página encontram-se exemplos e maneiras de remediar o problema de forma segura.

Entender como um sistema pode ser vulnerável, nos ajuda a escrever códigos melhores e mais seguros para nossos usuários 🙂.

¹ https://cwe.mitre.org/

² https://cwe.mitre.org/data/definitions/89.html

Carregando publicação patrocinada...
3

Outras coisas interessantes disponíveis na página do CWE além da descrição da vulnerabilidade e de exemplos:

  • uma série de instruções para detectar o problema no nosso código (na seção Detection Methods). Eles mostram tanto uma forma automática de detecção quanto manual. Também fica fácil de ver qual ferramenta é mais apropriada pra encontrar um dado tipo de vulnerabilidade; análise estática ou dinâmica.
  • maneiras de mitigar o problema (Potential Mitigations) em várias fases de implementação: desde a fase de design e arquitetura de software até a fase de operação (uso de firewalls, etc).