CWE-294
AllowedAuthentication Bypass by Capture-replay
Abstraction: Base · Status: Incomplete
A capture-replay flaw exists when the design of the product makes it possible for a malicious user to sniff network traffic and bypass authentication by replaying it to the server in question to the same effect as the original message (or with minor changes).
342 vulnerabilities reference this CWE, most recent first.
GHSA-RQG8-XJP2-PG9W
Vulnerability from github – Published: 2022-05-24 16:48 – Updated: 2024-09-30 16:45LinOTP is prone to a replay attack with activated automatic resynchronization. This vulnerability may allow an attacker to successfully log in with OTP values recorded at a previous point in time.
This attack is only possible if automatic resynchronization is enabled for the TOTP token type. The automatic resynchronization is deactivated by default. All other tokens are unaffected.
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "LinOTP"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.11.1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2019-12887"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": true,
"github_reviewed_at": "2024-04-29T09:47:34Z",
"nvd_published_at": "2019-06-27T14:15:00Z",
"severity": "CRITICAL"
},
"details": "LinOTP is prone to a replay attack with activated automatic resynchronization. This vulnerability may allow an attacker to successfully log in with OTP values recorded at a previous point in time.\n\nThis attack is only possible if automatic resynchronization is enabled for the TOTP token type. The automatic resynchronization is deactivated by default. All other tokens are unaffected.",
"id": "GHSA-rqg8-xjp2-pg9w",
"modified": "2024-09-30T16:45:35Z",
"published": "2022-05-24T16:48:44Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-12887"
},
{
"type": "WEB",
"url": "https://github.com/LinOTP/LinOTP/commit/6d28d93af59d2ce0d844a6a3282148064efc6ad8"
},
{
"type": "PACKAGE",
"url": "https://github.com/LinOTP/LinOTP"
},
{
"type": "WEB",
"url": "https://github.com/pypa/advisory-database/tree/main/vulns/linotp/PYSEC-2019-103.yaml"
},
{
"type": "WEB",
"url": "https://linotp.org/linotp-hotfix-autoresync.html"
},
{
"type": "WEB",
"url": "https://www.linotp.org/CVE-2019-12887.txt"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
},
{
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N",
"type": "CVSS_V4"
}
],
"summary": "LinOTP replay vulnerability with auto resynchronization enabled for TOTP token"
}
GHSA-RW3P-8PM8-F7WF
Vulnerability from github – Published: 2022-05-13 01:19 – Updated: 2022-05-13 01:19A replay issue was discovered on Neato Botvac Connected 2.2.0 devices. Manual control mode requires authentication, but once recorded, the authentication (always transmitted in cleartext) can be replayed to /bin/webserver on port 8081. There are no nonces, and timestamps are not checked at all.
{
"affected": [],
"aliases": [
"CVE-2018-17176"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2018-09-18T18:29:00Z",
"severity": "HIGH"
},
"details": "A replay issue was discovered on Neato Botvac Connected 2.2.0 devices. Manual control mode requires authentication, but once recorded, the authentication (always transmitted in cleartext) can be replayed to /bin/webserver on port 8081. There are no nonces, and timestamps are not checked at all.",
"id": "GHSA-rw3p-8pm8-f7wf",
"modified": "2022-05-13T01:19:24Z",
"published": "2022-05-13T01:19:24Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2018-17176"
},
{
"type": "WEB",
"url": "https://media.ccc.de/v/2018-124-pinky-brain-are-taking-over-the-world-with-vacuum-cleaners"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-V2JF-442R-6MJH
Vulnerability from github – Published: 2026-06-26 21:01 – Updated: 2026-06-26 21:01internal/api/pop/nonce.go:25,40,86 + internal/api/server.go:38 — the signed-poll nonce cache is an in-process LRU sized at 65,536 entries. internal/api/updates.go:31 sets pollClockSkew = 5 * time.Minute as the replay window.
Affected
All released versions through v0.3.0 that have shipped the ADR 0004 signed-poll path. (If this is gated behind a feature flag, on a side branch, or not yet on a release tag, please flag — this advisory may not apply to the released artifact yet.)
Threat model
A captured signed-poll request can be replayed:
- After any process restart — the in-memory LRU is wiped, so the original nonce becomes "unseen" again. Replay succeeds if the original timestamp is still within the 5-minute skew.
- After forced eviction — an attacker with control of any single host can flood >65,536 nonces under their own host_id, driving the global LRU to evict the victim's recorded nonce. Replay then succeeds.
Impact is bounded: a replayed poll fetches the /api/v1/agent/updates body. That body can include a freshly-minted enrollment token if a rekey is pending (updates.go:249-260) — at which point the attacker holds a single-use token they can redeem under their own keypair.
Suggested fix
Two options, either acceptable:
- Persist nonces in SQLite keyed by
(host_id, nonce)withON CONFLICT DO NOTHING, retained for the timestamp-skew window. Adds one transactional INSERT per poll; bounded by the skew window (~5 min worth of rows server-wide). - Per-host cap on the LRU instead of a global 65k cap, so one host cannot evict another's records. Combined with shorter skew (≤30s) to bound the post-restart replay window.
Option 1 is more robust; option 2 is lower-implementation-effort.
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 0.3.3"
},
"package": {
"ecosystem": "Go",
"name": "github.com/juev/nebula-mesh"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "0.3.4"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": true,
"github_reviewed_at": "2026-06-26T21:01:09Z",
"nvd_published_at": null,
"severity": "LOW"
},
"details": "`internal/api/pop/nonce.go:25,40,86` + `internal/api/server.go:38` \u2014 the signed-poll nonce cache is an in-process LRU sized at 65,536 entries. `internal/api/updates.go:31` sets `pollClockSkew = 5 * time.Minute` as the replay window.\n\n## Affected\nAll released versions through v0.3.0 that have shipped the ADR 0004 signed-poll path. (If this is gated behind a feature flag, on a side branch, or not yet on a release tag, please flag \u2014 this advisory may not apply to the released artifact yet.)\n\n## Threat model\nA captured signed-poll request can be replayed:\n\n1. **After any process restart** \u2014 the in-memory LRU is wiped, so the original nonce becomes \"unseen\" again. Replay succeeds if the original timestamp is still within the 5-minute skew.\n2. **After forced eviction** \u2014 an attacker with control of any single host can flood \u003e65,536 nonces under their own host_id, driving the global LRU to evict the victim\u0027s recorded nonce. Replay then succeeds.\n\nImpact is bounded: a replayed poll fetches the `/api/v1/agent/updates` body. That body can include a freshly-minted enrollment token if a rekey is pending (`updates.go:249-260`) \u2014 at which point the attacker holds a single-use token they can redeem under their own keypair.\n\n## Suggested fix\nTwo options, either acceptable:\n\n1. Persist nonces in SQLite keyed by `(host_id, nonce)` with `ON CONFLICT DO NOTHING`, retained for the timestamp-skew window. Adds one transactional INSERT per poll; bounded by the skew window (~5 min worth of rows server-wide).\n2. Per-host cap on the LRU instead of a global 65k cap, so one host cannot evict another\u0027s records. Combined with shorter skew (\u226430s) to bound the post-restart replay window.\n\nOption 1 is more robust; option 2 is lower-implementation-effort.",
"id": "GHSA-v2jf-442r-6mjh",
"modified": "2026-06-26T21:01:09Z",
"published": "2026-06-26T21:01:09Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/juev/nebula-mesh/security/advisories/GHSA-v2jf-442r-6mjh"
},
{
"type": "PACKAGE",
"url": "https://github.com/juev/nebula-mesh"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:U",
"type": "CVSS_V4"
}
],
"summary": "nebula-mesh: Signed-poll nonce LRU is in-memory and bounded; replay survives restart + eviction"
}
GHSA-V334-55HV-WVC6
Vulnerability from github – Published: 2024-01-30 09:30 – Updated: 2024-01-30 09:30Authentication Bypass by Capture-replay vulnerability in Mitsubishi Electric Corporation MELSEC WS Series WS0-GETH00200 all serial numbers allows a remote unauthenticated attacker to bypass authentication by capture-replay attack and illegally login to the affected module. As a result, the remote attacker who has logged in illegally may be able to disclose or tamper with the programs and parameters in the modules.
{
"affected": [],
"aliases": [
"CVE-2023-6374"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2024-01-30T09:15:47Z",
"severity": "MODERATE"
},
"details": "Authentication Bypass by Capture-replay vulnerability in Mitsubishi Electric Corporation MELSEC WS Series WS0-GETH00200 all serial numbers allows a remote unauthenticated attacker to bypass authentication by capture-replay attack and illegally login to the affected module. As a result, the remote attacker who has logged in illegally may be able to disclose or tamper with the programs and parameters in the modules.",
"id": "GHSA-v334-55hv-wvc6",
"modified": "2024-01-30T09:30:34Z",
"published": "2024-01-30T09:30:34Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-6374"
},
{
"type": "WEB",
"url": "https://jvn.jp/vu/JVNVU99497477"
},
{
"type": "WEB",
"url": "https://www.cisa.gov/news-events/ics-advisories/icsa-24-030-03"
},
{
"type": "WEB",
"url": "https://www.mitsubishielectric.com/en/psirt/vulnerability/pdf/2023-019_en.pdf"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-V42X-FQ35-8393
Vulnerability from github – Published: 2026-01-12 15:30 – Updated: 2026-01-13 21:31D3D Wi-Fi Home Security System ZX-G12 v2.1.1 is vulnerable to RF replay attacks on the 433 MHz sensor communication channel. The system does not implement rolling codes, message authentication, or anti-replay protection, allowing an attacker within RF range to record valid alarm/control frames and replay them to trigger false alarms.
{
"affected": [],
"aliases": [
"CVE-2025-65552"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2026-01-12T15:16:03Z",
"severity": "CRITICAL"
},
"details": "D3D Wi-Fi Home Security System ZX-G12 v2.1.1 is vulnerable to RF replay attacks on the 433 MHz sensor communication channel. The system does not implement rolling codes, message authentication, or anti-replay protection, allowing an attacker within RF range to record valid alarm/control frames and replay them to trigger false alarms.",
"id": "GHSA-v42x-fq35-8393",
"modified": "2026-01-13T21:31:42Z",
"published": "2026-01-12T15:30:42Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-65552"
},
{
"type": "WEB",
"url": "https://d3dsecurity.com/products/wifi-home-security-system-model-g12"
},
{
"type": "WEB",
"url": "https://github.com/EmbdCDACHyd/CVE/tree/main/CVE-2025-65552"
},
{
"type": "WEB",
"url": "http://d3d.com"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
GHSA-V5F8-RC6V-MRCJ
Vulnerability from github – Published: 2023-06-22 21:30 – Updated: 2024-04-04 05:01An issue was discovered in WAFU Keyless Smart Lock v1.0 allows attackers to unlock a device via code replay attack.
{
"affected": [],
"aliases": [
"CVE-2023-34553"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2023-06-22T21:15:09Z",
"severity": "MODERATE"
},
"details": "An issue was discovered in WAFU Keyless Smart Lock v1.0 allows attackers to unlock a device via code replay attack.",
"id": "GHSA-v5f8-rc6v-mrcj",
"modified": "2024-04-04T05:01:58Z",
"published": "2023-06-22T21:30:49Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-34553"
},
{
"type": "WEB",
"url": "https://ashallen.net/wireless-smart-lock-vulnerability-disclosure"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-V5X3-JQM6-CVH7
Vulnerability from github – Published: 2023-06-19 21:30 – Updated: 2024-04-04 04:58SUBNET PowerSYSTEM Center versions 2020 U10 and prior are vulnerable to replay attacks which may result in a denial-of-service condition or a loss of data integrity.
{
"affected": [],
"aliases": [
"CVE-2023-29158"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2023-06-19T21:15:42Z",
"severity": "CRITICAL"
},
"details": "\n\n\nSUBNET PowerSYSTEM Center versions 2020 U10 and prior are vulnerable to replay attacks which may result in a denial-of-service condition or a loss of data integrity.\n\n\n\n\n\n\n",
"id": "GHSA-v5x3-jqm6-cvh7",
"modified": "2024-04-04T04:58:03Z",
"published": "2023-06-19T21:30:20Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-29158"
},
{
"type": "WEB",
"url": "https://www.cisa.gov/news-events/ics-advisories/icsa-23-166-01"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:A/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:H",
"type": "CVSS_V3"
}
]
}
GHSA-V65P-MXX5-R553
Vulnerability from github – Published: 2022-05-24 19:06 – Updated: 2022-05-24 19:06An issue exists in PHP-Fusion 9.03.50 where session cookies are not deleted once a user logs out, allowing for an attacker to perform a session replay attack and impersonate the victim user.
{
"affected": [],
"aliases": [
"CVE-2020-23178"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2021-07-02T18:15:00Z",
"severity": "MODERATE"
},
"details": "An issue exists in PHP-Fusion 9.03.50 where session cookies are not deleted once a user logs out, allowing for an attacker to perform a session replay attack and impersonate the victim user.",
"id": "GHSA-v65p-mxx5-r553",
"modified": "2022-05-24T19:06:52Z",
"published": "2022-05-24T19:06:52Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2020-23178"
},
{
"type": "WEB",
"url": "https://github.com/PHPFusion/PHPFusion/issues/2314"
}
],
"schema_version": "1.4.0",
"severity": []
}
GHSA-V92M-HRHJ-GW54
Vulnerability from github – Published: 2026-05-13 18:30 – Updated: 2026-05-13 18:30Successfully using libcurl to do a transfer over a specific HTTP proxy
(proxyA) with Digest authentication and then changing the proxy host to
a second one (proxyB) for a second transfer, reusing the same handle, makes
libcurl wrongly pass on the Proxy-Authorization: header field meant for
proxyA, to proxyB.
{
"affected": [],
"aliases": [
"CVE-2026-7168"
],
"database_specific": {
"cwe_ids": [
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2026-05-13T13:01:57Z",
"severity": "MODERATE"
},
"details": "Successfully using libcurl to do a transfer over a specific HTTP proxy\n(`proxyA`) with **Digest** authentication and then changing the proxy host to\na second one (`proxyB`) for a second transfer, reusing the same handle, makes\nlibcurl wrongly pass on the `Proxy-Authorization:` header field meant for\n`proxyA`, to `proxyB`.",
"id": "GHSA-v92m-hrhj-gw54",
"modified": "2026-05-13T18:30:52Z",
"published": "2026-05-13T18:30:52Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-7168"
},
{
"type": "WEB",
"url": "https://hackerone.com/reports/3697719"
},
{
"type": "WEB",
"url": "https://curl.se/docs/CVE-2026-7168.html"
},
{
"type": "WEB",
"url": "https://curl.se/docs/CVE-2026-7168.json"
},
{
"type": "WEB",
"url": "http://www.openwall.com/lists/oss-security/2026/04/29/14"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-VPP6-9FCM-RV58
Vulnerability from github – Published: 2024-03-29 18:30 – Updated: 2024-08-27 21:31An authentication bypass vulnerability was found in Stilog Visual Planning 8. It allows an unauthenticated attacker to receive an administrative API token.
{
"affected": [],
"aliases": [
"CVE-2023-49231"
],
"database_specific": {
"cwe_ids": [
"CWE-288",
"CWE-294"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2024-03-29T16:15:07Z",
"severity": "CRITICAL"
},
"details": "An authentication bypass vulnerability was found in Stilog Visual Planning 8. It allows an unauthenticated attacker to receive an administrative API token.",
"id": "GHSA-vpp6-9fcm-rv58",
"modified": "2024-08-27T21:31:11Z",
"published": "2024-03-29T18:30:42Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-49231"
},
{
"type": "WEB",
"url": "https://www.schutzwerk.com/advisories/SCHUTZWERK-SA-2023-003.txt"
},
{
"type": "WEB",
"url": "https://www.schutzwerk.com/blog/schutzwerk-sa-2023-003"
},
{
"type": "WEB",
"url": "https://www.visual-planning.com/en/support-portal/updates"
},
{
"type": "WEB",
"url": "http://seclists.org/fulldisclosure/2024/Apr/1"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
Mitigation
Utilize some sequence or time stamping functionality along with a checksum which takes this into account in order to ensure that messages can be parsed only once.
Mitigation
Since any attacker who can listen to traffic can see sequence numbers, it is necessary to sign messages with some kind of cryptography to ensure that sequence numbers are not simply doctored along with content.
CAPEC-102: Session Sidejacking
Session sidejacking takes advantage of an unencrypted communication channel between a victim and target system. The attacker sniffs traffic on a network looking for session tokens in unencrypted traffic. Once a session token is captured, the attacker performs malicious actions by using the stolen token with the targeted application to impersonate the victim. This attack is a specific method of session hijacking, which is exploiting a valid session token to gain unauthorized access to a target system or information. Other methods to perform a session hijacking are session fixation, cross-site scripting, or compromising a user or server machine and stealing the session token.
CAPEC-509: Kerberoasting
Through the exploitation of how service accounts leverage Kerberos authentication with Service Principal Names (SPNs), the adversary obtains and subsequently cracks the hashed credentials of a service account target to exploit its privileges. The Kerberos authentication protocol centers around a ticketing system which is used to request/grant access to services and to then access the requested services. As an authenticated user, the adversary may request Active Directory and obtain a service ticket with portions encrypted via RC4 with the private key of the authenticated account. By extracting the local ticket and saving it disk, the adversary can brute force the hashed value to reveal the target account credentials.
CAPEC-555: Remote Services with Stolen Credentials
This pattern of attack involves an adversary that uses stolen credentials to leverage remote services such as RDP, telnet, SSH, and VNC to log into a system. Once access is gained, any number of malicious activities could be performed.
CAPEC-561: Windows Admin Shares with Stolen Credentials
An adversary guesses or obtains (i.e. steals or purchases) legitimate Windows administrator credentials (e.g. userID/password) to access Windows Admin Shares on a local machine or within a Windows domain.
CAPEC-60: Reusing Session IDs (aka Session Replay)
This attack targets the reuse of valid session ID to spoof the target system in order to gain privileges. The attacker tries to reuse a stolen session ID used previously during a transaction to perform spoofing and session hijacking. Another name for this type of attack is Session Replay.
CAPEC-644: Use of Captured Hashes (Pass The Hash)
An adversary obtains (i.e. steals or purchases) legitimate Windows domain credential hash values to access systems within the domain that leverage the Lan Man (LM) and/or NT Lan Man (NTLM) authentication protocols.
CAPEC-645: Use of Captured Tickets (Pass The Ticket)
An adversary uses stolen Kerberos tickets to access systems/resources that leverage the Kerberos authentication protocol. The Kerberos authentication protocol centers around a ticketing system which is used to request/grant access to services and to then access the requested services. An adversary can obtain any one of these tickets (e.g. Service Ticket, Ticket Granting Ticket, Silver Ticket, or Golden Ticket) to authenticate to a system/resource without needing the account's credentials. Depending on the ticket obtained, the adversary may be able to access a particular resource or generate TGTs for any account within an Active Directory Domain.
CAPEC-652: Use of Known Kerberos Credentials
An adversary obtains (i.e. steals or purchases) legitimate Kerberos credentials (e.g. Kerberos service account userID/password or Kerberos Tickets) with the goal of achieving authenticated access to additional systems, applications, or services within the domain.
CAPEC-701: Browser in the Middle (BiTM)
An adversary exploits the inherent functionalities of a web browser, in order to establish an unnoticed remote desktop connection in the victim's browser to the adversary's system. The adversary must deploy a web client with a remote desktop session that the victim can access.
CAPEC-94: Adversary in the Middle (AiTM)
An adversary targets the communication between two components (typically client and server), in order to alter or obtain data from transactions. A general approach entails the adversary placing themself within the communication channel between the two components.