Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. DUMPLING: Fine-grained Differential JavaScript Engine Fuzzing
 
conference paper

DUMPLING: Fine-grained Differential JavaScript Engine Fuzzing

Wachter, Liam
•
Gremminger, Julian
•
Wressnegger, Christian
Show more
2025
Proceedings 2025 Network and Distributed System Security Symposium
Network and Distributed System Security Symposium 2025

Web browsers are ubiquitous and execute untrusted JavaScript (JS) code. JS engines optimize frequently executed code through just-in-time (JIT) compilation. Subtly conflicting assumptions between optimizations frequently result in JS engine vulnerabilities. Attackers can take advantage of such diverging assumptions and use the flexibility of JS to craft exploits that produce a miscalculation, remove bounds checks in JIT compiled code, and ultimately gain arbitrary code execution. Classical fuzzing approaches for JS engines only detect bugs if the engine crashes or a runtime assertion fails. Differential fuzzing can compare interpreted code against optimized JIT compiled code to detect differences in execution. Recent approaches probe the execution states of JS programs through ad-hoc JS functions that read the value of variables at runtime. However, these approaches have limited capabilities to detect diverging executions and inhibit optimizations during JIT compilation, thus leaving JS engines under-tested.

We propose DUMPLING, a differential fuzzer that compares the full state of optimized and unoptimized execution for arbitrary JS programs. Instead of instrumenting the JS input, DUMPLING instruments the JS engine itself, enabling deep and precise introspection. These extracted fine-grained execution states, coined as (frame) dumps, are extracted at a high frequency even in the middle of JIT compiled functions. DUMPLING finds eight new bugs in the thoroughly tested V8 engine, where previous differential fuzzing approaches struggled to discover new bugs. We receive $11,000 from Google’s Vulnerability Rewards Program for reporting the vulnerabilities found by DUMPLING.

  • Details
  • Metrics
Type
conference paper
DOI
10.14722/ndss.2025.241411
Author(s)
Wachter, Liam
Gremminger, Julian
Wressnegger, Christian
Payer, Mathias  

École Polytechnique Fédérale de Lausanne

Toffalini, Flavio
Date Issued

2025

Publisher

Internet Society

Publisher place

Reston, VA

Published in
Proceedings 2025 Network and Distributed System Security Symposium
URL

Video

https://youtu.be/SXrjuJxi32I
Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
HEXHIVE  
Event nameEvent acronymEvent placeEvent date
Network and Distributed System Security Symposium 2025

NDSS 2025

San Diego, CA, USA

2025-02-24 - 2025-02-28

Available on Infoscience
January 9, 2026
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/257744
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés