Advisory Database
  • Advisories
  • Dependency Scanning
  1. composer
  2. ›
  3. spomky-labs/otphp
  4. ›
  5. GHSA-2jx3-65f3-xr8r

GHSA-2jx3-65f3-xr8r: spomky-labs/otphp: Mass-assignment in Factory::loadFromProvisioningUri lets a hostile provisioning URI corrupt OTP state or leak an uncaught TypeError

June 18, 2026

OTPHP\Factory::loadFromProvisioningUri() parses an attacker-supplied otpauth:// URI and forwards every query key to OTP::setParameter($key, $value). setParameter() resolves the name with property_exists($this, $parameter) and performs a dynamic write $this->{$parameter} = $value (src/OTP.php:196-197). Because the query keys are entirely controlled by whoever produced the URI, a URI can target the internal properties of the OTP object that are not meant to be set from a URI: parameters, issuer, label, issuer_included_as_parameter, and (on TOTP) the readonly clock. This is an instance of object property mass-assignment (CWE-915).

References

  • github.com/FriendsOfPHP/security-advisories/blob/master/spomky-labs/otphp/GHSA-2jx3-65f3-xr8r.yaml
  • github.com/Spomky-Labs/otphp/security/advisories/GHSA-2jx3-65f3-xr8r
  • github.com/advisories/GHSA-2jx3-65f3-xr8r

Code Behaviors & Features

Detect and mitigate GHSA-2jx3-65f3-xr8r with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 11.4.3

Fixed versions

  • 11.4.3

Solution

Upgrade to version 11.4.3 or above.

Impact 6.5 MEDIUM

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L

Learn more about CVSS

Weakness

  • CWE-915: Improperly Controlled Modification of Dynamically-Determined Object Attributes

Source file

packagist/spomky-labs/otphp/GHSA-2jx3-65f3-xr8r.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:17:20 +0000.