Automatic Removal of Flaws in Embedded System Software

Detalhes bibliográficos
Autor(a) principal: Inácio, João Maria Martins
Data de Publicação: 2022
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/10451/53777
Resumo: Tese de mestrado, Segurança Informática, Universidade de Lisboa, Faculdade de Ciências, 2022
id RCAP_26bbaadb818d0f73af5632a4cc172fd6
oai_identifier_str oai:repositorio.ul.pt:10451/53777
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 Automatic Removal of Flaws in Embedded System SoftwareVulnerabilidades de Buffer OverflowAnálise EstáticaFuzzingCorrecção de CódigoSegurança de SoftwareTeses de mestrado - 2022Departamento de InformáticaTese de mestrado, Segurança Informática, Universidade de Lisboa, Faculdade de Ciências, 2022Currently, embedded systems are present in a myriad of devices, such as Internet of Things, drones, and Cyber-physical Systems. The security of these devices can be critical, depending on the context they are integrated and the role they play (e.g., water plant, car). C is the core language used to develop the software for these devices and is known for missing the bounds of its data types, which leads to vulnerabilities such as buffer overflows. These vulnerabilities, when exploited, cause severe damage and can put human life in danger. Therefore, the software of these devices must be secure. One of the concerns with vulnerable C programs is to correct the code automatically, employing secure code that can remove the existing vulnerabilities and avoid attacks. However, such task faces some challenges after finding the vulnerabilities, namely determining what code is needed to remove them and where to insert that code, maintaining the correct behavior of the application after applying the code correction, and verifying that the generated code correction is secure and effectively removes the vulnerabilities. Another challenge is to accomplish all these elements automatically. This work aims to study diverse types of buffer overflow vulnerabilities in the C programming lan guage, forms to build secure code for invalidating such vulnerabilities, including functions from the C language that can be used to remove flaws. Based on this knowledge, we propose an approach that automatically, after discovering and confirming potential vulnerabilities of an application, applies code correction to fix the vulnerable code of those vulnerabilities verified and validate the new code with fuzzing/attack injection. We implemented our approach and evaluated it with a set of test cases and with real applications. The experimental results showed that the tool detected the intended vulnerabilities and generated corrections capable of removing the vulnerabilities found.Medeiros, Ibéria Vitória de Sousa, 1971-Repositório da Universidade de LisboaInácio, João Maria Martins2022-07-13T12:47:46Z202220222022-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10451/53777enginfo: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:RCAAP2023-11-08T16:59:54Zoai:repositorio.ul.pt:10451/53777Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T22:04:44.596168Repositó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 Automatic Removal of Flaws in Embedded System Software
title Automatic Removal of Flaws in Embedded System Software
spellingShingle Automatic Removal of Flaws in Embedded System Software
Inácio, João Maria Martins
Vulnerabilidades de Buffer Overflow
Análise Estática
Fuzzing
Correcção de Código
Segurança de Software
Teses de mestrado - 2022
Departamento de Informática
title_short Automatic Removal of Flaws in Embedded System Software
title_full Automatic Removal of Flaws in Embedded System Software
title_fullStr Automatic Removal of Flaws in Embedded System Software
title_full_unstemmed Automatic Removal of Flaws in Embedded System Software
title_sort Automatic Removal of Flaws in Embedded System Software
author Inácio, João Maria Martins
author_facet Inácio, João Maria Martins
author_role author
dc.contributor.none.fl_str_mv Medeiros, Ibéria Vitória de Sousa, 1971-
Repositório da Universidade de Lisboa
dc.contributor.author.fl_str_mv Inácio, João Maria Martins
dc.subject.por.fl_str_mv Vulnerabilidades de Buffer Overflow
Análise Estática
Fuzzing
Correcção de Código
Segurança de Software
Teses de mestrado - 2022
Departamento de Informática
topic Vulnerabilidades de Buffer Overflow
Análise Estática
Fuzzing
Correcção de Código
Segurança de Software
Teses de mestrado - 2022
Departamento de Informática
description Tese de mestrado, Segurança Informática, Universidade de Lisboa, Faculdade de Ciências, 2022
publishDate 2022
dc.date.none.fl_str_mv 2022-07-13T12:47:46Z
2022
2022
2022-01-01T00:00:00Z
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/10451/53777
url http://hdl.handle.net/10451/53777
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.format.none.fl_str_mv application/pdf
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_ 1799134598737690624