Todo software possui defeitos, especialmente no código complexo de hoje, com milhares de linhas que precisam ser redigidas. O Instituto de Engenheiros Elétricos e Eletrônicos (IEEE) está ciente desse dilema. A partir de 2014, o IEEE lançou uma nova iniciativa: o Centro da Sociedade de Computadores para Design Seguro (CSD). É missão? Fornecer orientação sobre o reconhecimento de sistemas de software vulneráveis a comprometimentos e o design e a construção de sistemas de software com propriedades de segurança fortes e identificáveis
Pode-se dizer que isso já foi feito antes. Isso é verdade. No entanto, o CSD pretende adotar uma abordagem diferente, deslocando parte do foco em segurança, da descoberta de bugs à identificação de falhas comuns de projeto, na esperança de que os arquitetos de software possam aprender uns com os outros.
Para obter esse tipo de informação, o CSD procurou a ajuda de veteranos no campo da segurança de software - mais ou menos aqueles que cometeram os erros mencionados acima ou tiveram uma mão para corrigi-los. Após muita deliberação, o grupo reuniu seus pensamentos em um artigo, "Evitando as 10 principais falhas de design de segurança de software". O IEEE mencionou que muitas das falhas que fizeram parte da lista são conhecidas há décadas, mas continuam sendo um problema. Aqui vamos dar uma olhada nessas falhas - e como corrigi-las.