Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models
| Autor(a) principal: | |
|---|---|
| Data de Publicação: | 2024 |
| Tipo de documento: | Dissertação |
| Idioma: | por |
| Título da fonte: | Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| Texto Completo: | http://hdl.handle.net/10400.5/96715 |
Resumo: | Trabalho de projeto de mestrado, Segurança Informática , 2024, Universidade de Lisboa, Faculdade de Ciências |
| id |
RCAP_d6fc5ecbc6d3c0007d291d0f12b99ed0 |
|---|---|
| oai_identifier_str |
oai:repositorio.ulisboa.pt:10400.5/96715 |
| 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 |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language ModelsSegurança informáticaVulnerabilidadesPromptPatchModelos de Linguagem Natural de Grande EscalaTrabalhos de projeto de mestrado - 2024Departamento de InformáticaTrabalho de projeto de mestrado, Segurança Informática , 2024, Universidade de Lisboa, Faculdade de CiênciasNa atual era digital, a informação tornou-se um dos ativos mais valiosos, e a privacidade das pessoas passou a ser uma preocupação constante e crescente. A proliferação de serviços web e a interconexão global expõem-nos a um número sem precedentes de ameaças e ataques informáticos, colocando em risco tanto os dados pessoais quanto os ativos empresariais. As motivações dos atacantes variam desde a obtenção de lucros rápidos até à simples intenção de causar disrupção em sistemas críticos. Entre as diversas técnicas utilizadas para comprometer sistemas, a exploração de vulnerabilidades no código-fonte permanece como um método amplamente utilizado. A complexidade inerente ao desenvolvimento de software seguro explica em parte, a presença destas falhas. As ferramentas de analise estática têm sido essenciais na identificação de vulnerabilidades conhecidas ao longo do ciclo de desenvolvimento do software. No entanto, a eficácia destas ferramentas e constantemente posta à prova pela crescente sofisticação e camuflagem dos ataques, bem como pela sua limitada capacidade de corrigir vulnerabilidades identificadas. As empresas devem reconhecer a necessidade urgente de proteger os seus ativos digitais, enquanto os programadores devem integrar praticas de segurança desde as fases iniciais do desenvolvimento, evitando confiar no bom comportamento dos utilizadores. Este trabalho propõe a ferramenta CodeShieldLLM, concebida para apoiar programadores na identificação e correção de vulnerabilidades de dia zero no código-fonte. As principais funcionalidades da ferramenta incluem a possibilidade de criação de datasets com exemplos de código vulnerável e seguro em diversas linguagens de programação (tendo sido utilizado Python neste trabalho), a utilização de LLMs para identificar e corrigir essas vulnerabilidades, e a avaliação da eficácia da ferramenta. Embora focada nesta linguagem, a ferramenta demonstra potencial de aplicação em outras, evidenciando-se como uma solução prática e escalável para melhorar a segurança do software.In the current digital age, information has become one of the most valuable assets, and individuals’ privacy has become a constant and growing concern. The proliferation of web services and global interconnectivity expose us to an unprecedented number of threats and cyberattacks, jeopardizing both personal data and corporate assets. Attackers’ motivations range from seeking quick profits to the simple intent of causing disruption in critical systems. Among the various techniques used to compromise systems, the exploitation of vulnerabilities in source code remains a widely used method. The inherent complexity of developing secure software partly explains the presence of these flaws. Static analysis tools have been essential in identifying known vulnerabilities throughout the software development lifecycle. However, the effectiveness of these tools is constantly tested by the growing sophistication and camouflage of attacks, as well as their limited ability to remediate identified vulnerabilities. Companies must recognize the urgent need to protect their digital assets, while programmers should integrate security practices from the early stages of development, avoiding reliance on users’ good behavior. This work proposes the CodeShieldLLM tool, designed to assist programmers in identifying and correcting zero-day vulnerabilities in source code. The tool’s main features include the ability to create datasets with examples of vulnerable and secure code in various programming languages (with Python being used in this work), the utilization of LLMs to identify and fix these vulnerabilities, and the evaluation of the tool’s effectiveness. Although focused on this language, the tool demonstrates potential for application in others, establishing itself as a practical and scalable solution to improve software security.Neves, Nuno Fuentecilla Maia Ferreira, 1969-Repositório da Universidade de LisboaSantos, Duarte José Oliveira2024-12-27T14:49:09Z202420242024-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.5/96715TID:203880056porinfo: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:RCAAP2025-03-17T16:30:53Zoai:repositorio.ulisboa.pt:10400.5/96715Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-29T04:17:48.189234Repositó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 |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models |
| title |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models |
| spellingShingle |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models Santos, Duarte José Oliveira Segurança informática Vulnerabilidades Prompt Patch Modelos de Linguagem Natural de Grande Escala Trabalhos de projeto de mestrado - 2024 Departamento de Informática |
| title_short |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models |
| title_full |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models |
| title_fullStr |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models |
| title_full_unstemmed |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models |
| title_sort |
Deteção e Correção Automática de Vulnerabilidades Recorrendo a Large Language Models |
| author |
Santos, Duarte José Oliveira |
| author_facet |
Santos, Duarte José Oliveira |
| author_role |
author |
| dc.contributor.none.fl_str_mv |
Neves, Nuno Fuentecilla Maia Ferreira, 1969- Repositório da Universidade de Lisboa |
| dc.contributor.author.fl_str_mv |
Santos, Duarte José Oliveira |
| dc.subject.por.fl_str_mv |
Segurança informática Vulnerabilidades Prompt Patch Modelos de Linguagem Natural de Grande Escala Trabalhos de projeto de mestrado - 2024 Departamento de Informática |
| topic |
Segurança informática Vulnerabilidades Prompt Patch Modelos de Linguagem Natural de Grande Escala Trabalhos de projeto de mestrado - 2024 Departamento de Informática |
| description |
Trabalho de projeto de mestrado, Segurança Informática , 2024, Universidade de Lisboa, Faculdade de Ciências |
| publishDate |
2024 |
| dc.date.none.fl_str_mv |
2024-12-27T14:49:09Z 2024 2024 2024-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/10400.5/96715 TID:203880056 |
| url |
http://hdl.handle.net/10400.5/96715 |
| identifier_str_mv |
TID:203880056 |
| dc.language.iso.fl_str_mv |
por |
| language |
por |
| 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_ |
1833602008527929344 |