chore(deps): update dependency squizlabs/php_codesniffer to v4.0.2 [security] - #85
Merged
Johannestegner merged 1 commit intoAug 8, 2026
Conversation
Johannestegner
deleted the
renovate/packagist-squizlabs-php_codesniffer-vulnerability
branch
August 8, 2026 18:47
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
4.0.1→4.0.2PHP_CodeSniffer gitblame report command injection via crafted filename
CVE-2026-67434 / GHSA-hmqg-cxww-wqhq
More information
Details
Impact
PHP_CodeSniffer versions before v3.13.6 and v4.0.2 contain a command injection vulnerability in the code creating the
Gitblame,HgblameandSvnblamereport(s).As a result, running PHP_CodeSniffer over untrusted files, for example, in a CI pipeline that scans pull requests, or on a developer machine reviewing third-party code, could result in attacker-controlled shell commands being executed when the
Gitblame,HgblameorSvnblamereport(s) would process a file whose name contains shell metacharacters.Fullreport, or any of the other non-*blame reports, are not affected."and;, are not affected.Patched versions
The issue has been fixed in PHP_CodeSniffer v3.13.6 and v4.0.2. We recommend all users upgrade to these versions at their earliest convenience.
Workaround
Users of PHP_CodeSniffer who cannot upgrade immediately should ensure they do not use the
Gitblame,Hgblameor theSvnblamereports when scanning untrusted code.This is especially relevant for CI jobs, pre-commit or review tooling, automated review services, and any service that scans untrusted repositories or uploaded source trees.
Credits
Many thanks to both @Faze-up and @edorian for responsibly disclosing this vulnerability.
How can I report a security bug?
Please report security vulnerabilities privately via the "Security and quality" tab on the PHP_CodeSniffer repository.
Severity
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
PHPCSStandards/PHP_CodeSniffer (squizlabs/php_codesniffer)
v4.0.2: - 2026-08-06Compare Source
This is a security release and all users are advised to update their install(s) as soon as possible.
The security issue only affects users of the
Gitblame,HgblameorSvnblamereport(s).Added
(void)cast. #1325The
T_VOID_CASTtoken has been added to theTokens::CAST_TOKENSarray.suggestsection to thecomposer.jsonfile to inform users about the recommendediconvandpcntlPHP extensions. #1388Changed
libxmlis a required PHP extension. #1409$thisin static closures. #1377WrongOpener*) has been made more informative. #1358. Fixes #1322.PEAR.Functions.FunctionDeclaration#1445CloseBracketLineerror message now exposes 1 data value (previously 0).EmptyLineerror message now exposes 1 data value (previously 0).Indenterror message now exposes 3 data values (previously 2).PSR12.Classes.AnonClassDeclarationandSquiz.Functions.MultiLineFunctionDeclarationsniffs.PSR2.Classes.ClassDeclaration#1446ExtendsLineandImplementsLineerror messages now expose 3 data values (previously 1).SpaceBeforeExtendsandSpaceBeforeImplementserror messages now expose 2 data values (previously 1).PSR12.Classes.AnonClassDeclarationandSquiz.Classes.ClassDeclarationsniffs.PSR2.ControlStructures.SwitchDeclaration#1447defaultNotLowerandcaseNotLowererror messages now expose 3 data values (previously 2).SpaceBeforeColonDEFAULTandSpaceBeforeColonCASEerror messages now expose 1 data value (previously 0).BodyOnNextLineDEFAULTandBodyOnNextLineCASEerror messages now expose 1 data value (previously 0).WrongOpenerdefaultandWrongOpenercaseerror messages now expose 1 data value (previously 0).Squiz.ControlStructures.SwitchDeclaration#1449CaseNotLowerandDefaultNotLowererror messages now expose 3 data values (previously 2).CaseIndentandDefaultIndenterror messages now expose 2 data values (previously 0).SpaceBeforeColonCaseandSpaceBeforeColonDefaulterror messages now expose 1 data value (previously 0).BreakIndenterror message now exposes 1 data value (previously 0).SpacingAfterCaseandSpacingAfterDefaulterror messages now expose 1 data value (previously 0).Squiz.Functions.FunctionDeclarationArgumentSpacing#1452SpaceBeforeEqualserror message now exposes 3 data values (previously 2).SpaceAfterEqualserror message now exposes 3 data values (previously 2).Squiz.Functions.MultiLineFunctionDeclaration#1453FirstParamSpacingandUseFirstParamSpacingerror messages now expose 1 data value (previously 0).OneParamPerLineandUseOneParamPerLineerror messages now expose 1 data value (previously 0).PSR12.Classes.AnonClassDeclarationsniff.Fixed
Gitblame,HgblameorSvnblamereport(s) would process a file whose name contains shell metacharacters. #1473Fullreport, or any of the other non-*blame reports, are not affected.$thisin non-static closures nested in OO methods.phpcbf.Squiz.Functions.MultiLineFunctionDeclarationsniff.Other
5CB4F77.New Contributors
The PHP_CodeSniffer project is happy to welcome the following new contributors:
@bigdevlarry, @Faze-up, @jrchamp, @lazerg, @morozov, @ntdiary, @SAY-5
Statistics
Closed: 10 issues
Merged: 33 pull requests
Follow @phpcs on Mastodon or @PHP_CodeSniffer on X to stay informed.
Please consider funding the PHP_CodeSniffer project. If you already do so: thank you!
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.