Return to search

KARTAL: Web Application Vulnerability Hunting Using Large Language Models : Novel method for detecting logical vulnerabilities in web applications with finetuned Large Language Models / KARTAL: Jakt på sårbarheter i webbapplikationer med hjälp av stora språkmodeller : Ny metod för att upptäcka logiska sårbarheter i webbapplikationer med hjälp av finjusterade stora språkmodeller

Broken Access Control is the most serious web application security risk as published by Open Worldwide Application Security Project (OWASP). This category has highly complex vulnerabilities such as Broken Object Level Authorization (BOLA) and Exposure of Sensitive Information. Finding such critical vulnerabilities in large software systems requires intelligent and automated tools. State-of-the-art (SOTA) research including hybrid application security testing tools, algorithmic brute forcers, and artificial intelligence has shown great promise in detection. Nevertheless, there exists a gap in research for reliably identifying logical and context-dependant Broken Access Control vulnerabilities. We modeled the problem as text classification and proposed KARTAL, a novel method for web application vulnerability detection using a Large Language Model (LLM). It consists of 3 components: Fuzzer, Prompter, and Detector. The Fuzzer is responsible for methodically collecting application behavior. The Prompter processes the data from the Fuzzer and formulates a prompt. Finally, the Detector uses an LLM which we have finetuned for detecting vulnerabilities. In the study, we investigate the performance, key factors, and limitations of the proposed method. Our research reveals the need for a labeled Broken Access Control vulnerability dataset in the cybersecurity field. Thus, we custom-generate our own dataset using an auto-regressive LLM with SOTA few-shot prompting techniques. We experiment with finetuning 3 types of decoder-only pre-trained transformers for detecting 2 sophisticated vulnerabilities. Our best model attained an accuracy of 87.19%, with an F1 score of 0.82. By using hardware acceleration on a consumer-grade laptop, our fastest model can make up to 539 predictions per second. The experiments on varying the training sample size demonstrated the great learning capabilities of our model. Every 400 samples added to training resulted in an average MCC score improvement of 19.58%. Furthermore, the dynamic properties of KARTAL enable inferencetime adaption to the application domain, resulting in reduced false positives. / Brutet åtkomstkontroll är den allvarligaste säkerhetsrisken för webbapplikationer enligt Open Worldwide Application Security Project (OWASP). Denna kategori har mycket komplexa sårbarheter såsom Brutet behörighetskontroll på objektnivå (BOLA) och exponering av känslig information. Att hitta sådana kritiska sårbarheter i stora programvarusystem kräver intelligenta och automatiserade verktyg. Senaste tekniken (SOTA)-forskning, inklusive hybridverktyg för säkerhetstestning av applikationer, algoritmiska bruteforcers och artificiell intelligens, har visat stor potential för upptäckt. Trots detta finns det en lucka i forskningen när det gäller tillförlitlig identifiering av logiska och kontextberoende sårbarheter relaterade till Brutet åtkomstkontroll. Vi modellerade problemet som textklassificering och föreslog KARTAL, en ny metod för att upptäcka sårbarheter i webbapplikationer med hjälp av en stor språkmodell (LLM). Den består av 3 komponenter: Fuzzer, Prompter och Detector. Fuzzer ansvarar för att systematiskt samla in applikationsbeteende. Prompter bearbetar data från Fuzzer och formulerar en förfrågan. Slutligen använder Detector en LLM som vi har finjusterat för att upptäcka sårbarheter. I studien undersöker vi prestanda, nyckelfaktorer och begränsningar hos den föreslagna metoden. Vår forskning visar behovet av en märkt dataset för sårbarheter relaterade till Brutet åtkomstkontroll inom cybersäkerhetsområdet. Därför genererar vi anpassade dataset med hjälp av en auto-regressiv LLM med SOTA few-shot-prompting-tekniker. Vi experimenterar med att finjustera 3 typer av endast avkodare transformers som är förtränade för att upptäcka 2 sofistikerade sårbarheter. Vår bästa modell uppnådde en noggrannhet på 87.19% med en F1-poäng på 0.82. Genom att använda hårdvaruacceleration på en bärbar dator för konsumenter kan vår snabbaste modell göra upp till 539 förutsägelser per sekund. Experimenten med varierande storlek på träningsprovet visade på vår modells stora förmåga att lära sig. Varje 400 prover som lades till träningen resulterade i en genomsnittlig förbättring av MCC-poängen med 19.58%. Dessutom möjliggör de dynamiska egenskaperna hos KARTAL anpassning vid inferringstid till applikationsdomänen, vilket resulterar i färre falska positiva resultat.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-337159
Date January 2023
CreatorsSakaoglu, Sinan
PublisherKTH, Skolan för elektroteknik och datavetenskap (EECS)
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-EECS-EX ; 2023:441

Page generated in 0.0029 seconds