Application Sandboxes: A Pen-Tester’s Perspective Rahul Kashyap,
[email protected] Rafal Wojtczuk,
[email protected] 1 Table of Contents 1.0.0 Executive Summary 4 2.0.0 Results Summary 4 3.0.0 Methodology and Techniques Used 4 4.0.0 Introduction 5 4.1.0 What is a Sandbox? 5 4.2.0 Products Tested 6 5.0.0 Windows Architecture Overview 10 5.1.0 Windows Integrity Mechanisms 11 5.2.0 Malware Trends 12 6.0.0 Type A Sandbox 12 6.1.0 Architecture 12 7.0.0 Type B Sandbox 16 7.1.0 Chromium Sandbox Architecture 16 8.0.0 Exploitation 18 8.1.0 Category 1: Vulnerabilities in OS Kernel 18 8.1.1.0 Kernel Exploit 1 19 8.1.1.1 Type A Sandbox 19 8.1.2.0 Kernel Exploit 2 22 8.1.2.1 Type A Sandbox 23 8.1.2.2 Type B Sandbox 24 8.1.3.0 Kernel Exploit 3 25 8.1.3.1 Type A Sandbox 25 8.1.3.2 Type B Sandbox 26 8.1.4.0 Summary 28 8.2.0 Category 2: Vulnerabilities in OS User Mode Components 28 8.2.1 TCP/IP Networking in Sandboxes 28 8.2.1.1 ALPC Ports 29 8.2.2 User Mode Exploit 31 8.2.2.1 Type A Sandbox 31 8.2.2.2 Type B Sandbox 34 8.2.3 Summary 36 8.3.0 Category 3: Sandbox Leakage 37 8.3.1 Webcam Access 37 8.3.2 Screen Scraping 39 8.3.3 Keylogging 40 8.3.4 ClipBoard Hijack 42 8.3.5 Steal Files 44 8.3.6 Network Shares Access 45 8.3.7 Summary 47 8.4.0 Category 4: Sandbox Vulnerabilities 47 8.4.1 Summary 48 8.5.0 A sandbox Inside a Sandbox 48 8.5.1 Type A Sandbox + Type B Sandbox 48 9.0.0 Conclusion 50 10.0.0 Bibliography 51 11.0.0 Appendix A.