PhpmyfaqApplication

CVE-2025-59943

CRITICAL · 9.8 CVSS v3.1 Published 2025-10-03
Patch available
A vendor patch is available. No clean upgrade release — apply the published patch.
See remediation →
100/100
Remediation priority · Urgent
Public exploit Remotely reachable No privileges Zero-click Patch available

Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.

NVD · unedited
phpMyFAQ is an open source FAQ web application. Versions 4.0-nightly-2025-10-03 and below do not enforce uniqueness of email addresses during user registration. This allows multiple distinct accounts to be created with the same email. Because email is often used as an identifier for password resets, notifications, and administrative actions, this flaw can cause account ambiguity and, in certain configurations, may lead to privilege escalation or account takeover. This issue is fixed in version 4.0.13.

Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.

dbcve analysis · high confidence

phpMyFAQ versions 4.0-nightly-2025-10-03 and below fail to enforce email uniqueness during user registration, allowing multiple accounts to share the same email address. This creates account ambiguity and enables account takeover in certain configurations where email serves as the identity for password resets and administrative actions.

MitigationUpgrade phpMyFAQ to version 4.0.13 or later to obtain the patch that enforces email uniqueness. Alternatively, implement application-level validation and database constraints to prevent duplicate email registrations.

Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.

Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.

NVD · CPE data
PhpmyfaqApplication
Affected:= 4.0.7

CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.

From the vector
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

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

Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.

dbcve checks

Work through these to decide whether this CVE applies to you.

  1. Check installed phpMyFAQ version
    Locate the version file (typically VERSION or src/phpMyFAQ.VERSION in the installation directory) or access Admin > System > Configuration to view the version number
    Affected if The installed version is 4.0.7 or any version up to and including 4.0-nightly-2025-10-03 (nightly builds)
  2. Verify email uniqueness enforcement in registration
    Review the user registration code in src/phpMyFAQ/User.php or src/phpMyFAQ/Api/Api.php to confirm whether the registration endpoint checks for existing emails before creating a new account
    Affected if The registration code lacks a database query to check if the submitted email already exists in the users table before insertion
  3. Query database for duplicate user emails
    Run a SQL query on the database (typically in the faquser or similar users table) using: SELECT email, COUNT(*) as cnt FROM faquser GROUP BY email HAVING cnt > 1
    Affected if The query returns any rows, indicating multiple user accounts share the same email address
  4. Check for duplicate admin or privileged user emails
    Run: SELECT email, COUNT(*) as cnt FROM faquser WHERE status = 'admin' OR status = 'protected' GROUP BY email HAVING cnt > 1
    Affected if The query returns rows, showing duplicate emails exist among administrative or protected accounts

You are affected if running phpMyFAQ 4.0.7 or earlier AND either the registration code lacks email uniqueness checks OR the database contains duplicate email entries in the user tables.

Generated from the published advisory. Verify against your own configuration.

Check your environment

Paste your version and any relevant configuration and it will be compared against the affected criteria above. Do not include secrets or credentials.

AI-assisted, checked against the advisory. Informational, not a guarantee.

Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.

dbcve · scoped
Patch available Apply the vendor patch
Vendor patch github.com →
Interim mitigation

Upgrade phpMyFAQ to version 4.0.13 or later to obtain the patch that enforces email uniqueness. Alternatively, implement application-level validation and database constraints to prevent duplicate email registrations.

Recommended fix High confidence

Upgrade to phpMyFAQ version 4.0.13

  1. 1. Backup the current phpMyFAQ database and all application files
  2. 2. Download phpMyFAQ version 4.0.13 from the official source (https://www.phpmyfaq.de/)
  3. 3. Extract the new version files to a temporary location
  4. 4. Replace the existing phpMyFAQ installation files with the new version 4.0.13 files, preserving configuration if needed
  5. 5. Run any database migration scripts included in the upgrade
  6. 6. Clear any application caches if applicable
  7. 7. Verify the fix by attempting to register two test accounts with the same email address - the second registration should be rejected
Caveat Review the changelog between 4.0.7 and 4.0.13 for any configuration or feature changes that may affect your setup

Generated from the published advisory — verify against the referenced sources before acting.

Fix this in Phpmyfaq Scoped from the published advisory
  • Consultation2.0 h
  • Implementation4.0 h
  • Testing2.0 h
  • Review / QA1.0 h
9.0 hours of engineering $1,600
Get the patch applied

An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $2,560.

Scan for this in your stack

Free · runs locally
dbcve dependency scanner

Check whether your project pulls in CVE-2025-59943 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.

References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.

Primary sources

Practitioner notes

Contributed

Peer-ranked notes from engineers who’ve handled CVE-2025-59943 in production — separate from our analysis above.

No notes yet

Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.

What this is

A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.

What belongs here
  • Verified mitigations, workarounds, and config changes
  • Version or environment caveats, and links to real fixes
  • No weaponised exploit code, or anything meant to cause harm
  • No spam, self-promotion, credentials, or personal data