Ladybird Browser LibJS Use-After-Free Vulnerability Allowing Remote Code Execution

Vulnerability

A use-after-free vulnerability has been identified in the LibJS component of the Ladybird browser, prior to the commit f5a6704. This vulnerability arises from improper management of memory related to the 'arguments_list' vector, which can be exploited by remote attackers to execute arbitrary code by crafting a malicious JavaScript file. The issue is particularly notable given that Ladybird is in a pre-alpha state, intended only for developers.

Impact

Exploitation of this vulnerability allows for arbitrary code execution on the affected system.

Reproduction

The vulnerability can be reproduced by creating a proxied constructor that manipulates the 'arguments_list' vector, triggering a memory reallocation. This can be done by passing a large number of arguments to the constructor, which causes the JavaScript engine to execute arbitrary code during the prototype retrieval process. The resulting use-after-free condition can then be exploited to execute arbitrary code.

Remediation

Users are advised to update to the latest version of Ladybird Browser, where this vulnerability has been addressed.

Added: Jun 9, 2025, 7:46 PM
Updated: Jun 9, 2025, 7:46 PM

Vulnerability Rating

Custom Algorithm
spread
0.0
impact
7.5
exploitability
7.7
remediation
0.0
relevance
0.0
threat
6.4
urgency
2.9
incentive
0.8

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.