CWE-522
Allowed-with-ReviewInsufficiently Protected Credentials
Abstraction: Class · Status: Incomplete
The product transmits or stores authentication credentials, but it uses an insecure method that is susceptible to unauthorized interception and/or retrieval.
1941 vulnerabilities reference this CWE, most recent first.
GHSA-8MJ3-MJ87-CF2H
Vulnerability from github – Published: 2024-01-25 15:31 – Updated: 2024-01-25 15:31Networker 19.9 and all prior versions contains a Plain-text Password stored in temporary config file during backup duration in NMDA MySQL Database backups. User has low privilege access to Networker Client system could potentially exploit this vulnerability, leading to the disclosure of configured MySQL Database user credentials. The attacker may be able to use the exposed credentials to access the vulnerable application Database with privileges of the compromised account.
{
"affected": [],
"aliases": [
"CVE-2024-22432"
],
"database_specific": {
"cwe_ids": [
"CWE-256",
"CWE-522"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2024-01-25T15:15:07Z",
"severity": "HIGH"
},
"details": "\nNetworker 19.9 and all prior versions contains a Plain-text Password stored in temporary config file during backup duration in NMDA MySQL Database backups. User has low privilege access to Networker Client system could potentially exploit this vulnerability, leading to the disclosure of configured MySQL Database user credentials. The attacker may be able to use the exposed credentials to access the vulnerable application Database with privileges of the compromised account.\n\n",
"id": "GHSA-8mj3-mj87-cf2h",
"modified": "2024-01-25T15:31:53Z",
"published": "2024-01-25T15:31:53Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-22432"
},
{
"type": "WEB",
"url": "https://www.dell.com/support/kbdoc/en-us/000221474/dsa-2024-059-security-update-for-dell-networker-multiple-components-vulnerabilities"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
GHSA-8MJP-8C2X-3G7W
Vulnerability from github – Published: 2022-05-24 17:01 – Updated: 2023-10-27 17:41Jenkins QMetry for JIRA - Test Management Plugin stored credentials unencrypted in job config.xml files on the Jenkins controller as part of its post-build step configuration. This credential could be viewed by users with Extended Read permission or access to the Jenkins controller file system.
QMetry for JIRA - Test Management Plugin now stores these credentials encrypted once the job configuration is saved again.
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 1.12"
},
"package": {
"ecosystem": "Maven",
"name": "org.jenkins-ci.plugins:qmetry-for-jira-test-management"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.13"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2019-16544"
],
"database_specific": {
"cwe_ids": [
"CWE-522"
],
"github_reviewed": true,
"github_reviewed_at": "2023-10-27T17:41:08Z",
"nvd_published_at": "2019-11-21T15:15:00Z",
"severity": "MODERATE"
},
"details": "Jenkins QMetry for JIRA - Test Management Plugin stored credentials unencrypted in job config.xml files on the Jenkins controller as part of its post-build step configuration. This credential could be viewed by users with Extended Read permission or access to the Jenkins controller file system.\n\nQMetry for JIRA - Test Management Plugin now stores these credentials encrypted once the job configuration is saved again.",
"id": "GHSA-8mjp-8c2x-3g7w",
"modified": "2023-10-27T17:41:08Z",
"published": "2022-05-24T17:01:41Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-16544"
},
{
"type": "WEB",
"url": "https://jenkins.io/security/advisory/2019-11-21/#SECURITY-727%20(1)"
},
{
"type": "WEB",
"url": "http://www.openwall.com/lists/oss-security/2019/11/21/1"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
}
],
"summary": "Jenkins QMetry for JIRA Plugin stored credentials in plain text"
}
GHSA-8MR2-F9WF-HCFQ
Vulnerability from github – Published: 2026-03-21 03:31 – Updated: 2026-03-24 17:54Duplicate Advisory
This advisory has been withdrawn because it is a duplicate of GHSA-v6x2-2qvm-6gv8. This link is maintained to preserve external references.
Original Description
OpenClaw versions prior to 2026.2.22 reuse gateway.auth.token as a fallback hash secret for owner-ID prompt obfuscation when commands.ownerDisplay is set to hash and commands.ownerDisplaySecret is unset, creating dual-use of authentication secrets across security domains. Attackers with access to system prompts sent to third-party model providers can derive the gateway authentication token from the hash outputs, compromising gateway authentication security.
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 2026.2.21-2"
},
"package": {
"ecosystem": "npm",
"name": "openclaw"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2026.2.22"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [],
"database_specific": {
"cwe_ids": [
"CWE-522"
],
"github_reviewed": true,
"github_reviewed_at": "2026-03-24T17:54:52Z",
"nvd_published_at": "2026-03-21T01:17:10Z",
"severity": "LOW"
},
"details": "### Duplicate Advisory\nThis advisory has been withdrawn because it is a duplicate of GHSA-v6x2-2qvm-6gv8. This link is maintained to preserve external references.\n\n### Original Description\nOpenClaw versions prior to 2026.2.22 reuse gateway.auth.token as a fallback hash secret for owner-ID prompt obfuscation when commands.ownerDisplay is set to hash and commands.ownerDisplaySecret is unset, creating dual-use of authentication secrets across security domains. Attackers with access to system prompts sent to third-party model providers can derive the gateway authentication token from the hash outputs, compromising gateway authentication security.",
"id": "GHSA-8mr2-f9wf-hcfq",
"modified": "2026-03-24T17:54:52Z",
"published": "2026-03-21T03:31:15Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/openclaw/openclaw/security/advisories/GHSA-v6x2-2qvm-6gv8"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-32897"
},
{
"type": "WEB",
"url": "https://github.com/openclaw/openclaw/commit/c99e7696e6893083b256f0a6c88fb060f3a76fb7"
},
{
"type": "PACKAGE",
"url": "https://github.com/openclaw/openclaw"
},
{
"type": "WEB",
"url": "https://www.vulncheck.com/advisories/openclaw-authentication-token-reuse-in-owner-id-prompt-hashing-fallback"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
},
{
"score": "CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N",
"type": "CVSS_V4"
}
],
"summary": "Duplicate Advisory: OpenClaw reuses the gateway auth token in the owner ID prompt hashing fallback",
"withdrawn": "2026-03-24T17:54:52Z"
}
GHSA-8MXV-9XHP-86H4
Vulnerability from github – Published: 2026-08-05 20:27 – Updated: 2026-08-05 20:271. Summary
The S3 redirect callback strips X-Amz-Security-Token when a redirect changes scheme or host, but it does not strip IBM IAM bearer authorization or customer-provided encryption keys. Two independently validated paths remain:
- a same-host HTTPS-to-HTTP redirect preserves
Authorization: Bearer ...and exposes a reusable IBM IAM token to the plaintext network path; - a cross-origin redirect preserves SSE-C and copy-source SSE-C key headers.
The High rating is driven by the reusable IBM IAM bearer token. The SSE-C cross-origin disclosure is a secondary confidentiality issue. The meaningful threat is a trusted endpoint, gateway, or accelerator that emits an unsafe redirect, followed by an adjacent/on-path observer; describing the originally configured endpoint itself as the attacker would be weak because that endpoint already receives the request secrets.
2. Affected Assets & Attack Surface
- S3 redirect policy:
backend/s3/s3.go:1345-1379 - IBM IAM signer:
backend/s3/ibm_signer.go:28-40 - SSE-C key preparation:
backend/s3/s3.go:1821-1837 - Affected operations: requests carrying IBM IAM authorization, SSE-C keys, or copy-source SSE-C keys
- Confirmed affected version:
<= v1.74.0-240-ga0c09f138
3. Technical Root Cause Analysis
s3CheckRedirect applies a one-header denylist:
if s3RedirectCrossesHost(req, via) {
req.Header.Del("X-Amz-Security-Token")
}
Go removes Authorization on some hostname changes, but preserves it for a same-host redirect and does not treat a scheme downgrade as sufficient reason to remove it. Go also has no generic knowledge that the SSE-C headers contain raw encryption keys. The rclone callback recognizes the STS token but not these additional origin-bound secrets.
4. Proof-of-Concept & Evidence
Using the actual redirect callback:
- An HTTPS endpoint redirected to HTTP on the same hostname.
- The plaintext destination received the planted IBM bearer token and SSE-C headers.
- A separate redirect to an unrelated hostname caused Go to remove
Authorization, but the destination still received both SSE-C key headers. - In both cases, rclone removed the planted STS token, proving that the S3-specific callback executed while omitting the other secret classes.
The related GHSA-gx4c-2hqx-cw2r covers the STS downgrade path and confirms that rclone treats scheme changes as a credential boundary. It does not cover the IBM bearer or SSE-C variants retained here.
5. Impact Assessment
A captured IBM bearer token can authorize reads, writes, and deletes within its IAM scope. A disclosed SSE-C key can expose corresponding ciphertext available to the recipient; copy-source keys can expose protected source objects. The exact impact is limited by token policy and the attacker's access to encrypted objects.
6. Remediation Guidance
- Reject every HTTPS-to-HTTP redirect before replay.
- Do not automatically follow secret-bearing cross-origin redirects.
- On any scheme, host, or effective-port change, remove all authorization, cookies, session tokens, SSE-C fields, copy-source SSE-C fields, and provider-specific credentials.
- Where redirects are required, allowlist exact destinations and reconstruct/re-sign a new request.
- Add redirect tests for every secret header class and for scheme, hostname, subdomain, and port changes.
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 1.74.0"
},
"package": {
"ecosystem": "Go",
"name": "github.com/rclone/rclone"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.75.0"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [],
"database_specific": {
"cwe_ids": [
"CWE-200",
"CWE-319",
"CWE-522"
],
"github_reviewed": true,
"github_reviewed_at": "2026-08-05T20:27:50Z",
"nvd_published_at": null,
"severity": "MODERATE"
},
"details": "## 1. Summary\n\nThe S3 redirect callback strips `X-Amz-Security-Token` when a redirect changes scheme or host, but it does not strip IBM IAM bearer authorization or customer-provided encryption keys. Two independently validated paths remain:\n\n- a same-host HTTPS-to-HTTP redirect preserves `Authorization: Bearer ...` and exposes a reusable IBM IAM token to the plaintext network path;\n- a cross-origin redirect preserves SSE-C and copy-source SSE-C key headers.\n\nThe High rating is driven by the reusable IBM IAM bearer token. The SSE-C cross-origin disclosure is a secondary confidentiality issue. The meaningful threat is a trusted endpoint, gateway, or accelerator that emits an unsafe redirect, followed by an adjacent/on-path observer; describing the originally configured endpoint itself as the attacker would be weak because that endpoint already receives the request secrets.\n\n## 2. Affected Assets \u0026 Attack Surface\n\n- S3 redirect policy: `backend/s3/s3.go:1345-1379`\n- IBM IAM signer: `backend/s3/ibm_signer.go:28-40`\n- SSE-C key preparation: `backend/s3/s3.go:1821-1837`\n- Affected operations: requests carrying IBM IAM authorization, SSE-C keys, or copy-source SSE-C keys\n- Confirmed affected version: `\u003c= v1.74.0-240-ga0c09f138`\n\n## 3. Technical Root Cause Analysis\n\n`s3CheckRedirect` applies a one-header denylist:\n\n```go\nif s3RedirectCrossesHost(req, via) {\n req.Header.Del(\"X-Amz-Security-Token\")\n}\n```\n\nGo removes `Authorization` on some hostname changes, but preserves it for a same-host redirect and does not treat a scheme downgrade as sufficient reason to remove it. Go also has no generic knowledge that the SSE-C headers contain raw encryption keys. The rclone callback recognizes the STS token but not these additional origin-bound secrets.\n\n## 4. Proof-of-Concept \u0026 Evidence\n\nUsing the actual redirect callback:\n\n1. An HTTPS endpoint redirected to HTTP on the same hostname.\n2. The plaintext destination received the planted IBM bearer token and SSE-C headers.\n3. A separate redirect to an unrelated hostname caused Go to remove `Authorization`, but the destination still received both SSE-C key headers.\n4. In both cases, rclone removed the planted STS token, proving that the S3-specific callback executed while omitting the other secret classes.\n\nThe related [GHSA-gx4c-2hqx-cw2r](https://github.com/rclone/rclone/security/advisories/GHSA-gx4c-2hqx-cw2r) covers the STS downgrade path and confirms that rclone treats scheme changes as a credential boundary. It does not cover the IBM bearer or SSE-C variants retained here.\n\n## 5. Impact Assessment\n\nA captured IBM bearer token can authorize reads, writes, and deletes within its IAM scope. A disclosed SSE-C key can expose corresponding ciphertext available to the recipient; copy-source keys can expose protected source objects. The exact impact is limited by token policy and the attacker\u0027s access to encrypted objects.\n\n## 6. Remediation Guidance\n\n- Reject every HTTPS-to-HTTP redirect before replay.\n- Do not automatically follow secret-bearing cross-origin redirects.\n- On any scheme, host, or effective-port change, remove all authorization, cookies, session tokens, SSE-C fields, copy-source SSE-C fields, and provider-specific credentials.\n- Where redirects are required, allowlist exact destinations and reconstruct/re-sign a new request.\n- Add redirect tests for every secret header class and for scheme, hostname, subdomain, and port changes.",
"id": "GHSA-8mxv-9xhp-86h4",
"modified": "2026-08-05T20:27:50Z",
"published": "2026-08-05T20:27:50Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/rclone/rclone/security/advisories/GHSA-8mxv-9xhp-86h4"
},
{
"type": "WEB",
"url": "https://github.com/rclone/rclone/commit/7543a7a87884aca957590b20b0714078d51af87b"
},
{
"type": "WEB",
"url": "https://github.com/rclone/rclone/commit/9328763d1b73db71e97c0332b19e3747abeb9191"
},
{
"type": "PACKAGE",
"url": "https://github.com/rclone/rclone"
},
{
"type": "WEB",
"url": "https://github.com/rclone/rclone/releases/tag/v1.75.0"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
],
"summary": "rclone: S3 Redirect Sanitization Omits IBM IAM Bearer Tokens and SSE-C Keys"
}
GHSA-8QG5-38VG-2774
Vulnerability from github – Published: 2023-10-11 09:34 – Updated: 2024-04-04 08:33BigFix Insights/IVR fixlet uses improper credential handling within certain fixlet content. An attacker can gain access to information that is not explicitly authorized.
{
"affected": [],
"aliases": [
"CVE-2022-44758"
],
"database_specific": {
"cwe_ids": [
"CWE-522"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2023-10-11T07:15:09Z",
"severity": "MODERATE"
},
"details": "BigFix Insights/IVR fixlet uses improper credential handling within certain fixlet content. An attacker can gain access to information that is not explicitly authorized.\n",
"id": "GHSA-8qg5-38vg-2774",
"modified": "2024-04-04T08:33:16Z",
"published": "2023-10-11T09:34:02Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-44758"
},
{
"type": "WEB",
"url": "https://support.hcltechsw.com/csm?id=kb_article\u0026sysparm_article=KB0108005"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-8QG8-6CRQ-4Q3H
Vulnerability from github – Published: 2022-05-24 17:40 – Updated: 2022-05-24 17:40An issue was discovered on Mofi Network MOFI4500-4GXeLTE 4.0.8-std devices. Authentication is not required to download the support file that contains sensitive information such as cleartext credentials and password hashes.
{
"affected": [],
"aliases": [
"CVE-2020-13856"
],
"database_specific": {
"cwe_ids": [
"CWE-522"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2021-02-01T02:15:00Z",
"severity": "HIGH"
},
"details": "An issue was discovered on Mofi Network MOFI4500-4GXeLTE 4.0.8-std devices. Authentication is not required to download the support file that contains sensitive information such as cleartext credentials and password hashes.",
"id": "GHSA-8qg8-6crq-4q3h",
"modified": "2022-05-24T17:40:41Z",
"published": "2022-05-24T17:40:41Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2020-13856"
},
{
"type": "WEB",
"url": "https://mofinetwork.com/index.php?main_page=page\u0026id=14"
},
{
"type": "WEB",
"url": "https://www.criticalstart.com/critical-vulnerabilities-discovered-in-mofi-routers"
}
],
"schema_version": "1.4.0",
"severity": []
}
GHSA-8QV9-JC88-JWMH
Vulnerability from github – Published: 2023-10-11 06:30 – Updated: 2024-04-04 08:33Certain credentials within the BigFix Patch Management Download Plug-ins are stored insecurely and could be exposed to a local privileged user.
{
"affected": [],
"aliases": [
"CVE-2022-42451"
],
"database_specific": {
"cwe_ids": [
"CWE-522"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2023-10-11T06:15:09Z",
"severity": "MODERATE"
},
"details": "Certain credentials within the BigFix Patch Management Download Plug-ins are stored insecurely and could be exposed to a local privileged user.\n",
"id": "GHSA-8qv9-jc88-jwmh",
"modified": "2024-04-04T08:33:13Z",
"published": "2023-10-11T06:30:28Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-42451"
},
{
"type": "WEB",
"url": "https://support.hcltechsw.com/csm?id=kb_article\u0026sysparm_article=KB0108007"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-8QXP-FP5J-5WXJ
Vulnerability from github – Published: 2022-05-24 17:27 – Updated: 2026-06-02 21:30A vulnerability has been identified in SIMATIC S7-300 CPU family (incl. related ET200 CPUs and SIPLUS variants) (All versions), SIMATIC S7-400 CPU family (incl. SIPLUS variants) (All versions). The authentication protocol between a client and a PLC via port 102/tcp (ISO-TSAP) insufficiently protects the transmitted password. This could allow an attacker that is able to intercept the network traffic to obtain valid PLC credentials.
{
"affected": [],
"aliases": [
"CVE-2020-15791"
],
"database_specific": {
"cwe_ids": [
"CWE-522"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2020-09-09T19:15:00Z",
"severity": "LOW"
},
"details": "A vulnerability has been identified in SIMATIC S7-300 CPU family (incl. related ET200 CPUs and SIPLUS variants) (All versions), SIMATIC S7-400 CPU family (incl. SIPLUS variants) (All versions). The authentication protocol between a client and a PLC via port 102/tcp (ISO-TSAP) insufficiently protects the transmitted password. This could allow an attacker that is able to intercept the network traffic to obtain valid PLC credentials.",
"id": "GHSA-8qxp-fp5j-5wxj",
"modified": "2026-06-02T21:30:30Z",
"published": "2022-05-24T17:27:38Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2020-15791"
},
{
"type": "WEB",
"url": "https://cert-portal.siemens.com/productcert/pdf/ssa-381684.pdf"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-8RP6-8JGG-QP66
Vulnerability from github – Published: 2022-05-13 01:31 – Updated: 2022-05-13 01:31In the web application in BeaconMedaes TotalAlert Scroll Medical Air Systems running software versions prior to 4107600010.23, passwords are presented in plaintext in a file that is accessible without authentication.
{
"affected": [],
"aliases": [
"CVE-2018-7510"
],
"database_specific": {
"cwe_ids": [
"CWE-522"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2018-06-06T20:29:00Z",
"severity": "CRITICAL"
},
"details": "In the web application in BeaconMedaes TotalAlert Scroll Medical Air Systems running software versions prior to 4107600010.23, passwords are presented in plaintext in a file that is accessible without authentication.",
"id": "GHSA-8rp6-8jgg-qp66",
"modified": "2022-05-13T01:31:52Z",
"published": "2022-05-13T01:31:52Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2018-7510"
},
{
"type": "WEB",
"url": "https://ics-cert.us-cert.gov/advisories/ICSMA-18-144-01"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
GHSA-8RQ8-F485-7V8X
Vulnerability from github – Published: 2022-07-09 00:00 – Updated: 2024-04-22 21:11rpc.py through 0.6.0 allows Remote Code Execution because an unpickle occurs when the "serializer: pickle" HTTP header is sent. In other words, although JSON (not Pickle) is the default data format, an unauthenticated client can cause the data to be processed with unpickle.
Per the maintainer, rpc.py is not designed for an API that is open to the outside world, and external requests cannot reach rpc.py in real world use.
A fix exists on the master branch. As a workaround, use the following code to turn off pickle in older versions:
```
del SERIALIZER_NAMES[PickleSerializer.name]
del SERIALIZER_TYPES[PickleSerializer.content_type]
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "rpc.py"
},
"ranges": [
{
"events": [
{
"introduced": "0.4.2"
},
{
"last_affected": "0.6.0"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2022-35411"
],
"database_specific": {
"cwe_ids": [
"CWE-502",
"CWE-522"
],
"github_reviewed": true,
"github_reviewed_at": "2022-07-12T17:55:02Z",
"nvd_published_at": "2022-07-08T19:15:00Z",
"severity": "CRITICAL"
},
"details": "rpc.py through 0.6.0 allows Remote Code Execution because an unpickle occurs when the \"serializer: pickle\" HTTP header is sent. In other words, although JSON (not Pickle) is the default data format, an unauthenticated client can cause the data to be processed with unpickle.\n\n[Per the maintainer](https://github.com/abersheeran/rpc.py/issues/22), rpc.py is not designed for an API that is open to the outside world, and external requests cannot reach rpc.py in real world use.\n\nA [fix](https://github.com/abersheeran/rpc.py/commit/491e7a841ed9a754796d6ab047a9fb16e23bf8bd) exists on the `master` branch. As a workaround, use the following code to turn off pickle in older versions:\n```\ndel SERIALIZER_NAMES[PickleSerializer.name]\ndel SERIALIZER_TYPES[PickleSerializer.content_type]",
"id": "GHSA-8rq8-f485-7v8x",
"modified": "2024-04-22T21:11:25Z",
"published": "2022-07-09T00:00:19Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-35411"
},
{
"type": "WEB",
"url": "https://github.com/abersheeran/rpc.py/issues/22"
},
{
"type": "WEB",
"url": "https://github.com/abersheeran/rpc.py/commit/491e7a841ed9a754796d6ab047a9fb16e23bf8bd"
},
{
"type": "PACKAGE",
"url": "https://github.com/abersheeran/rpc.py"
},
{
"type": "WEB",
"url": "https://github.com/ehtec/rpcpy-exploit"
},
{
"type": "WEB",
"url": "https://medium.com/%40elias.hohl/remote-code-execution-0-day-in-rpc-py-709c76690c30"
},
{
"type": "WEB",
"url": "https://medium.com/@elias.hohl/remote-code-execution-0-day-in-rpc-py-709c76690c30"
},
{
"type": "WEB",
"url": "http://packetstormsecurity.com/files/167872/rpc.py-0.6.0-Remote-Code-Execution.html"
}
],
"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"
}
],
"summary": "rpc.py vulnerable to Deserialization of Untrusted Data"
}
Mitigation
Use an appropriate security mechanism to protect the credentials.
Mitigation
Make appropriate use of cryptography to protect the credentials.
Mitigation
Use industry standards to protect the credentials (e.g. LDAP, keystore, etc.).
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-474: Signature Spoofing by Key Theft
An attacker obtains an authoritative or reputable signer's private signature key by theft and then uses this key to forge signatures from the original signer to mislead a victim into performing actions that benefit the attacker.
CAPEC-50: Password Recovery Exploitation
An attacker may take advantage of the application feature to help users recover their forgotten passwords in order to gain access into the system with the same privileges as the original user. Generally password recovery schemes tend to be weak and insecure.
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-551: Modify Existing Service
When an operating system starts, it also starts programs called services or daemons. Modifying existing services may break existing services or may enable services that are disabled/not commonly used.
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-560: Use of Known Domain Credentials
An adversary guesses or obtains (i.e. steals or purchases) legitimate credentials (e.g. userID/password) to achieve authentication and to perform authorized actions under the guise of an authenticated user or service.
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-600: Credential Stuffing
An adversary tries known username/password combinations against different systems, applications, or services to gain additional authenticated access. Credential Stuffing attacks rely upon the fact that many users leverage the same username/password combination for multiple systems, applications, and services.
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-653: Use of Known Operating System Credentials
An adversary guesses or obtains (i.e. steals or purchases) legitimate operating system credentials (e.g. userID/password) to achieve authentication and to perform authorized actions on the system, under the guise of an authenticated user or service. This applies to any Operating System.