Scan metrics for Static Application Security Testing (SAST)

Detalhes bibliográficos
Autor(a) principal: Balsa, Ana Maria Carvalho
Data de Publicação: 2024
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Texto Completo: https://hdl.handle.net/1822/92637
Resumo: Relatório de dissertação de mestrado integrado em Engineering and Management of Information Systems
id RCAP_99aa3b55891cfcfd3c109cb0cd98623e
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/92637
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling Scan metrics for Static Application Security Testing (SAST)Métricas de scan para Static Application Security Testing (SAST)SASTSoftware qualitySDLCQuality metricsCiclo de vida do desenvolvimento de softwareQualidade do softwareEngenharia e Tecnologia::Outras Engenharias e TecnologiasRelatório de dissertação de mestrado integrado em Engineering and Management of Information SystemsIn today’s business landscape, safeguarding sensitive data is paramount due to the growing risk of cyber threats. Despite their incredible potential, technologies like AI, 5G, and blockchain come with security challenges that need to be addressed. Security failures can result in substantial losses, emphasizing the need for a standardized definition of cybersecurity. Vulnerability scanning tools like Static Application Security Testing (SAST), integrated into CI/CD processes, help detect code vulnerabilities, enhancing overall software security. The main goal of this dissertation is to establish criteria for assessing the quality of scans performed by SAST tools, with the ultimate goal of enhancing software quality. To achieve this goal, the dissertation will explore various security testing techniques, including SAST tools, identify essential metrics and their relevance across different scan phases, develop a comprehensive formula for quantifying the overall scan quality using these metrics, create techniques for metric extraction, and finally, apply this formula to guide the decisions of Quality Assurance (QA) team during software releases. This research addresses a critical gap in evaluating the quality of SAST scans, which is essential given the increasing demand for high-quality software products. To accomplish this goal, the approach involved the development of a service named CxScanQuality, aimed at evaluating project scan quality based on SAST log files. CxScanQuality integration was planned within a platform responsible for assessing the overall quality of SAST products used by the QA team, along with integration into Continuous Integration (CI) pipelines. To assess scan quality through CxScanQuality, it was essential to identify the set of characteristics contributing to it. These characteristics were segmented into recognition coverage, DOM structure, and query execution. Based on that, raise for each component these quality factors: Coverability, Domability, and Querability. The scan quality was an aggregated metric, representing the sum of these quality factors, each with its specific impact on scan quality. Following this service’s integration, the results show that the overall scan quality across the 23 languages and 160 projects is high, with an average score of 89.07%. This master’s dissertation emphasizes that scan quality extends beyond result accuracy. These findings are precious for the QA team, as they provide relevant data on scan quality for all projects in the organization. These results also introduce a new method for ensuring the quality of the SAST product, ultimately contributing to enhanced software quality.No mundo empresarial atual, proteger dados sensíveis é crucial devido ao crescente perigo de ameaças cibernéticas. Tecnologias como Inteligência Artificial, 5G e blockchain, embora promissoras, enfrentam desafios de segurança. Falhas na área de desenvolvimento de software podem causar perdas monetárias significativas, destacando a necessidade de normas de cibersegurança. Ferramentas de análise estática, como o SAST, integradas nos processos de CI/CD, detetam vulnerabilidades no código-fonte, melhorando a segurança do software. Posto isto, esta dissertação tem como objetivo principal estabelecer critérios de avaliação da qualidade dos scans realizados por ferramentas SAST, com o propósito último de aprimorar a qualidade do software. Para alcançar este objetivo, a dissertação explorará diversas técnicas de teste de segurança, incluindo ferramentas SAST, identificará métricas essenciais e a sua relevância nas diferentes fases de scan, conceberá uma fórmula abrangente para quantificar a qualidade global dos scans com base nessas métricas, desenvolverá técnicas de extração dessas métricas e, por fim, aplicará essa fórmula para orientar as decisões da equipa de Garantia de Qualidade durante os lançamentos de novas versões do produto SAST. A ausência de literatura sobre a avaliação da qualidade dos scans do SAST foi a motivação central desta dissertação, uma vez que a qualidade destes scans é fundamental no contexto do crescente interesse em software de alta qualidade. Assim, o serviço CxScanQuality foi concebido para avaliar a qualidade dos scans com base nos logs fornecidos pelo SAST após a análise do projeto. Este serviço integra-se em dois pontos cruciais: na plataforma de avaliação geral de produtos SAST utilizada pela equipa de Garantia de Qualidade e nas pipelines de CI. Para avaliar a qualidade dos scans, identificaram-se três componentes críticas: cobertura de reconhecimento do código-fonte, estrutura DOM e execução de consultas por vulnerabilidades. Definiram-se fatores de qualidade para cada componente, a saber, Coverability, Domability and Querability. A qualidade do scan é uma métrica agregada, refletindo a soma ponderada desses fatores, cada um com o seu impacto específico na qualidade global do scan. Após a implementação deste serviço, os resultados revelaram uma média de 89.07% na qualidade global dos scans, um valor considerado positivo para esta métrica. Esta avaliação abrangeu 23 linguagens de programação e 160 projetos. Portanto, esta dissertação destaca que a qualidade dos scans de SAST não se limita à precisão dos resultados do SAST, fornecendo informações relevantes para a equipa de Garantia de Qualidade, abarcando todos os projetos da empresa. Além disso, esses resultados introduzem um novo método para garantir a qualidade dos produtos SAST, contribuindo para a melhoria da qualidade do software.Santos, HenriqueUniversidade do MinhoBalsa, Ana Maria Carvalho2024-01-112024-01-11T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1822/92637eng203609280info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-08-03T01:27:10Zoai:repositorium.sdum.uminho.pt:1822/92637Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T18:46:44.136946Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv Scan metrics for Static Application Security Testing (SAST)
Métricas de scan para Static Application Security Testing (SAST)
title Scan metrics for Static Application Security Testing (SAST)
spellingShingle Scan metrics for Static Application Security Testing (SAST)
Balsa, Ana Maria Carvalho
SAST
Software quality
SDLC
Quality metrics
Ciclo de vida do desenvolvimento de software
Qualidade do software
Engenharia e Tecnologia::Outras Engenharias e Tecnologias
title_short Scan metrics for Static Application Security Testing (SAST)
title_full Scan metrics for Static Application Security Testing (SAST)
title_fullStr Scan metrics for Static Application Security Testing (SAST)
title_full_unstemmed Scan metrics for Static Application Security Testing (SAST)
title_sort Scan metrics for Static Application Security Testing (SAST)
author Balsa, Ana Maria Carvalho
author_facet Balsa, Ana Maria Carvalho
author_role author
dc.contributor.none.fl_str_mv Santos, Henrique
Universidade do Minho
dc.contributor.author.fl_str_mv Balsa, Ana Maria Carvalho
dc.subject.por.fl_str_mv SAST
Software quality
SDLC
Quality metrics
Ciclo de vida do desenvolvimento de software
Qualidade do software
Engenharia e Tecnologia::Outras Engenharias e Tecnologias
topic SAST
Software quality
SDLC
Quality metrics
Ciclo de vida do desenvolvimento de software
Qualidade do software
Engenharia e Tecnologia::Outras Engenharias e Tecnologias
description Relatório de dissertação de mestrado integrado em Engineering and Management of Information Systems
publishDate 2024
dc.date.none.fl_str_mv 2024-01-11
2024-01-11T00: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 https://hdl.handle.net/1822/92637
url https://hdl.handle.net/1822/92637
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv 203609280
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órios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833597658067894272