Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Abhishek Sharma 0017

dblp:52/4917-17 · DBLP profile ↗
← Back
1ranked-venue papers
0as first author
1since 2021 · last 2024
0009-0001-7295-1548ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 1 · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 67% Runtime systems and virtual machines · 33%
Network and information security
1 paper
Systems and software security · 100%

Topics — the 4 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Runtime systems and virtual machines › dynamic compilation
just-in-time compilation
0.812024
Icarus: Trustworthy Just-In-Time Compilers with Symbolic Meta-Execution · SOSP 2024
Compilers and program optimization
verified compilation
0.812024
Icarus: Trustworthy Just-In-Time Compilers with Symbolic Meta-Execution · SOSP 2024
Compilers and program optimization › verified compilation
verified JIT compilation
0.812024
Icarus: Trustworthy Just-In-Time Compilers with Symbolic Meta-Execution · SOSP 2024
Systems and software security
language-based security
0.212024
Icarus: Trustworthy Just-In-Time Compilers with Symbolic Meta-Execution · SOSP 2024

Methods — techniques the papers use, named apart from their topics

symbolic meta-execution · 1.5boogie · 1.5SMT solving · 1.5
YearPublicationVenuePosition
2024 Icarus: Trustworthy Just-In-Time Compilers with Symbolic Meta-Execution
abstract
Just-in-time (JIT) compilers make JavaScript run efficiently by replacing slow JavaScript interpreter code with fast machine code. However, this efficiency comes at a cost: bugs in JIT compilers can completely subvert all language-based (memory) safety guarantees, and thereby introduce catastrophic exploitable vulnerabilities. We present Icarus: a new framework for implementing JIT compilers that are automatically, formally verified to be safe, and which can then be converted to C++ that can be linked into browser runtimes. Crucially, we show how to build a JIT with Icarus such that verifying the JIT implementation statically ensures the security of all possible programs that the JIT could ever generate at run-time, via a novel technique called symbolic meta-execution that encodes the behaviors of all possible JIT-generated programs as a single Boogie meta-program which can be efficiently verified by SMT solvers. We evaluate Icarus by using it to re-implement components of Firefox's JavaScript JIT. We show that Icarus can scale up to expressing complex JITs, quickly detects real-world JIT bugs and verifies fixed versions, and yields C++ code that is as fast as hand-written code.
Naomi Smith, Abhishek Sharma 0017, John Renner, David Thien, Fraser Brown, Hovav Shacham, Ranjit Jhala, Deian Stefan
SOSP2