A Systematic Approach to Uncover Security Flaws in GUI Logic
- 1 May 2007
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 10816011,p. 71-85
- https://doi.org/10.1109/sp.2007.6
Abstract
To achieve end-to-end security, traditional machine-to-machine security measures are insufficient if the integrity of the human-computer interface is compromised. GUI logic flaws are a category of software vulnerabilities that result from logic bugs in GUI design/implementation. Visual spoofing attacks that exploit these flaws can lure even security- conscious users to perform unintended actions. The focus of this paper is to formulate the problem of GUI logic flaws and to develop a methodology for uncovering them in software implementations. Specifically, based on an in-depth study of key subsets of Internet Explorer (IE) browser source code, we have developed a formal model for the browser GUI logic and have applied formal reasoning to uncover new spoofing scenarios, including nine for status bar spoofing and four for address bar spoofing. The IE development team has confirmed all these scenarios and has fixed most of them in their latest build. Through this work, we demonstrate that a crucial subset of visual spoofing vulnerabilities originate from GUI logic flaws, which have a well-defined mathematical meaning allowing a systematic analysis.Keywords
This publication has 7 references indexed in Scilit:
- Do security toolbars actually prevent phishing attacks?Published by Association for Computing Machinery (ACM) ,2006
- PasspetPublished by Association for Computing Machinery (ACM) ,2006
- The battle against phishingPublished by Association for Computing Machinery (ACM) ,2005
- A prototype B3 trusted X Window SystemPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Maude: specification and programming in rewriting logicTheoretical Computer Science, 2002
- The S LAM projectPublished by Association for Computing Machinery (ACM) ,2002
- Conditional rewriting logic as a unified model of concurrencyTheoretical Computer Science, 1992