CVE-2026-54713: CakePHP Queue: Incomplete Comparison in getUniqueId vulnerable to collisions

Published Aug 27, 2026
·
Updated

Impact

For jobs with shouldBeUnique = true the queue plugin will generate a 'unique identifier' based on the job class, method and parameters. If user data is supplied, a malicious user could create collisions, resulting in legitimate jobs being dropped.

Patches Upgrade to 2.3.1

Workarounds

You can disable shouldBeUnique and handle idempotency in application code.

Other sources

CakePHP Queue is a queue-interop compatible queueing library. From 0.1.11 until 2.3.1, QueueManager::getUniqueId() generates identifiers for jobs with shouldBeUnique enabled from the job class, method, and parameters, but sorting parameter values drops associative-array keys. An unauthenticated attacker who can influence job parameters can submit semantically different data that produces the same identifier, resulting in legitimate jobs dropped as duplicate collisions. This issue is fixed in version 2.3.1.

MITRE

Affected Software

1 affected componentFixes available
composer/cakephp/queue>=0.1.10<2.3.1
2.3.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade composer/cakephp/queue to a version that resolves this vulnerability.

    Fixed in 2.3.1
  2. Upgrade

    Upgrade CakePHP Queue to a version that resolves this vulnerability.

    Fixed in 2.3.1
  3. Configuration

    Disable shouldBeUnique so the queue does not rely on getUniqueId() for de-duplication collisions; handle idempotency in application code instead.

    CakePHP Queue plugin shouldBeUnique = false

Event History

Aug 27, 2026
CVE Published
via MITRE·05:03 PM
Data Sourced
via MITRE·05:03 PM
DescriptionSeverityWeakness
Advisory Published
via GitHub·05:03 PM
Data Sourced
via GitHub·05:03 PM
DescriptionSeverityWeaknessAffected Software
Data Sourced
via NVD·08:17 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which applications are exposed to job loss from this issue?

Applications using the CakePHP queue plugin with jobs configured with shouldBeUnique = true are exposed when user-controlled data is included in the job parameters used to generate the unique identifier.

2

What must an attacker do to exploit the issue?

An attacker must be able to supply data that becomes part of a unique job's parameters and craft it to collide with the identifier of a legitimate job. A successful collision can cause the legitimate job to be dropped.

3

Does exploitation require authentication or user interaction?

The supplied vector indicates network reachability, no required privileges, and no user interaction. Exploitation is rated high complexity.

4

What should teams do if they cannot upgrade immediately?

Disable shouldBeUnique and implement idempotency handling in application code. The available patch is an upgrade to version 2.3.1.

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