Please use this identifier to cite or link to this item: https://hdl.handle.net/10316/98208
DC FieldValueLanguage
dc.contributor.advisorLaranjeiro, Carlos Nuno Bizarro e Silva-
dc.contributor.advisorTeixeira, César Alexandre Domingues-
dc.contributor.authorWanderley, Caio Walter Deziderio-
dc.date.accessioned2022-02-02T23:09:00Z-
dc.date.available2022-02-02T23:09:00Z-
dc.date.issued2021-11-17-
dc.date.submitted2022-02-02-
dc.identifier.urihttps://hdl.handle.net/10316/98208-
dc.descriptionDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia-
dc.description.abstractA bug report is the description of an error in the program that was encountered by a developer. With the increasing amount of complexity in software systems, they are prone to have several bugs including those that could reveal sensitive information or allow for attackers to run malicious software. This is especially true for banks and large scale companies, in which a security bug that reveals the users’ credentials or leaves their platform vulnerable to malicious attacks, could affect human lives. All modern large scale companies that have to create a software project have encountered bugs and have to fill in a bug report, and it is the job of a triagger to classify it according to its description. This task done by humans is very time-consuming and prone to a lot of error if the triagger does not know certain areas the report could be mentioned, this can lead to erroneous classification. So in recent decades, several studies are implementing text classification to classify these reports. This thesis, it is first presented an analysis regarding the different approaches in the literature of the past decade for classifying Bug Reports. After the analysis of the literature, we experimented with different combinations of machine learning algorithms to determine the different impacts in the performance when dealing with vulnerabilities classification. We found that the results for the Area Under The Curve (AUC) being 81.21%±8.33 when using Title and Description of a bug report, 79.51%±7.96 when using the Title, and 78.04%±8.2 when using the Description.eng
dc.description.abstractUm relatório de bug é a descrição de um erro no programa que foi encontrado por um desenvolvedor. Com a crescente complexidade dos sistemas de software, eles estão propensos a ter vários bugs, incluindo aqueles que podem revelar informações confidenciais ou permitir que invasores executem software malicioso. Isso é especialmente verdadeiro para bancos e empresas de grande porte, em que um bug de segurança que revela as credenciais dos usuários ou deixar uma plataforma vulnerável para ataques maliciosos, podem afetar vidas.Todas as empresas de grande porte modernas que têm que criar um projeto de software encontraram bugs e tirão que preencher um relatório de bug, e é o trabalho de um triager para classificá-lo de acordo com sua descrição. Essa tarefa feita por humanos é muito demorada e sujeita a muitos erros se o triagger não tiver o conhecimento de certas áreas que o relatório poderá estar mencionando, isso pode levar a uma classificação incorreta. Por causa disso, nas últimas décadas, vários estudos estão implementando a classificação de texto para classificar esses relatórios.Nesta tese, é apresentada inicialmente uma análise a respeito das diferentes abordagens na literatura das última década para classificar relatórios de bugs. Após a análise da literatura, nós experimentamos diferentes combinações de algoritmo de machine learnig para determinar os diferentes impactos no desempenho ao lidar com a classificação de vulnerabilidades. Foi descoberto que os melhores resultado para o AUC sendo 81.21 %±8.33 ao usar o Título e a Descrição de um relatório de bug, 79.51 %±7.96 ao usar o Título e 78.04 %±8.2 ao usar a Descrição.por
dc.language.isoeng-
dc.rightsopenAccess-
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/-
dc.subjectClassificação de vulnerabilidadespor
dc.subjectProblemas de Segurançapor
dc.subjectClassificação de Bug de Segurançapor
dc.subjectRelatório de Bug de Segurançapor
dc.subjectAlgoritmos de Machine Learningpor
dc.subjectVulnerability Classificationeng
dc.subjectSecurity Issueseng
dc.subjectSecurity Bug classificationeng
dc.subjectSecurity Bug Reportseng
dc.subjectMachine learningeng
dc.titleUsing machine learning for detecting security vulnerabilities through bug report analysiseng
dc.title.alternativeUsar machine learning para detectar vulnerabilidades de segurança por meio de análise de relatório de bugpor
dc.typemasterThesis-
degois.publication.locationDEI- FCTUC-
degois.publication.titleUsing machine learning for detecting security vulnerabilities through bug report analysiseng
dc.peerreviewedyes-
dc.identifier.tid202921077-
thesis.degree.disciplineInformática-
thesis.degree.grantorUniversidade de Coimbra-
thesis.degree.level1-
thesis.degree.nameMestrado em Engenharia Informática-
uc.degree.grantorUnitFaculdade de Ciências e Tecnologia - Departamento de Engenharia Informática-
uc.degree.grantorID0500-
uc.contributor.authorWanderley, Caio Walter Deziderio::0000-0002-8800-6233-
uc.degree.classification15-
uc.degree.presidentejuriHenriques, Jorge Manuel Oliveira-
uc.degree.elementojuriLaranjeiro, Carlos Nuno Bizarro e Silva-
uc.degree.elementojuriCruz, Tiago José dos Santos Martins da-
uc.contributor.advisorLaranjeiro, Carlos Nuno Bizarro e Silva-
uc.contributor.advisorTeixeira, César Alexandre Domingues::0000-0001-9396-1211-
item.openairecristypehttp://purl.org/coar/resource_type/c_18cf-
item.openairetypemasterThesis-
item.cerifentitytypePublications-
item.grantfulltextopen-
item.fulltextCom Texto completo-
item.languageiso639-1en-
Appears in Collections:UC - Dissertações de Mestrado
Files in This Item:
File Description SizeFormat
_MSc_Caio__vulnerability_classification.pdf1.43 MBAdobe PDFView/Open
Show simple item record

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons