CVE-2026-61701: Laravel MagicLink: Insecure Deserialization of MagicLink Actions Leads to Remote Code Execution

Published Sep 14, 2026
·
Updated

Laravel MagicLink creates links for authentication without a password or for accessing private content. From 2.0.0 until 2.25.1, MagicLink stores serialized action objects in the magiclinks.action database column and deserializes them through src/MagicLink.php and src/Actions/ResponseAction.php without sufficient integrity protection, while an unsafe legacy unserialize() fallback remains reachable. An attacker who can manipulate database records, such as through a separate SQL injection or compromised administrative access, can insert a malicious serialized object graph containing executable closure behavior; visiting the associated magic link then deserializes the record and can execute arbitrary code in the application process. The affected path is restricted to manipulated action records and does not independently provide database-write access. This issue is fixed in version 2.25.1.

Affected Software

1 affected component
Laravel MagicLink>=2.0.0<2.25.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 2.25.1

Event History

Sep 14, 2026
CVE Published
via MITRE·04:04 PM
Data Sourced
via MITRE·04:04 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Who is exposed to exploitation?

Applications using Laravel MagicLink versions 2.0.0 through 2.25.1 are affected if an attacker can manipulate records in the magic_links.action database column and cause a corresponding magic link to be visited.

2

What access does an attacker need to trigger code execution?

The issue does not itself grant database-write access. An attacker needs a separate way to alter MagicLink action records, such as SQL injection or compromised administrative access, and must insert a malicious serialized object graph into an associated record.

3

How can I determine whether my application is affected?

Check whether Laravel MagicLink is installed at a version from 2.0.0 through 2.25.1 and whether magic link action records could have been modified through database compromise, SQL injection, or administrative-account compromise. The vulnerable data is stored in the magic_links.action column.

4

What is the available remediation?

Upgrade Laravel MagicLink to version 2.25.1, which fixes the issue. Also investigate and remove any paths that could allow unauthorized modification of magic_links records.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203