Francesco Sattolo
Performance estimation of obfuscated applications with software metrics.
Rel. Cataldo Basile, Daniele Canavese, Leonardo Regano. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2024
|
PDF (Tesi_di_laurea)
- Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives. Download (4MB) | Preview |
Abstract: |
Software companies that develop and distribute any application need to constantly face the challenge of an adversary manipulating it to alter its behavior, stealing intellectual property such as proprietary algorithms and distributing illegal copies. In order to limit the economic losses caused by such malicious activities, various protection techniques were invented to increase the time and cost required by the attackers to succeed. The first line of defense is given by obfuscation techniques, that aim to make reverse engineering the code difficult, at the expense of execution performance. Given the high amount of existing techniques and the challenge of evaluating protection strength and performance overhead, finding the best tradeoff between these two objectives is a complex process. Currently this is done by applying and testing different techniques manually, resulting in long development times or in suboptimal choices. The main goal of this project is to investigate whether machine learning can simplify this process by accurately predicting the performance overhead of an obfuscation technique. This would allow developers to make informed decisions more quickly, reducing the development cost and resulting in a faster and more secure application. The first phase consisted of finding precise ways to measure low-level application performance metrics while minimizing sources of indeterminism. In the second phase, the focus was on collecting static metrics at the code level. A framework was created to collect these static and dynamic metrics before and after applying various obfuscation techniques to functions. The resulting dataset was then used to train machine learning models to predict the performance degradation of applying an obfuscation technique to a given function. |
---|---|
Relatori: | Cataldo Basile, Daniele Canavese, Leonardo Regano |
Anno accademico: | 2023/24 |
Tipo di pubblicazione: | Elettronica |
Numero di pagine: | 94 |
Soggetti: | |
Corso di laurea: | Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering) |
Classe di laurea: | Nuovo ordinamento > Laurea magistrale > LM-32 - INGEGNERIA INFORMATICA |
Aziende collaboratrici: | NON SPECIFICATO |
URI: | http://webthesis.biblio.polito.it/id/eprint/31084 |
Modifica (riservato agli operatori) |