CVE-2026-76214
THREAT INTELLIGENCE REPORT — CVE-2026-76214
Executive Summary
CVE-2026-76214 is a WebAuthn authentication bypass vulnerability affecting phpMyFAQ versions prior to 4.1.7. Due to a persistence flaw in the login challenge handling within the WebAuthn controller, attackers who capture a valid WebAuthn assertion can replay it indefinitely, authenticating as the targeted user without possessing the hardware key or requiring user interaction. The vulnerability carries a CVSS score of 7.4 (High), reflecting the severe confidentiality and integrity impact against exposed authentication interfaces, despite the elevated attack complexity.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Technical Analysis
Vulnerability Mechanism
The root cause lies in the phpMyFAQ WebAuthn login flow. When the prepareForLogin method generates a challenge, the resulting mutated key objects are never persisted back to the database. Both WebAuthn controller paths fail to save these objects after generation. Consequently, when a login attempt occurs, the anti-replay comparison logic encounters a null challenge value in storage — the null guard within the verification routine skips the replay check entirely.
This creates a fundamental flaw in the WebAuthn authentication state machine:
- Challenge generation:
prepareForLogincreates a cryptographic challenge and mutates the key object in memory. - Persistence failure: The mutated key object (containing the challenge) is never written back to the database.
- Verification bypass: At login, the system loads the stale (or absent) challenge value. The null guard in the comparison logic treats a null/missing challenge as "no replay check required," skipping the anti-replay verification.
- Indefinite replay: An attacker who has captured any previously successful WebAuthn assertion can replay it without limitation.
Attack Surface
The attack surface is the WebAuthn login endpoint of any phpMyFAQ installation — typically an exposed web application login page. Since WebAuthn is designed as a passwordless (or second-factor) authentication mechanism, the login flow is accessible over the network.
Notably, the CVSS vector indicates:
- Attack Vector: Network (AV:N) — remotely exploitable
- Attack Complexity: High (AC:H) — requires capturing a valid assertion, which may involve network sniffing or compromising a channel session
- Privileges Required: None (PR:N) — no prior authentication needed
- User Interaction: None (UI:N) — the victim does not need to perform any action after the capture
- Scope: Unchanged (S:U)
- Confidentiality Impact: High (C:H) — full account takeover
- Integrity Impact: High (I:H) — attacker-controlled actions under the victim's identity
- Availability Impact: None (A:N)
Technical Root Cause Summary
The vulnerability is classified under CWE-294 — Authentication Bypass by Capture-replay. This CWE covers scenarios where an attacker captures a valid authentication sequence and replays it to gain unauthorized access. The specific failure here is a state management defect — the WebAuthn challenge state is not persisted, effectively disabling the replay protection that WebAuthn is designed to provide.
Exploitation Scenarios
Important note: No public PoC or exploit code is available. The attack chain described below is inferred from the vulnerability class and the NVD description.
Step 1 — Reconnaissance / Target Identification
The attacker identifies internet-facing phpMyFAQ installations. Since phpMyFAQ is a popular open-source FAQ management system, Shodan queries such as http.title:"phpMyFAQ" or http.favicon.hash:phpmyfaq can be used to enumerate instances. The attacker then fingerprints the version to confirm it is below 4.1.7.
Step 2 — Capturing a Valid WebAuthn Assertion
The attacker must obtain a valid WebAuthn assertion for a target user. Possible capture methods include:
- Network-level interception: If the login session is conducted over an unencrypted or improperly secured channel (e.g., TLS termination at a proxy, man-in-the-middle on plain HTTP), the attacker can sniff the assertion during a legitimate login.
- Compromised client session: If the attacker already has a foothold in the network or on the client machine, they can extract the assertion from the browser or application layer.
- Malicious JavaScript injection: If the attacker can inject script into the page (e.g., via a secondary XSS vector), they can capture the assertion payload.
Step 3 — Replay Attack Execution
Once the attacker possesses a captured assertion:
- Craft the replay request: The attacker replays the captured WebAuthn authentication assertion against the login endpoint.
- Trigger the null-guard bypass: Because the
prepareForLoginchallenge was never persisted, the server-side verification loads a null/missing stored challenge. The null guard in the comparison logic silently skips the anti-replay check. - Authentication success: The assertion is accepted as valid, and the session is authenticated as the target user.
The attacker can repeat this step indefinitely — there is no nonce, timestamp, or counter check to invalidate the replayed assertion.
Step 4 — Post-Exploitation Impact
With an authenticated session as the victim:
- Full access to the phpMyFAQ administration and user areas.
- Ability to view, create, edit, or delete FAQ content (integrity impact).
- Access to any sensitive information stored within the application (confidentiality impact).
- Potential lateral movement if the application environment is integrated with other internal services.
- If the victim has administrative privileges, complete takeover of the phpMyFAQ instance and potentially its host, depending on file-write capabilities or other post-auth vulnerabilities.
Exploitation Difficulty Assessment
The High attack complexity (AC:H) rating reflects the challenge of capturing a valid assertion. However, once captured, the exploitation is trivial — a simple HTTP request replay. The absence of any rate limiting or user interaction requirements post-capture significantly lowers the practical difficulty for a skilled attacker.
Impact Assessment
Business Impact
- Account Takeover: The most severe outcome — an attacker can assume any user's identity, including administrators.
- Data Confidentiality: All content managed by phpMyFAQ — frequently containing internal knowledge bases, product documentation, and potentially sensitive organizational data — becomes accessible to the attacker.
- Data Integrity: An attacker can tamper with FAQ content, potentially injecting malicious links, misinformation, or defacing the organization's public knowledge base.
- Reputational Damage: A public-facing FAQ system is often a demonstration of an organization's security posture. A successful compromise undermines customer trust.
- Compliance Implications: If the data within phpMyFAQ includes regulated information (PII, financial data), the breach may trigger notification obligations.
CVSS Subscore Analysis
The CVSS vector AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N yields a base score of 7.4 (High). Key observations:
- The High confidentiality and integrity scores correctly reflect the total compromise of the WebAuthn authentication boundary.
- The None availability score indicates no direct denial-of-service impact, though an attacker could degrade service by corrupting content.
- The High attack complexity tempers the score from "Critical," acknowledging that capture of a valid assertion requires network positioning or channel compromise.
Affected Systems and Blast Radius
- Directly affected: All phpMyFAQ web servers running versions prior to 4.1.7 with WebAuthn login enabled.
- Indirectly affected: Users who rely on the WebAuthn authentication for their accounts; any downstream systems that trust phpMyFAQ authentication (e.g., SSO integrations).
- Blast radius is contained to the phpMyFAQ application itself, as the vulnerability does not appear to provide code execution or direct server-level compromise. However, post-authentication interactions with the underlying system could broaden impact.
EPSS Context
The EPSS score of 0.00292 (21.3rd percentile) indicates that according to the Exploit Prediction Scoring System, this CVE has a relatively low probability of active exploitation in the wild at the time of scoring. This is consistent with the CISA KEV status of "NO" — there is no confirmed exploitation in the wild. However, given the authentication bypass nature and the availability of Shodan-exposed instances, this assessment should be revisited periodically as the scoring model is probabilistic, not a measure of maximum exploitability.
Detection Guidance
The following detection rules aim to identify exploitation attempts, which manifest as unusual patterns in WebAuthn login requests. Because the replay attack sends an authentication assertion without a preceding valid challenge registration, the key detection objective is identifying successful login events without the corresponding valid challenge issuance — or repeated identical assertion payloads.
Sigma Rule
title: phpMyFAQ WebAuthn Replay Authentication Bypass Attempt
id: 9f8b3c2e-7d4a-4f1b-9e3c-2a6b8d1f4e7a
status: experimental
description: >
Detects suspicious WebAuthn login behavior in phpMyFAQ — repeated
authentication assertions or login requests without a corresponding
valid challenge creation event.
references:
- https://nvd.nist.gov/vuln/detail/CVE-2026-76214
author: vartersit.com Threat Intelligence
date: 2025/06/26
tags:
- attack.t1190
- cve.2026.76214
- cwe.294
logsource:
category: application
product: phpmyfaq
service: webserver
detection:
selection_webauthn:
cs.method: "POST"
cs.uri_query|contains: "webauthn"
selection_repeat:
cs.useragent|endswith:
- "authenticator"
- "FIDO"
cs.session.counter|gte: 5 # multiple login attempts from same session
condition: selection_webauthn and selection_repeat
falsepositives:
- Legitimate users with flaky network connections retrying login
level: high
YARA Rule
rule CVE_2026_76214_WebAuthn_Replay_Detection {
meta:
author = "valtersit.com Threat Intelligence"
description = "Detects WebAuthn assertion payloads potentially used in replay attacks against vulnerable phpMyFAQ instances"
cve = "CVE-2026-76214"
cwe = "294"
severity = "high"
date = "2025-06-26"
strings:
$assertion_keyword = "assertion" ascii nocase
$challenge_keyword = "challenge" ascii nocase
$webauthn_endpoint = "webauthn/login" ascii nocase
$client_data_json = "clientDataJSON" ascii nocase
$authenticator_data = "authenticatorData" ascii nocase
$signature_field = "signature" ascii nocase
$user_handle = "userHandle" ascii nocase
condition:
uint16(0) == 0x3C2F // HTML or text content
and ( $webauthn_endpoint or $assertion_keyword )
and ( $challenge_keyword or $client_data_json or $authenticator_data )
and ( $signature_field or $user_handle )
}
Suricata IDS Rule
alert http any any -> any any (msg:"CVE-2026-76214 Potential phpMyFAQ WebAuthn Replay Attack";
flow:established,to_server;
content:"POST"; http_method;
http_uri; content:"webauthn"; nocase;
content:"assertion"; nocase; http_client_body;
pcre:"/(clientDataJSON|authenticatorData|signature|userHandle)=/i";
http_uri; content:"login"; nocase;
threshold:type both, track by_src, count 5, seconds 300;
metadata:cve 2026-76214;
metadata:created_at 2025-06-26;
sid:10000001; rev:1;)
Elastic Detection
// EQL query to detect repeated WebAuthn authentication attempts
sequence by user.name, source.ip
[ network where network.protocol == "http" and
url.path.contains("webauthn") and
http.request.method == "POST" ] with runs = 5
[ authentication where
authentication.type == "WebAuthn" and
authentication.outcome == "success" ] with maxspan = 10m
Splunk SPL Query
index=web sourcetype=access_combined
| spath input=url
| search url=*webauthn* AND method=POST
| stats count AS attempt_count, dc(clientip) AS src_ips,
values(signature) AS signatures BY user
| where attempt_count > 5
| eval exploit_likelihood = if(attempt_count > 10,
"HIGH - likely replay attempt",
"MEDIUM - investigate anomalous login")
| table _time, user, src_ips, attempt_count, signatures, exploit_likelihood
Wazuh OSSEC Rule
<group name="phpmyfaq,">
<rule id="100012" level="12">
<decoded_as>json</decoded_as>
<field name="url">\.*webauthn.*</field>
<field name="method">POST</field>
<description>CVE-2026-76214: Repeated WebAuthn login attempts - possible replay attack against phpMyFAQ</description>
<mitre>
<id>T1190</id>
</mitre>
<group>authentication,webauthn,cve_2026_76214,</group>
<if_sid>100011</if_sid>
<options>no_full_log</options>
</rule>
</group>
Mitigation & Patch Guidance
Patch Confidence: 3/4 — LIKELY — 2 independent sources (NVD, OSV) confirm the fix.
1) Immediate Mitigations
These are short-term measures to reduce exposure before patching:
- Disable WebAuthn login: If possible, temporarily disable WebAuthn authentication and fall back to traditional password-based authentication with additional protections (e.g., MFA via TOTP).
- Network-level restrictions: Apply egress/ingress filtering or IP-based allowlisting to restrict access to the phpMyFAQ login page. Place the application behind a reverse proxy with rate-limiting.
- TLS enforcement: Ensure TLS is enforced at the application boundary to make network-level capture of assertions more difficult (though this does not fully mitigate the flaw, as the assertion may be captured via other means).
- Session monitoring: Actively monitor authentication logs for anomalies, including repeated identical assertions.
2) Patch / Upgrade Steps
The definitive fix: upgrade to phpMyFAQ 4.1.7 or later.
- Backup the current phpMyFAQ installation (application files and database).
- Download the latest phpMyFAQ release (4.1.7 or newer) from the official vendor distribution channel.
- Review release notes for any database migration or upgrade scripts that need to run.
- Replace the application files with the new version.
- Run the upgrade process per vendor documentation.
- Verify that the WebAuthn login flow now persists the challenge correctly. This can be tested by:
- Authenticating via WebAuthn.
- Immediately replaying the same assertion in a new session.
- The replay should fail on the patched version.
3) Long-Term Hardening
- Stay current: Establish a patch management policy that ensures prompt deployment of phpMyFAQ security updates.
- Defense in depth: Use Web Application Firewall (WAF) rules to enforce strict request validation on authentication endpoints.
- Continuous monitoring: Feed detection rules (Sigma, Suricata, etc., from the Detection Guidance section) into your SIEM and IDS pipelines.
- Security testing: Include phpMyFAQ in regular penetration testing and vulnerability scanning cadence.
- Least privilege: Restrict the phpMyFAQ server's outbound connectivity and file system permissions to limit the impact of any post-exploitation activity.
References
- NVD Entry: https://nvd.nist.gov/vuln/detail/CVE-2026-76214
- OSV Advisory: https://osv.dev/vulnerability/CVE-2026-76214 (lists affected package, current status, and patch details)
- Vendor Homepage: https://www.phpmyfaq.de/ (for official release notes about version 4.1.7 fix)
- CWE-294 Reference: https://cwe.mitre.org/data/definitions/294.html — Authentication Bypass by Capture-replay
- CVSS Calculator: https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Threat Actor Notes: As of this report, there are no known threat actor campaigns exploiting CVE-2026-76214. The CVE is not listed in CISA's Known Exploited Vulnerabilities (KEV) catalog. No exploit code or PoC has been publicly disclosed. The EPSS score (0.00292) indicates a low predicted probability of active exploitation, but this does not diminish the severity for organizations that use WebAuthn in phpMyFAQ — it is likely that stealthy exploitation could go undetected given the silent nature of replay attacks and the absence of built-in logging for assertion replays.
Report generated by vartersit.com Threat Intelligence — 2025-06-26