Browser cross-origin timing attacks
Loading...
URL
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu |
Master's thesis
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
Date
2016-12-12
Department
Major/Subject
Ohjelmistotekniikka
Mcode
SCI3042
Degree programme
Master’s Programme in Computer, Communication and Information Sciences
Language
en
Pages
75
Series
Abstract
Web browsers are an integral part of people's everyday life. The browser is required to manage high privacy tasks, including bank account management, examination of patient records, and all the small and large aspects of life in the form of email and social media. Web page environment develops in a continuously more diverse path, which broadens the browser attack surface and makes protecting browser from security vulnerabilities more challenging. One challenging feature is that a page is allowed to include third-party documents into the page content. A web browser prevents this page from reading the actual content of those third-party inclusions. However, cross-origin inclusion support induces security issues relating to hidden channels. One family of those issues is formed by cross-origin timing attacks. This master's thesis describes an attack method where a malicious page steals sensitive secrets from third-party pages. The attack abuses search functionality by triggering browser to perform multiple third-party loads to a targeted search engine, which in specific situations leaks sensitive cross-domain information via timings. We perform a practical attack, where a page controlled by the attacker manages to reveal email content from a simulated web mail service. In addition to this, we introduce a measurement tool, which is built to simplify the process of revealing and fixing those vulnerable web services. Furthermore, we bring out a security issue affecting Mozilla Firefox browser, which I found during writing this thesis. This vulnerability CVE-2016-2830 is a high level security finding approved by Mozilla. The vulnerability enables a web page to perform new requests even after an attacking page has been closed. This makes it possible to perform Cross-Site Request Forgery (\textit{CSRF}) attacks for a much longer time from the closed page.Verkkoselaimella käsitellään yhä arkaluontoisempia ja luottamuksellisempia tietoja. Selaimet suorittavat käsittelemäänsä sisältöä ja ovat siten tekemisissä henkilöiden arkipäiväisissä tai tietosuojaa edellyttävissä asioissa, kuten pankkitilin hallinnoinnissa, potilastietojen tarkastelussa ja vaikkapa sähköpostin ja sosiaalisten sivustojen kautta koko elämän pienissä yksityiskohdissa. Verkkosivujen sisältö ja rakenne kehittyvät yhä entistä monipuolisemmiksi, mikä laajentaa selaimeen kohdistuvaa hyökkäyspinta-alaa, ja tekee suojautumisesta haastavampaa. Eräs haasteita aiheuttava ominaisuus on selaimen mahdollisuus liittää sivustoon kolmannen osapuolen sisältöä. Selain estää teknisesti liittävää sivustoa lukemasta liittämäänsä sisältöä suoraan, mutta tämä mahdollisuus sisällyttää kolmannen osapuolen sisältöä sivuille aiheuttaa haasteita tietoturvassa syntyvien piilokanavahaavoittuvuuksien muodossa. Tähän hyökkäyskategoriaan kuuluu tutkimani selaimen sivulatauksia hyödyntävät aikahyökkäykset. Tämä työ esittelee hyökkäystavan, jolla pahantahtoinen verkkosivu voi sisältöä lataavalla aikahyökkäyksellä tietyissä olosuhteissa paljastaa kokonaisia mielivaltaisia merkkijonoja kohdesivustolta hyödyntäen sivuston hakutoiminnallisuutta näkemättä hakutuloksia. Tässä esiteltävässä käytännön kokeessa hyökkäävä sivusto onnistuu varastamaan simuloidusta sähköpostista viestin sisältöä. Työssä on tuotettu mittaustyökalu, jolla sivustot, jotka ovat alttiita kyseiselle hyökkäykselle, ovat helpommin testattavissa ja siten korjattavissa. Tässä työssä julkaistaan myös Mozilla Firefox -selaimesta työn aikana löytämäni haavoittuvuus CVE-2016-2830, jonka Mozilla luokitteli korkean tietoturvatason haavoittuvuudeksi. Haavoittuvuus mahdollistaa sivuston luoda uusia verkkoyhteyksiä mielivaltaisiin verkkoresursseihin, vaikka selain olisi jo hyökkäävältä sivustolta aikaa sitten poistunut. Tämä mahdollistaa siten \textit{CSRF}-hyökkäyksen (Cross-Site Request Forgery) suljetulta sivustolta.Description
Supervisor
Hirvisalo, VesaThesis advisor
Hanhirova, JussiKeywords
timing attacks, exploiting cross-site search page, attack method, browser