Software verification aimed at security vulnerabilities
Autor(a) principal: | |
---|---|
Data de Publicação: | 2019 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/10316/88060 |
Resumo: | Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia |
id |
RCAP_053fb73c79b7154b89fd342816f20eae |
---|---|
oai_identifier_str |
oai:estudogeral.uc.pt:10316/88060 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Software verification aimed at security vulnerabilitiesVerificação de software orientada a vulnerabilidades de segurançaTestesFalhas de softwareInjeção de falhasVulnerabilidades de segurançaSegurançaTestingSoftware faultsFault injectionSecurity vulnerabilitiesSecurityDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e TecnologiaSoftware 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.2019-09-13info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://hdl.handle.net/10316/88060http://hdl.handle.net/10316/88060TID:202307182engGonçalo, Luís Miguel Aganteinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2021-05-07T10:45:02Zoai:estudogeral.uc.pt:10316/88060Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:08:51.239969Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Software verification aimed at security vulnerabilities Verificação de software orientada a vulnerabilidades de segurança |
title |
Software verification aimed at security vulnerabilities |
spellingShingle |
Software verification aimed at security vulnerabilities Gonçalo, Luís Miguel Agante Testes Falhas de software Injeção de falhas Vulnerabilidades de segurança Segurança Testing Software faults Fault injection Security vulnerabilities Security |
title_short |
Software verification aimed at security vulnerabilities |
title_full |
Software verification aimed at security vulnerabilities |
title_fullStr |
Software verification aimed at security vulnerabilities |
title_full_unstemmed |
Software verification aimed at security vulnerabilities |
title_sort |
Software verification aimed at security vulnerabilities |
author |
Gonçalo, Luís Miguel Agante |
author_facet |
Gonçalo, Luís Miguel Agante |
author_role |
author |
dc.contributor.author.fl_str_mv |
Gonçalo, Luís Miguel Agante |
dc.subject.por.fl_str_mv |
Testes Falhas de software Injeção de falhas Vulnerabilidades de segurança Segurança Testing Software faults Fault injection Security vulnerabilities Security |
topic |
Testes Falhas de software Injeção de falhas Vulnerabilidades de segurança Segurança Testing Software faults Fault injection Security vulnerabilities Security |
description |
Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia |
publishDate |
2019 |
dc.date.none.fl_str_mv |
2019-09-13 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10316/88060 http://hdl.handle.net/10316/88060 TID:202307182 |
url |
http://hdl.handle.net/10316/88060 |
identifier_str_mv |
TID:202307182 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799133981634985984 |