Please use this identifier to cite or link to this item: https://hdl.handle.net/10316/88060
Title: Software verification aimed at security vulnerabilities
Other Titles: Verificação de software orientada a vulnerabilidades de segurança
Authors: Gonçalo, Luís Miguel Agante
Orientador: Barbosa, Raul André Brajczewski
Keywords: Testes; Falhas de software; Injeção de falhas; Vulnerabilidades de segurança; Segurança; Testing; Software faults; Fault injection; Security vulnerabilities; Security
Issue Date: 13-Sep-2019
Serial title, monograph or event: Software verification aimed at security vulnerabilities
Place of publication or event: DEI-FCTUC
Abstract: 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.
Description: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
URI: https://hdl.handle.net/10316/88060
Rights: openAccess
Appears in Collections:UC - Dissertações de Mestrado

Files in This Item:
File Description SizeFormat
Dissertation_Luis_Goncalo.pdf2.15 MBAdobe PDFView/Open
Show full item record

Page view(s)

130
checked on Apr 23, 2024

Download(s)

280
checked on Apr 23, 2024

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons