node-opcua: Missing nonce verification in UserNameIdentityToken authentication
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| node-opcua | node-opcua | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Node-opcua Project | Node-opcua |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-mq36-523m-x7vv | node-opcua missing nonce verification in UserNameIdentityToken authentication |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.424% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Node-opcua Project
Node-opcua Project node-opcua |
|
| Vendors & Products |
Node-opcua Project
Node-opcua Project node-opcua |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | node-opcua is an OPC UA implementation for TypeScript and Node.js. Prior to 2.166.0, the UserNameIdentityToken authentication handler in packages/node-opcua-server/source/opcua_server.ts decrypts an RSA-OAEP password blob but does not verify that the trailing bytes match the current session serverNonce. An unauthenticated remote attacker can obtain the server public key through GetEndpoints and forge a blob whose little-endian length produces an empty password passed to isValidUser, compromising accounts that accept an empty password. Missing nonce binding also allows a captured UserNameIdentityToken ciphertext to be replayed in another session, and SecurityMode=None removes the separate client-signature safeguard. This issue is fixed in version 2.166.0. | |
| Title | node-opcua: Missing nonce verification in UserNameIdentityToken authentication | |
| Weaknesses | CWE-347 | |
| References |
| |
| Metrics |
cvssV3_1
|