Categorias de vulnerabilidades de segurança.
A maioria das vulnerabilidades de segurança de software se enquadra em uma das seguintes categorias:
Saturação do buffer – esta vulnerabilidade ocorre quando os dados são gravados além dos limites de um buffer.
Os buffers são áreas de memórias alocadas a um aplicativo. Ao alterar os dados além dos limites de um buffer, o aplicativo acessa a memória alocada a outros processos.
Isso pode levar à queda do sistema, comprometimento de dados ou fornecer o escalonamento de privilégios.
Entrada não validada – programas normalmente funcionam com entrada de dados.
Esses dados que entram no programa podem ter conteúdo mal-intencionado, projetado para forçar o programa a se comportar de forma não desejada. Considere um programa que recebe uma imagem para processar.
Um usuário mal-intencionado pode criar um arquivo de imagem com dimensões de imagem inválidas.
As dimensões criadas de forma mal-intencionada podem forçar o programa a alocar buffers de tamanhos incorretos e inesperados.
Condição de corrida – esta vulnerabilidade ocorre quando a saída de um evento depende de saídas ordenadas ou cronometradas.
Uma condição de corrida se torna uma fonte de vulnerabilidade quando os eventos ordenados ou cronometrados necessários não ocorrem na ordem correta ou na sincronização apropriada.
Deficiências nas práticas de segurança – sistemas e dados confidenciais podem ser protegidos por meio de técnicas, como autenticação, autorização e criptografia.
Os desenvolvedores não devem tentar criar seus próprios algoritmos de segurança porque provavelmente apresentarão vulnerabilidades.
É altamente recomendável que os desenvolvedores usem as bibliotecas de segurança que já foram criadas, testadas e verificadas.
Problemas de controle de acesso – controle de acesso é o processo de controlar quem faz o quê, gerenciar o acesso físico aos equipamentos e determinar quem tem acesso a um recurso, como um arquivo, e o que pode fazer com ele, tais como ler ou alterar esse arquivo.
Muitas vulnerabilidades de segurança são criadas com o uso indevido de controles de acesso.
Quase todos os controles de acesso e as práticas de segurança poderão ser superados se o invasor tiver acesso físico ao equipamento de destino.
Por exemplo, não importa para quais permissões o arquivo é definido; o sistema operacional não pode impedir alguém de ignorá-lo e ler os dados diretamente no disco.
Para proteger a máquina e os dados que ela contém, o acesso físico deve ser restrito e as técnicas de criptografia devem ser usadas para proteger dados contra roubo ou danos.
Comentários
Enviar um comentário