Mattia Di Leo
Automatic fixing of vulnerabilities: SQL Injection in Java.
Rel. Riccardo Sisto. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2023
|
PDF (Tesi_di_laurea)
- Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives. Download (3MB) | Preview |
Abstract: |
Il presente lavoro di tesi si pone come obiettivo lo sviluppo di un tool che sia in grado di correggere automaticamente le vulnerabilità presenti all'interno del codice sorgente. Lo svilupo di un'applicazione è un'attività molto complessa e che richiede molte risorse. Tra i vari aspetti da tenere in considerazione c'è assolutamente quello delle funzionalità ma non bisogna tralasciare la sicurezza, per quanto un software possa essere performante e innovativo, se non è sicuro tutto il resto del lavoro è vano. Questo aspetto spesso viene sottovalutato, ci si concentra più sulle funzionalità, tralasciando tutta la parte relativa alla cybersecurity per un motivo: il tempo. Innanzitutto sarebbe necessario studiare le basi della programmazione sicura e poi soprattutto le soluzioni proposte spesso sono più difficili da implementare. Il tool sviluppato aiuterà i programmatori facendoli risparmiare tempo prezioso, correggendo automaticamente gli errori presenti nel codice sorgente. Analizzando lo stato dell'arte si è visto come ancora siamo in uno stato embrionale, sono state scartate le AI come ChatGPT per concentrarsi sull’implementazione di un programma non basato su intelligenza artificiale. Si è scelto Java sia come linguaggio di sviluppo ma anche come target, per quanto concerne le vulnerabilità, invece, sono state scelte le SQL injection "vanilla". Dopo aver sviluppato il tool, questo è stato inizialmente testato per capire quanto effettivamente fosse efficace e in grado di correggere. Infine per ottimizzare maggiormente si è deciso di integrarlo con Git, in maniera che alla fine dell’esecuzione i risultati venissero già "pushati" nel repository di Git, sfruttando quest’ultimo per il confronto dei file modificati. |
---|---|
Relators: | Riccardo Sisto |
Academic year: | 2023/24 |
Publication type: | Electronic |
Number of Pages: | 107 |
Subjects: | |
Corso di laurea: | Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering) |
Classe di laurea: | New organization > Master science > LM-32 - COMPUTER SYSTEMS ENGINEERING |
Aziende collaboratrici: | Blue Reply Srl |
URI: | http://webthesis.biblio.polito.it/id/eprint/28533 |
Modify record (reserved for operators) |