Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Attacking Client-Side JIT Compilers

Black Hat via YouTube

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

Reviews

Start your review of Attacking Client-Side JIT Compilers

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.