This thesis presents an in-depth analysis of security mechanisms in Electron-based cross-platform applications, specifically examining how it manages HTTP headers and security mechanisms compared to Google Chrome. The research evaluates Electron's handling of critical headers through both manual testing and the use of the Web Platform Tests (WPT) cross-browser test suite. Special attention is given to vulnerabilities introduced by Electron’s unique architecture, including its use of webviews and local HTML files, which may enable bypasses of standard security protocols. We then explore the implications of local file handling in regards to the fundamental web security notion of an origin, and find that it substantially differs from that of modern browsers. In summary, this study identifies significant security gaps, particularly in how Electron handles CORS, permissions, and origins in local file contexts. These discrepancies can expose Electron applications to cross-origin resource-sharing issues, inconsistencies in cookie handling, and unintended permission granting. This enables a series of significant threats, including allowing third-party web resources to freely navigate through the file system and access sensitive information. In light of these findings, we advocate for implementing stricter default security settings in Electron to better protect applications and their users.
La seguente tesi presenta un'analisi dettagliata dei meccanismi di sicurezza di applicazioni cross-platform sviluppate in Electron, in particolare esaminando come vengono gestiti gli header HTTP e altri meccanismi di sicurezza rispetto a Google Chrome. La ricerca valuta come Electron gestisce gli header HTTP attraverso una fase di test sviluppati manualmente, e successivamente attraverso l'utilizzo della test suite cross-browser Web Platform Tests (WPT). Particolare attenzione é stata posta alle vulnerabilità introdotte dall'architettura unica di Electron, includendo l'utilizzo di webviews e file HTML locali, che consentono di evitare protocolli standard di sicurezza. Successivamente esploreremo le implicazioni dell'utilizzo di file locali circa la nozione di origine nell'ambito della sicurezza web, dimostrando che differisce da quella fornita dai browser moderni. In breve, questo studio identifica importanti mancanze di sicurezza, in particolare riguardanti come Electron gestisce CORS, permessi, e l'origine nel contesto di file locali. Queste discrepanze possono esporre applicazioni Electron a problemi inerenti la condivisone di risorse in un contesto cross-origin, inconsistenze nella gestione dei cookie, e approvazione intenzionale dei permessi. Questo porta ad una serie di minacce significanti, come il consentire a risorse di terze parti di navigare liberamente attraverso il file system ed accedere a informazioni sensibili. In luce di questi ritrovamenti, sosteniamo un'implementazione piú restrittiva delle impostazioni di sicurezza di default in Electron, per garantire maggiore sicurezza nelle applicazioni e per gli utenti.
Differential security analysis of cross-platform electron applications
Paloscia, Claudio
2023/2024
Abstract
This thesis presents an in-depth analysis of security mechanisms in Electron-based cross-platform applications, specifically examining how it manages HTTP headers and security mechanisms compared to Google Chrome. The research evaluates Electron's handling of critical headers through both manual testing and the use of the Web Platform Tests (WPT) cross-browser test suite. Special attention is given to vulnerabilities introduced by Electron’s unique architecture, including its use of webviews and local HTML files, which may enable bypasses of standard security protocols. We then explore the implications of local file handling in regards to the fundamental web security notion of an origin, and find that it substantially differs from that of modern browsers. In summary, this study identifies significant security gaps, particularly in how Electron handles CORS, permissions, and origins in local file contexts. These discrepancies can expose Electron applications to cross-origin resource-sharing issues, inconsistencies in cookie handling, and unintended permission granting. This enables a series of significant threats, including allowing third-party web resources to freely navigate through the file system and access sensitive information. In light of these findings, we advocate for implementing stricter default security settings in Electron to better protect applications and their users.File | Dimensione | Formato | |
---|---|---|---|
2024_12_Paloscia_Executive_Summary_02.pdf
non accessibile
Descrizione: Executive Summary
Dimensione
692 kB
Formato
Adobe PDF
|
692 kB | Adobe PDF | Visualizza/Apri |
2024_12_Paloscia_Tesi_01.pdf
non accessibile
Descrizione: Tesi
Dimensione
1.87 MB
Formato
Adobe PDF
|
1.87 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/229979