cross-origin javascript capability leaks: detection, exploitation and defense

18
Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense By Adam Barth, Joel Weinberger and Dawn Song

Upload: cadee

Post on 22-Feb-2016

53 views

Category:

Documents


0 download

DESCRIPTION

Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense. By Adam Barth, Joel Weinberger and Dawn Song. Overview. Current JavaScript Security Model Cross-Origin JavaScript Capability Leaks Capability Leak Detection Browser Defense Mechanism. The DOM and Access Control. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Cross-Origin JavaScript Capability Leaks: Detection,

Exploitation and DefenseBy Adam Barth, Joel Weinberger and Dawn Song

Page 2: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Current JavaScript Security Model

Cross-Origin JavaScript Capability Leaks

Capability Leak Detection

Browser Defense Mechanism

Overview

Page 3: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

The DOM and Access Control

Page 4: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

The DOM and Access Control

Page 5: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

The JS Engine and Capabilities

Page 6: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

The DOM provides an access control layer

The JavaScript engine treats objects as capabilities

DOM vs JS Engine

Page 7: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Current JavaScript Security Model

Cross-Origin JavaScript Capability Leaks

Capability Leak Detection

Browser Defense Mechanism

Overview

Page 8: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Cross-Context References

Page 9: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Cross-Context References

Page 10: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

DOM meets JS Engine

Page 11: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

DOM meets JS Engine

Page 12: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Current JavaScript Security Model

Cross-Origin JavaScript Capability Leaks

Capability Leak Detection

Browser Defense Mechanism

Overview

Page 13: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

JavaScript Heap Inspection

Page 14: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

In the JavaScript Engine object system

Object creation, destruction and reference

Calls into analysis library

Instrumentation

Page 15: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Computing JavaScript Contexts

Page 16: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Current JavaScript Security Model

Cross-Origin JavaScript Capability Leaks

Capability Leak Detection

Browser Defense Mechanism

Overview

Page 17: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Access Control Checks

Page 18: Cross-Origin JavaScript Capability Leaks: Detection, Exploitation and Defense

Heap Graph Analysis can be used to find vulnerabilities in web browser

Web Browser can provide mechanism to eliminate these vulnerabilities

Heap Graph Tool and Access Control Prototype for WebKit:

Conclusion