Skip to content
Heist/ feed
Back to feed
High

MongoDB Shell may be susceptible to Control Character Injection via autocomplete

Type: advisorySources: OSV

The MongoDB Shell may be susceptible to control character injection where an attacker with control of the mongosh autocomplete feature, can use the autocompletion feature to input and run obfuscated malicious text. This requires user interaction in the form of the user using ‘tab’ to autocomplete text that is a prefix of the attacker’s prepared autocompletion. This issue affects mongosh versions prior to 2.3.9. The vulnerability is exploitable only when mongosh is connected to a cluster that is partially or fully controlled by an attacker.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2025-1691
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 17:36 UTC · Revision 1

Source evidence

MongoDB Shell may be susceptible to Control Character Injection via autocomplete

core-osv · Original source

Published 27 Feb 2025, 12:34 UTC

The MongoDB Shell may be susceptible to control character injection where an attacker with control of the mongosh autocomplete feature, can use the autocompletion feature to input and run obfuscated malicious text. This requires user interaction in the form of the user using ‘tab’ to autocomplete text that is a prefix of the attacker’s prepared autocompletion. This issue affects mongosh versions prior to 2.3.9. The vulnerability is exploitable only when mongosh is connected to a cluster that is partially or fully controlled by an attacker.

osv:CVE-2025-1691
Complete source record
{
  "id": "ccaaa29e3c4cae6315bb3aa846e0647a6692368023ef6e66a3e8a4a6c2f8f73c",
  "url": "https://osv.dev/vulnerability/CVE-2025-1691",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "MongoDB Shell may be susceptible to Control Character Injection via autocomplete",
    "summary": "The MongoDB Shell may be susceptible to control character injection where an attacker with control of the mongosh autocomplete feature, can use the autocompletion feature to input and run obfuscated malicious text. This requires user interaction in the form of the user using ‘tab’ to autocomplete text that is a prefix of the attacker’s prepared autocompletion. This issue affects mongosh versions prior to 2.3.9. The vulnerability is exploitable only when mongosh is connected to a cluster that is partially or fully controlled by an attacker.",
    "evidence": "osv:CVE-2025-1691",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2025-1691",
      "aliases": [
        "CVE-2025-1691",
        "GHSA-43g5-2wr2-q7vj"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/mongodb-js/mongosh",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "bfb783bc891cacfc1967c38e478eb360e4fc46f8"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:mongodb:mongosh:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2.3.9"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v2.3.9-draft.12",
            "v2.3.9-draft.11",
            "v2.3.9-draft.10",
            "v2.3.9-draft.9",
            "v2.3.9-draft.8",
            "v2.3.9-draft.7",
            "v2.3.9-draft.6",
            "v2.3.9-draft.5",
            "v2.3.9-draft.4",
            "v2.3.9-draft.3",
            "v2.3.9-draft.2",
            "v2.3.9-draft.1",
            "v2.3.9-draft.0",
            "@mongosh/types@3.0.0",
            "@mongosh/snippet-manager@3.0.0",
            "@mongosh/shell-evaluator@3.0.0",
            "@mongosh/shell-api@3.0.0",
            "@mongosh/service-provider-node-driver@3.0.0",
            "@mongosh/service-provider-core@3.0.0",
            "@mongosh/node-runtime-worker-thread@3.0.0",
            "@mongosh/logging@3.0.0",
            "@mongosh/js-multiline-to-singleline@2.4.0",
            "@mongosh/java-shell@2.4.0",
            "@mongosh/i18n@2.4.0",
            "@mongosh/history@2.4.0",
            "@mongosh/errors@2.4.0",
            "@mongosh/editor@3.0.0",
            "@mongosh/e2e-tests@3.0.0",
            "@mongosh/docker-build-scripts@3.0.0",
            "@mongosh/connectivity-tests@2.4.0",
            "@mongosh/build@3.0.0",
            "@mongosh/browser-runtime-electron@3.0.0",
            "@mongosh/browser-runtime-core@3.0.0",
            "@mongosh/browser-repl@3.0.0",
            "@mongosh/autocomplete@3.0.0",
            "@mongosh/async-rewriter2@2.4.0",
            "@mongosh/arg-parser@3.0.0",
            "v2.3.8-draft.0",
            "v2.3.8",
            "v2.3.7-draft.0",
            "v2.3.7",
            "v2.3.6-draft.0",
            "v2.3.6",
            "v2.3.5-draft.0",
            "v2.3.5",
            "v2.3.4-draft.0",
            "v2.3.4",
            "v2.3.3-draft.0",
            "v2.3.3",
            "v2.3.2-draft.0",
            "v2.3.2",
            "v2.3.1-draft.0",
            "v2.3.1",
            "v2.3.0-draft.0",
            "v2.3.0",
            "v2.2.15-draft.0",
            "v2.2.15",
            "v2.2.14-draft.0",
            "v2.2.14",
            "v2.2.13-draft.1",
            "v2.2.13",
            "v2.2.13-draft.0",
            "v2.2.12-draft.1",
            "v2.2.12",
            "v2.2.12-draft.0",
            "v2.2.11-draft.1",
            "v2.2.11",
            "v2.2.11-draft.0",
            "v2.2.10-draft.0",
            "v2.2.10",
            "v2.2.9-draft.0",
            "v2.2.9",
            "v2.2.8-draft.0",
            "v2.2.8",
            "v2.2.7",
            "v2.2.7-draft.0",
            "v2.2.6-draft.0",
            "v2.2.6",
            "v2.2.5-draft.0",
            "v2.2.5",
            "v2.2.4-draft.4",
            "v2.2.4",
            "v2.2.4-draft.3",
            "v2.2.4-draft.2",
            "v2.2.4-draft.1",
            "v2.2.4-draft.0",
            "v2.2.3-draft.0",
            "v2.2.3",
            "v2.2.2-draft.0",
            "v2.2.2",
            "v2.2.1-draft.1",
            "v2.2.1",
            "v2.2.1-draft.0",
            "v2.2.0-draft.0",
            "v2.2.0-draft.1",
            "v2.2.0",
            "v2.1.5-draft.2",
            "v2.1.5",
            "v2.1.5-draft.1",
            "v2.1.5-draft.0",
            "v2.1.4-draft.0",
            "v2.1.4",
            "v2.1.3-draft.3",
            "v2.1.3",
            "v2.1.3-draft.2",
            "v2.1.3-draft.1",
            "v2.1.3-draft.0",
            "v2.1.2-draft.2",
            "v2.1.2",
            "v2.1.1-draft.0",
            "v2.1.1",
            "v2.1.0-draft.1",
            "v2.1.0",
            "v2.1.0-draft.0",
            "v2.0.2-draft.0",
            "v2.0.2",
            "v2.0.1-draft.0",
            "v2.0.1",
            "v2.0.0-draft.4",
            "v2.0.0",
            "v2.0.0-draft.3",
            "v2.0.0-draft.2",
            "v2.0.0-draft.1",
            "v2.0.0-draft.0",
            "v1.10.6-draft.1",
            "v1.10.6",
            "v1.10.6-draft.0",
            "v1.10.5-draft.1",
            "v1.10.5",
            "v1.10.5-draft.0",
            "v1.10.4-draft.0",
            "v1.10.4",
            "v1.10.3-draft.0",
            "v1.10.3",
            "v1.10.2-draft.0",
            "v1.10.2",
            "v1.10.1-draft.0",
            "v1.10.1",
            "v1.10.0-draft.0",
            "v1.10.0",
            "v1.9.1-draft.0",
            "v1.9.1",
            "v1.9.0-draft.0",
            "v1.9.0",
            "v1.8.2-draft.0",
            "v1.8.2",
            "v1.8.1-draft.0",
            "v1.8.1",
            "v1.8.0-draft.0",
            "v1.8.0",
            "v1.7.1-draft.0",
            "v1.7.1",
            "v1.7.0-draft.0",
            "v1.7.0",
            "v1.6.2-draft.0",
            "v1.6.2",
            "v1.6.1-draft.0",
            "v1.6.1",
            "v1.6.0-draft.0",
            "v1.6.0",
            "v1.5.4-draft.0",
            "v1.5.4",
            "v1.5.3-draft.0",
            "v1.5.3",
            "v1.5.2-draft.0",
            "v1.5.2",
            "v1.5.1-draft.2",
            "v1.5.1",
            "v1.5.1-draft.1",
            "v1.5.1-draft.0",
            "v1.5.0-draft.5",
            "v1.5.0",
            "v1.5.0-draft.4",
            "v1.5.0-draft.3",
            "v1.5.0-draft.2",
            "v1.5.0-draft.1",
            "v1.5.0-draft.0",
            "v1.4.2-draft.0",
            "v1.4.2",
            "v1.4.1-draft.0",
            "v1.4.1",
            "v1.4.0-draft.0",
            "v1.4.0",
            "v1.3.1-draft.0",
            "v1.3.1",
            "v1.3.0-draft.0",
            "v1.3.0",
            "v1.2.3-draft.1",
            "v1.2.3",
            "v1.2.3-draft.0",
            "v1.2.2-draft.1",
            "v1.2.2",
            "v1.2.2-draft.0",
            "v1.2.1-draft.0",
            "v1.2.1",
            "v1.2.0-draft.0",
            "v1.2.0",
            "v1.1.9-draft.1",
            "v1.1.9",
            "v1.1.9-draft.0",
            "v1.1.8-draft.8",
            "v1.1.8",
            "v1.1.8-draft.7",
            "v1.1.8-draft.6",
            "v1.1.8-draft.5",
            "v1.1.8-draft.4",
            "v1.1.8-draft.3",
            "v1.1.8-draft.2",
            "v1.1.8-draft.1",
            "v1.1.8-draft.0",
            "v1.1.7-draft.1",
            "v1.1.7",
            "v1.1.7-draft.0",
            "v1.1.6-draft.0",
            "v1.1.6",
            "v1.1.5-draft.1",
            "v1.1.5",
            "v1.1.5-draft.0",
            "v1.1.4-draft.0",
            "v1.1.4",
            "v1.1.3-draft.0",
            "v1.1.3",
            "v1.1.2-draft.0",
            "v1.1.2",
            "v1.1.1-draft.0",
            "v1.1.1",
            "v1.1.0-draft.0",
            "v1.1.0",
            "v1.0.7-draft.0",
            "v1.0.7",
            "v1.0.6-draft.4",
            "v1.0.6",
            "v1.0.6-draft.3",
            "v1.0.6-draft.2",
            "v1.0.6-draft.1",
            "v1.0.6-draft.0",
            "v1.0.5-draft.0",
            "v1.0.5",
            "v1.0.4-draft.0",
            "v1.0.4",
            "v1.0.3-draft.0",
            "v1.0.3",
            "v1.0.2-draft.0",
            "v1.0.2",
            "v1.0.1-draft.0",
            "v1.0.1",
            "v1.0.0-draft.1",
            "v1.0.0",
            "v1.0.0-draft.0",
            "v0.15.6-draft.0",
            "v0.15.6",
            "v0.15.5-draft.0",
            "v0.15.5",
            "v0.15.4-draft.0",
            "v0.15.4",
            "v0.15.3-draft.1",
            "v0.15.3",
            "v0.15.3-draft.0",
            "v0.15.2-draft.0",
            "v0.15.2",
            "v0.15.1-draft.0",
            "v0.15.1",
            "v0.15.0-draft.0",
            "v0.15.0",
            "v0.14.1-draft.0",
            "v0.14.0-draft.0",
            "v0.14.0",
            "v0.13.2-draft.0",
            "v0.13.2",
            "v0.13.1-draft.0",
            "v0.13.1",
            "v0.13.0-draft.1",
            "v0.13.0",
            "v0.13.0-draft.0",
            "v0.12.1-draft.0",
            "v0.12.1",
            "v0.12.0-draft.0",
            "v0.12.0",
            "v0.11.0-draft.2",
            "v0.11.0",
            "v0.11.0-draft.1",
            "v0.11.0-draft.0",
            "v0.10.1-draft.0",
            "v0.10.1",
            "v0.10.0-draft.0",
            "v0.10.0",
            "v0.9.0-draft.0",
            "v0.9.0",
            "v0.8.3-draft.4",
            "v0.8.3",
            "v0.8.3-draft.3",
            "v0.8.3-draft.2",
            "v0.8.3-draft.1",
            "v0.8.3-draft.0",
            "v0.8.2-draft.0",
            "v0.8.2",
            "v0.8.1-draft.3",
            "v0.8.1",
            "v0.8.1-draft.2",
            "v0.8.0-draft.8",
            "v0.8.0-draft.7",
            "v0.8.0-draft.6",
            "v0.8.0-draft.11",
            "v0.8.0",
            "v0.8.0-draft.9",
            "v0.8.0-draft.10",
            "v0.8.0-draft.5",
            "v0.8.0-draft.4",
            "v0.8.0-draft.3",
            "v0.8.0-draft.2",
            "v0.8.0-draft.1",
            "v0.8.0-draft.0",
            "v0.7.7",
            "v0.7.6",
            "v0.7.5",
            "v0.7.4",
            "v0.7.3",
            "v0.7.2-draft.1",
            "v0.7.2",
            "v0.7.1-draft.1",
            "v0.7.1",
            "v0.7.0-draft.9",
            "v0.7.0",
            "v0.7.0-draft.8",
            "v0.7.0-testrelease2",
            "v0.7.0-draft.7",
            "v0.7.0-testrelease1",
            "v0.7.0-draft.6",
            "v0.7.0-draft.5",
            "v0.7.0-draft.4",
            "v0.7.0-draft.3",
            "v0.7.0-testrelease",
            "v0.7.0-draft.2",
            "v0.7.0-draft.1",
            "v0.6.1",
            "v0.6.0",
            "v0.5.2",
            "v0.5.1",
            "v0.5.0",
            "v0.4.2",
            "v0.4.1",
            "v0.4.0",
            "v0.3.1",
            "v0.3.0",
            "v0.2.2",
            "v0.2.1",
            "v0.2.0",
            "v0.1.0",
            "v0.0.8",
            "v0.0.7",
            "v0.0.6",
            "v0.0.5",
            "v0.0.4",
            "v0.0.3",
            "v0.0.2",
            "0.0.2",
            "v0.0.2-alpha.0",
            "v0.0.1",
            "v0.0.1-alpha.19",
            "v0.0.1-alpha.18",
            "v0.0.1-alpha.17",
            "v0.0.1-alpha.15",
            "v0.0.1-alpha.13",
            "v0.0.1-alpha.12",
            "v0.0.1-alpha.11",
            "v0.0.1-alpha.10",
            "v0.0.1-alpha.9",
            "v0.0.1-alpha.8",
            "v0.0.1-alpha.7",
            "v0.0.1-alpha.6",
            "v0.0.1-alpha.5",
            "v0.0.1-alpha.4",
            "v0.0.1-alpha.3",
            "v0.0.1-alpha.2",
            "v0.0.1-alpha.1",
            "v0.0.1-alpha.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-1691.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:37.866193149Z",
      "provider": "osv",
      "references": [
        "https://jira.mongodb.org/browse/MONGOSH-2024",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/1xxx/CVE-2025-1691.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2025-1691"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-74"
        ],
        "cna_assigner": "mongodb",
        "unresolved_ranges": [
          {
            "extracted_events": [
              {
                "range": [
                  {
                    "fixed": "2.3.9"
                  }
                ],
                "source": "AFFECTED_FIELD",
                "strategy": "StandardRange"
              }
            ]
          }
        ],
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/1xxx/CVE-2025-1691.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2025-1691",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 505376,
  "published_at": "2025-02-27T12:34:02.752+00:00"
}