A Nitpicker's guide to a minimal-complexity secure GUI

Norman Feske
Technische Universität Dresden
Germany

Christian Helmuth
Technische Universität Dresden
Germany

Malware such as Trojan Horses and spyware remain to be persistent security threats that exploit the overly complex graphical user interfaces of today's commodity operating systems. In this paper, we present the design and implementation of Nitpicker---an extremely minimized secure graphical user interface that addresses these problems while retaining compatibiliy to legacy operating systems. We describe our approach of kernelizing the window server and present the deployed security mechanisms and protocols. Our implementation comprises only 1,500 lines of code while supporting commodity software such as X11 applications alongside protected graphical security applications. We discuss key techniques such as client-side window handling, a new floating-labels mechanism, drag-and-drop, and denial-of-service-preventing resource management. Furthermore, we present an application scenario to evaluate the feasibility, performance, and usability of our approach.

Keywords: trusted computing base, graphical user interface, legacy software, malware

Read Paper Read Paper (in PDF)