Utilize este identificador para referenciar este registo: https://hdl.handle.net/10316/88060
Título: Software verification aimed at security vulnerabilities
Outros títulos: Verificação de software orientada a vulnerabilidades de segurança
Autor: Gonçalo, Luís Miguel Agante
Orientador: Barbosa, Raul André Brajczewski
Palavras-chave: Testes; Falhas de software; Injeção de falhas; Vulnerabilidades de segurança; Segurança; Testing; Software faults; Fault injection; Security vulnerabilities; Security
Data: 13-Set-2019
Título da revista, periódico, livro ou evento: Software verification aimed at security vulnerabilities
Local de edição ou do evento: DEI-FCTUC
Resumo: Software testing é uma atividade que tem como finalidade a identificação e posterior correção de falhas que podem diminuir a qualidade do software. Esta atividade é considerada indispensável porque todos cometemos enganos e, apesar de algumas falhas não serem importantes, outras podem ser caras e perigosas. Por esse motivo, é necessário verificar tudo o que é produzido. No entanto, mesmo as melhores técnicas de testes de software deixam falhas por detetar e, em muitos casos, essas falhas são responsáveis por criar vulnerabilidades de segurança. Esta dissertação tem como objetivo desenvolver uma metodologia para a deteção de bugs propensos a criar vulnerabilidades de segurança e que são normalmente invisíveis para as técnicas de teste geralmente usadas. Numa primeira fase, foi feita uma análise aos defeitos mais frequentemente associados a vulnerabilidades de segurança. Esta análise permitiu-nos perceber que tipo de falhas as técnicas de teste falham em detetar e assim desenvolver uma metodologia mais focada neste tipo de falhas. A ferramenta desenvolvida é capaz de criar casos de teste com base nas constantes presentes no código. Por outro lado, também é capaz de detetar código superfluo, que muitas vezes é invisível às técnicas de teste habitualmente utilizadas. Posteriormente, de modo a verificar a viabilidade da ferramenta desenvolvida, foi realizada uma injeção de vulnerabilidades representativas de forma a avaliar a deteção de falhas pelas metodologias de teste estudadas em comparação com as abordagens desenvolvidas.
Software testing is an activity aimed at the identification and later correction of faults capable of reducing the software quality. This activity is essential because the occurrence of mistakes is inevitable and although some of these mistakes are not relevant, others can be expensive and dangerous. Due to this, it is important to test everything that is produced. However, even the best software testing techniques may fail to detect some faults and in many cases these faults result in security vulnerabilities.This dissertation aims at developing an approach to find the bugs that are prone to create security vulnerabilities and that are usually invisible to the strategies commonly used. In the first phase, the types of mistakes more frequently associated with security vulnerabilities were analyzed. This analysis allows us to realize a representative fault injection to calculate the detection rate of the commonly used testing techniques in order to understand their effectiveness and the type of faults that are more difficult to detect... develop a methodology more focused on these faults. The developed tool is capable of creating test cases based on the constants present in the code. On the other hand, it is also capable of detecting extraneous faults, which are often invisible to the commonly used testing techniques. Afterwards, to verify the feasibility of the developed tool, it was performed a representative vulnerability injection in order to compare the detection rate of the testing techniques studied in comparison with the developed approaches.
Descrição: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
URI: https://hdl.handle.net/10316/88060
Direitos: openAccess
Aparece nas coleções:UC - Dissertações de Mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato
Dissertation_Luis_Goncalo.pdf2.15 MBAdobe PDFVer/Abrir
Mostrar registo em formato completo

Visualizações de página

130
Visto em 7/mai/2024

Downloads

284
Visto em 7/mai/2024

Google ScholarTM

Verificar


Este registo está protegido por Licença Creative Commons Creative Commons