YoVDO

Attacking Client-Side JIT Compilers

Offered By: Black Hat via YouTube

Tags

Black Hat Courses Cybersecurity Courses Javascript Courses Compilers Courses Browser Security Courses

Course Description

Overview

Explore the security aspects of JavaScript JIT compilers in this Black Hat conference talk. Delve into the challenges faced by these compilers and the solutions implemented by prominent engines. Examine JavaScript values, type information, speculation guards, and the JIT compiler pipeline. Investigate bug categories, optimization techniques, and potential vulnerabilities. Learn about shape guards, arrays, objects, and abstract interpretation. Analyze practical examples and demonstrations, including a calculator exploit. Gain insights into new trends in browser exploitation and understand the implications for client-side security.

Syllabus

Intro
JavaScript Values
JIT Compilers
JavaScript
Type Information
Example
Speculation Guards
Speculation All
JIT Compiler Pipeline
Summary
Bug Categories
Lowpass handlers
Takeaway
Optimization
Optimizations
bounds checking
check bounced
range analysis
speed analysis
bounce check
what could go wrong
NVH
Exploit
More examples
What is redundancy
How would you do this
The function
Shape guards
Arrays
Objects
Pseudocode
Abstract Interpreter
CreateThis
Graph Building
Check Hoisting
Demo
Calculator
KXTed
Conclusion


Taught by

Black Hat

Related Courses

Attack on Titan M, Reloaded - Vulnerability Research on a Modern Security Chip
Black Hat via YouTube
Attacks From a New Front Door in 4G & 5G Mobile Networks
Black Hat via YouTube
AAD Joined Machines - The New Lateral Movement
Black Hat via YouTube
Better Privacy Through Offense - How to Build a Privacy Red Team
Black Hat via YouTube
Whip the Whisperer - Simulating Side Channel Leakage
Black Hat via YouTube