Automatické vyhodnocení četnosti výskytu chyb v reálných projektech
Date issued
2025-06-19
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Západočeská univerzita v Plzni
Abstract
Tato diplomová práce se zabývá automatickou klasifikací softwarových zranitelností podle systému Common Weakness Enumeration (CWE). Výsledný klasifikátor
může být použit k vyhodnocení četnosti CWE chyb na reálném projektu, nebo třeba
přiřazování CWE k nově objeveným Common Vulnerabilities and Exposures (CVE).
Nejprve jsou analyzovány dostupné datové zdroje a možné implementační techniky klasifikátoru. Hlavní pozornost je věnována předtrénovaným velkým jazykovým modelům (LLM). Je provedeno několik experimentů ve snaze vyladit kandidáty
LLM na klasifikátor CWE. Nejvhodnějším základním modelem byl zvolen CodeT5
od společnosti Salesforce.
Na základě provedených experimentů jsou použity dvě vyladěné konfigurace
modelu CodeT5 pro použití na reálných datech. Pro zhodnocení modelu jsou použita unikátní data vycházející z datasetu CVEFixes. Následně je model také použit
pro získání četností tříd CWE z vybraných GitHub projektů.
Výsledný klasifikátor ovšem neprokazuje příliš dobré výsledky, a proto je otázkou, zda jsou LLM vhodnou volbou pro tento typ úlohy a zda by se budoucí práce
neměly zaměřit na specializovanější architektury modelů.
Description
Subject(s)
CWE, klasifikace zranitelností, velké jazykové modely, strojové učení