{"id":"CVE-2026-117470","aliases":["EUVD-2026-110604","GHSA-3gq2-hx4p-69qc"],"status":"published","title":"WebAuthn assertion replay permits second-factor bypass in Psono Server","description":"Psono Server CE \u0026 EE versions 3.1.0 through 7.2.3 did not consume a stored WebAuthn challenge after assertion verification. An unauthenticated remote attacker who possessed the user's password and one captured valid WebAuthn assertion could replay that assertion with separate login tokens while the stored challenge remained unchanged, bypassing the WebAuthn second factor. The attack required capture of a valid assertion and did not itself disclose plaintext secrets.","severity":{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00408,"percentile":0.35602,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-294"],"published":"2026-10-27T05:53:41Z","modified":"2026-11-04T15:01:28Z","products":[{"vendor":"esaqa gmbh","product":"psono"}],"references":[{"url":"https://gitlab.com/esaqa/esaqa/security-advisories/-/blob/master/advisories/CVE-2026-117470.md","tags":["vendor-advisory","advisory"]},{"url":"https://gitlab.com/esaqa/psono/psono-server/-/blob/v7.2.3/psono/restapi/serializers/webauthn_verify.py","tags":["technical-description","article"]},{"url":"https://gitlab.com/esaqa/psono/psono-server/-/commit/9c9a7f1701535df63370340dcc80210737dc495d","tags":["patch","fix"]},{"url":"https://gitlab.com/esaqa/psono/psono-server/-/releases/v7.2.4","tags":["release-notes","advisory"]},{"url":"https://gitlab.com/esaqa/psono/psono-server","tags":["product","package"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-117470","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-3gq2-hx4p-69qc"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/117xxx/CVE-2026-117470.json","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2026-117470","title":"WebAuthn assertion replay permits second-factor bypass in Psono Server","description":"Psono Server CE \u0026 EE versions 3.1.0 through 7.2.3 did not consume a stored WebAuthn challenge after assertion verification. An unauthenticated remote attacker who possessed the user's password and one captured valid WebAuthn assertion could replay that assertion with separate login tokens while the stored challenge remained unchanged, bypassing the WebAuthn second factor. The attack required capture of a valid assertion and did not itself disclose plaintext secrets.","status":"published","published":"2026-10-27T05:53:41.709Z","modified":"2026-11-04T15:01:28.29Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-294"],"updated_at":"2026-11-04T16:33:47.459854Z"}],"euvd":[{"id":"EUVD-2026-110604","description":"Psono Server CE \u0026 EE versions 3.1.0 through 7.2.3 did not consume a stored WebAuthn challenge after assertion verification. An unauthenticated remote attacker who possessed the user's password and one captured valid WebAuthn assertion could replay that assertion with separate login tokens while the stored challenge remained unchanged, bypassing the WebAuthn second factor. The attack required capture of a valid assertion and did not itself disclose plaintext secrets.","status":"published","published":"2026-10-27T05:53:41Z","modified":"2026-11-04T15:01:28Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N","level":"medium"}],"updated_at":"2026-11-04T16:10:35.925015Z"}],"ghsa":[{"id":"GHSA-3gq2-hx4p-69qc","title":"Psono Server CE \u0026 EE versions 3.1.0 through 7.2.3 did not consume a stored WebAuthn challenge...","description":"Psono Server CE \u0026 EE versions 3.1.0 through 7.2.3 did not consume a stored WebAuthn challenge after assertion verification. An unauthenticated remote attacker who possessed the user's password and one captured valid WebAuthn assertion could replay that assertion with separate login tokens while the stored challenge remained unchanged, bypassing the WebAuthn second factor. The attack required capture of a valid assertion and did not itself disclose plaintext secrets.","status":"published","published":"2026-10-27T06:31:23Z","modified":"2026-10-27T06:31:29Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N","level":"medium"}],"cwes":["CWE-294"],"updated_at":"2026-11-02T15:14:28.078787Z"}],"nvd":[{"id":"CVE-2026-117470","description":"Psono Server CE \u0026 EE versions 3.1.0 through 7.2.3 did not consume a stored WebAuthn challenge after assertion verification. An unauthenticated remote attacker who possessed the user's password and one captured valid WebAuthn assertion could replay that assertion with separate login tokens while the stored challenge remained unchanged, bypassing the WebAuthn second factor. The attack required capture of a valid assertion and did not itself disclose plaintext secrets.","status":"published","published":"2026-10-27T06:17:24.867Z","modified":"2026-11-04T15:17:37.617Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-294"],"updated_at":"2026-11-04T18:06:23.753671Z"}],"osv":[{"id":"CVE-2026-117470","title":"WebAuthn assertion replay permits second-factor bypass in Psono Server","description":"Psono Server CE \u0026 EE versions 3.1.0 through 7.2.3 did not consume a stored WebAuthn challenge after assertion verification. An unauthenticated remote attacker who possessed the user's password and one captured valid WebAuthn assertion could replay that assertion with separate login tokens while the stored challenge remained unchanged, bypassing the WebAuthn second factor. The attack required capture of a valid assertion and did not itself disclose plaintext secrets.","status":"published","published":"2026-10-27T05:53:41.709Z","modified":"2026-11-05T21:15:33.927941488Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N","level":"medium"}],"cwes":["CWE-294"],"updated_at":"2026-11-05T22:01:21.792402Z"}]}}
