Vulnerability · Published Dec 13, 2024 · Assigned by GitHub_M

CVE-2024-55661Laravel Pulse Allows Remote Code Execution via Unprotected Query Method

High 8.8

In plain English

A high-severity code injection in pulse from laravel. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 30.6% (higher than 98% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)8.8High
Exploit odds (30 days)30.6%top 1.7% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

Laravel Pulse is a real-time application performance monitoring tool and dashboard for Laravel applications. A vulnerability has been discovered in Laravel Pulse prior to version 1.3.1 that could allow remote code execution through the public `remember()` method in the `Laravel\Pulse\Livewire\Concerns\RemembersQueries` trait. This method is accessible via Livewire components and can be exploited to call arbitrary callables within the application. An authenticated user with access to Laravel Pulse dashboard can execute arbitrary code by calling any function or static method in which the callable is a function or static method and the callable has no parameters or no strict parameter types. The vulnerable to component is `remember(callable $query, string $key = '')` method in `Laravel\Pulse\Livewire\Concerns\RemembersQueries`, and the vulnerability affects all Pulse card components that use this trait. Version 1.3.1 contains a patch.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Packagistlaravel/pulse1.3.1GHSA-8vwh-pr89-4mw2

Affected products (as reported)

VendorProductVersions
laravel pulse < 1.3.1

Weakness: CWE-94 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

References