Skip to content

update dependency symfony/cache to ~7.4.0 [SECURITY]#4598

Open
renovate[bot] wants to merge 1 commit into
developfrom
renovate/packagist-symfony-cache-vulnerability
Open

update dependency symfony/cache to ~7.4.0 [SECURITY]#4598
renovate[bot] wants to merge 1 commit into
developfrom
renovate/packagist-symfony-cache-vulnerability

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented May 27, 2026

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
symfony/cache (source) ~7.3.9~7.4.0 age adoption passing confidence

Symfony Vulnerable to SQL Injection in PdoAdapter::doClear() via Unsanitized $prefix

CVE-2026-45073 / GHSA-6qh9-h6wf-jgqc

More information

Details

Description

Symfony\Component\Cache\Adapter\PdoAdapter is the PDO-backed cache adapter. Its clear($prefix) method (inherited from AbstractAdapterTrait) is documented to delete cache items whose key starts with $prefix.

In the non-versioning code path, the caller-supplied $prefix is concatenated into $namespace = $this->namespace.$prefix and passed to PdoAdapter::doClear(), which builds:

DELETE FROM <table> WHERE <id_col> LIKE '<namespace>%'

The value is interpolated directly into the SQL text and executed with PDO::exec(): $namespace is not bound. A caller able to influence $prefix can break out of the literal and inject SQL, expanding deletion scope from the intended prefix to arbitrary rows, or otherwise reshape query semantics.

Most applications don't expose clear($prefix) to untrusted input directly, but the contract of the method is to safely accept any prefix string, so the lack of escaping is a defect of the adapter itself.

Resolution

AbstractAdapterTrait::clear() now rejects any $prefix containing characters outside [-+.A-Za-z0-9]: when an invalid prefix is supplied, the method logs a warning and returns false instead of reaching the SQL layer. This blocks quotes, %, null bytes and other characters that would let an attacker break out of the LIKE literal.

The patch for this issue is available here for branch 5.4.

Credits

Symfony would like to thank secsys_codex for reporting the issue and Nicolas Grekas for fixing it.

Severity

  • CVSS Score: 5.0 / 10 (Medium)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N/E:U

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Release Notes

symfony/cache (symfony/cache)

v7.4.12

Compare Source

Changelog (symfony/cache@v7.4.10...v7.4.12)

v7.4.10

Compare Source

Changelog (symfony/cache@v7.4.9...v7.4.10)

v7.4.9

Compare Source

Changelog (symfony/cache@v7.4.8...v7.4.9)

v7.4.8

Compare Source

Changelog (symfony/cache@v7.4.7...v7.4.8)

v7.4.7

Compare Source

Changelog (symfony/cache@v7.4.6...v7.4.7)

v7.4.6

Compare Source

Changelog (symfony/cache@v7.4.5...v7.4.6)

v7.4.5

Compare Source

Changelog (symfony/cache@v7.4.4...v7.4.5)

v7.4.4

Compare Source

Changelog (symfony/cache@v7.4.3...v7.4.4)

v7.4.3

Compare Source

Changelog (symfony/cache@v7.4.2...v7.4.3)

v7.4.1

Compare Source

Changelog (symfony/cache@v7.4.0...v7.4.1)

v7.4.0

Compare Source


Configuration

📅 Schedule: (in timezone Europe/Rome)

  • Branch creation
    • ""
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies Pull requests that update a dependency file label May 27, 2026
@renovate
Copy link
Copy Markdown
Contributor Author

renovate Bot commented May 27, 2026

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: composer.lock
Command failed: composer update symfony/cache:7.4.12 --with-dependencies --ignore-platform-req=ext-* --ignore-platform-req=lib-* --no-ansi --no-interaction --no-scripts --no-autoloader --no-plugins --minimal-changes
Loading composer repositories with package information
Dependency psr/log is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - phpoffice/phpspreadsheet is locked to version 1.30.4 and an update of this package was not requested.
    - phpoffice/phpspreadsheet 1.30.4 requires php >=7.4.0 <8.5.0 -> your php version (8.5.6) does not satisfy that requirement.


@riccio82 riccio82 requested a review from Ostico June 3, 2026 09:23
@riccio82 riccio82 added the php Pull requests that update Php code label Jun 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file php Pull requests that update Php code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant