Desenvolvimento de software Seguro
Por: Ana Souza • 7/6/2015 • Relatório de pesquisa • 971 Palavras (4 Páginas) • 177 Visualizações
Desenvolvendo softwares seguros
Com o desenvolvimento da tecnologia e a evolução da internet , hoje as empresas utilizam de softwares e aplicativos para ajudar e agilizar tomadas de decisão e estabelecer planejamentos futuros. Cada vez mais estes sistemas estão interconectados, e esta conexão leva a vulnerabilidade de ataques, estes que por sua vez tem como intenção, a quebra de sigilo, roubo de senhas, informações, desconfiguração de sistemas, gerando grandes prejuízos e impactos financeiros para uma organização. Nasce então a necessidade de ter segurança nas informações, um software seguro é um software de qualidade, capaz de atender e ajudar no crescimento e desenvolvimento de uma empresa e gerar confiabilidade de seus clientes. Não se pode ter qualidade sem segurança.
Reduzir ao máximo todo e qualquer risco à informação, tem a finalidade de manter a integridade e a disponibilidade dos sistemas. Para isso, se faz necessário manter-se atento para pontos que farão a diferença a longo prazo, como uma boa análise de riscos, planos de contingência e a definição das políticas de segurança. O melhor lugar para se iniciar um processo de segurança na empresa, é na gerencia, onde conscientizar os seus integrantes é o passo fundamental, pois investir em segurança exige investimento financeiro e oferece pouco ou nenhum retorno do mesmo.
A seguir vamos listas os 5 mais importantes princípios da segurança.
Confidencialidade
Descrição: É o princípio que garante que uma informação não será acessada por pessoas não autorizadas (ser confidencial, ser sigiloso);
Fase: Todas as Fases
Integridade
Descrição: É o princípio que garante que uma informação não será alterada sem autorização –durante seu trajeto ou seu armazenamento, por exemplo (manter-se íntegro);
Fase: Implementação
Disponibilidade
Descrição: É o princípio que garante que um sistema de informações estará sempre disponível aos usuários quando requisitado (ser disponível, estar lá sempre);
Fase: Implementação e Manutenção.
Autenticidade
Descrição: É o princípio que garante a identidade de um usuário ou sistema de informações com quem se vai estabelecer comunicação (ser autêntico, ser quem diz ser);
Fase: Implementação.
Não repúdio (Irretratabilidade)
Descrição: É o princípio que garante que o autor de uma informação (como um e-mail) não poderá negar falsamente a autoria de tal informação (não ser possível retratar-se);
Fase: Projeto\Análise, Implementação e Teste.
Estouro de Buffer
O Buffer é uma região de memoria temporária (RAM) criadas pelos programas para processar leitura e escrita de dados. De acordo com Ulbrich (2008, p. 74) trata-se de pequenas porções de memoria com tamanho definido, usados para armazenar algum dado transitório. Ali os dados são armazenados temporariamente até serem transferidos para outra parte.
Para o desenvolvimento de software seguro, é de grande importância uma atenção maior ao estouro de Buffer, geralmente, um ataque consiste na descoberta de algum parâmetro de entrada vulnerável de um sistema que possa ser manipulado de tal forma que permita a injeção de comandos de máquina maliciosos. Para isso é essencial boas praticas de programação.
O Estouro de Buffer overflow é o resultado do armazenamento de uma quantidade maior de dados que sua capacidade suporta em um campo. Seria o transbordamento.
Ainda de acordo com Ulbrich (2008, p. 74):
“quando você preenche campos de um formulário, os dados são provisoriamente guardados em um buffer, até o programa decidir o que fazer com eles... o estouro de Buffer consiste em “estufa-lo” com mais dados do que pode armazenar, fazendo com que os dados sejam escritos em áreas de memoria que não lhe pertencem.“
...