MAL-2026-13611
Vulnerability from ossf_malicious_packages
Published
2026-08-07 13:47
Modified
2026-08-07 14:28
Summary
Malicious code in mangomind-agent (npm)
Details

-= Per source details. Do not edit below this line.=-

Source: amazon-inspector (6512bd1cea27977e679186d569d524555fdf0ed5ea9e4b965aa640b1ae8326cb)

src/index.js opens a persistent WebSocket to a hardcoded default relay at wss://relay.mangomindbd.com and dispatches on message types received from that remote endpoint. On messages of type 'diagnosis' with autoFix set, the handler passes msg.fixCommand — a string chosen by whoever controls the relay — directly to child_process.execSync on the local machine (timeout 120000ms), yielding full-host command execution under the user running the agent. On messages of type 'opencode_request', the handler forwards attacker-chosen HTTP method, path, and body to a locally-spawned opencode AI coding agent bound on 127.0.0.1 and returns its response, giving the same remote party a proxied channel to drive that agent's file and shell tool access against the installer's workspace. The relay hostname mangomindbd.com is also referenced from https://api.mangomindbd.com in the same file, and the module makes cross-platform curl/http.get/os.hostname calls consistent with host-context reporting to the relay. The remote-execution paths are gated only by an initial token handshake with the relay operator, so any party in control of relay.mangomindbd.com holds arbitrary RCE and AI-agent-driven filesystem access on every host running this package.

CWE
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
  • CWE-506 - The product contains code that appears to be malicious in nature.
Credits

{
  "affected": [
    {
      "database_specific": {
        "cwes": [
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          },
          {
            "cweId": "CWE-506",
            "description": "The product contains code that appears to be malicious in nature.",
            "name": "Embedded Malicious Code"
          }
        ],
        "indicators": {
          "evidence_files": [
            {
              "path": "src/index.js",
              "sha256": "0f74eafafaffca01af2a63dbdfecc0fd2e5ee28316cbaa9e64407c568a54f8e9",
              "tlsh": "5a824e3888b9112a7b43e26c9697502d3626b2533a192d507b8db3e85fcd43c50b37fd"
            },
            {
              "path": "src/autostart.js",
              "sha256": "9ddbcb282ad318cd6c8739fb8bd05c95cfdc54530423bc89c0ea11c723d4f2ff",
              "tlsh": "bcf1833991615a797b52c3bf15cf2406269bb067b801a8907bec749cafdec2841338fd"
            }
          ],
          "package_integrity": [
            {
              "filename": "mangomind-agent-0.1.8.tgz",
              "hashes": {
                "sha1": "32f3c03ee5c98e895551025fbc504dcb0991302c",
                "sha512_sri": "sha512-SKfYYlb8PLtRDKfbJSxU6YDwElvSGDw3TUIK/7TPN9+PL1wi4kBvKXVZd6qQhdLKcqGQ4f+3HGMh3CuxOMDhFw=="
              }
            }
          ]
        }
      },
      "package": {
        "ecosystem": "npm",
        "name": "mangomind-agent"
      },
      "versions": [
        "0.1.8",
        "0.1.2",
        "0.1.5",
        "0.1.1",
        "0.1.0",
        "0.1.4",
        "0.1.7",
        "0.2.0",
        "0.1.3",
        "0.2.1",
        "0.1.6",
        "0.1.9"
      ]
    }
  ],
  "credits": [
    {
      "contact": [
        "inspector-research@amazon.com"
      ],
      "name": "Amazon Inspector",
      "type": "FINDER"
    }
  ],
  "database_specific": {
    "malicious-packages-origins": [
      {
        "id": "IN-MAL-2026-017093",
        "import_time": "2026-08-07T14:26:55.197201565Z",
        "modified_time": "2026-08-07T13:47:30Z",
        "sha256": "0a820627a381b679977138fc6a5c6b0c3e14223edc94ad95540da892a732f899",
        "source": "amazon-inspector",
        "versions": [
          "0.1.8"
        ]
      },
      {
        "id": "IN-MAL-2026-017098",
        "import_time": "2026-08-07T14:26:55.507571993Z",
        "modified_time": "2026-08-07T13:48:08Z",
        "sha256": "1138420f285343ebe7ca653e0fc496ff6df0e82fea9757611f64776e9940c2f0",
        "source": "amazon-inspector",
        "versions": [
          "0.1.2"
        ]
      },
      {
        "id": "IN-MAL-2026-017092",
        "import_time": "2026-08-07T14:26:55.144307509Z",
        "modified_time": "2026-08-07T13:47:22Z",
        "sha256": "62dd36baa2ed2939bce3610e618a428a14a9c2ea99784813b4a36ab87e2621b6",
        "source": "amazon-inspector",
        "versions": [
          "0.1.5"
        ]
      },
      {
        "id": "IN-MAL-2026-017099",
        "import_time": "2026-08-07T14:26:55.574602281Z",
        "modified_time": "2026-08-07T13:48:16Z",
        "sha256": "6512bd1cea27977e679186d569d524555fdf0ed5ea9e4b965aa640b1ae8326cb",
        "source": "amazon-inspector",
        "versions": [
          "0.1.1"
        ]
      },
      {
        "id": "IN-MAL-2026-017097",
        "import_time": "2026-08-07T14:26:55.457072558Z",
        "modified_time": "2026-08-07T13:48:01Z",
        "sha256": "8a8208cd174e0307751e38c5eef81f1ae0846462d50364f44a862155207860d0",
        "source": "amazon-inspector",
        "versions": [
          "0.1.0"
        ]
      },
      {
        "id": "IN-MAL-2026-017095",
        "import_time": "2026-08-07T14:26:55.367990045Z",
        "modified_time": "2026-08-07T13:47:45Z",
        "sha256": "f6b9d85fd3ae05d7dd1103bfd87b5a2b3331c324f7e05a6efff025922bf13fa5",
        "source": "amazon-inspector",
        "versions": [
          "0.1.4"
        ]
      },
      {
        "id": "IN-MAL-2026-017096",
        "import_time": "2026-08-07T14:26:55.406479052Z",
        "modified_time": "2026-08-07T13:47:51Z",
        "sha256": "7bc7cbb3a5ae03743640f64295f706a906cf879bee18ebf1061d6c636efa7924",
        "source": "amazon-inspector",
        "versions": [
          "0.1.7"
        ]
      },
      {
        "id": "IN-MAL-2026-017101",
        "import_time": "2026-08-07T14:26:55.682966588Z",
        "modified_time": "2026-08-07T13:48:35Z",
        "sha256": "ae63365cb47ed8a6d2442c04be2f5828ce003a53fab3d3a4a2498f4f7b1be274",
        "source": "amazon-inspector",
        "versions": [
          "0.2.0"
        ]
      },
      {
        "id": "IN-MAL-2026-017094",
        "import_time": "2026-08-07T14:26:55.252366043Z",
        "modified_time": "2026-08-07T13:47:36Z",
        "sha256": "b94467feb1e9912a43e28661b777638d5445997a7c299152d792bf33407e38c2",
        "source": "amazon-inspector",
        "versions": [
          "0.1.3"
        ]
      },
      {
        "id": "IN-MAL-2026-017100",
        "import_time": "2026-08-07T14:26:55.618549591Z",
        "modified_time": "2026-08-07T13:48:28Z",
        "sha256": "e4b935a8a3b1227ebac8eee92165ea75600dfa3fbf3eece2969a5bbde299a4c6",
        "source": "amazon-inspector",
        "versions": [
          "0.2.1"
        ]
      },
      {
        "id": "IN-MAL-2026-017103",
        "import_time": "2026-08-07T14:26:55.818903002Z",
        "modified_time": "2026-08-07T13:48:51Z",
        "sha256": "ee9a565cd1c79c46d573acd39abcd3c1e9c3e9167632a322f485b0a25cb589b7",
        "source": "amazon-inspector",
        "versions": [
          "0.1.6"
        ]
      },
      {
        "id": "IN-MAL-2026-017102",
        "import_time": "2026-08-07T14:26:55.763271544Z",
        "modified_time": "2026-08-07T13:48:44Z",
        "sha256": "fa7568fdd1f991143971cfd19c3368bb2e41f99cf44c66bc72308ea32f0d7ffc",
        "source": "amazon-inspector",
        "versions": [
          "0.1.9"
        ]
      }
    ]
  },
  "details": "\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (6512bd1cea27977e679186d569d524555fdf0ed5ea9e4b965aa640b1ae8326cb)\nsrc/index.js opens a persistent WebSocket to a hardcoded default relay at wss://relay.mangomindbd.com and dispatches on message types received from that remote endpoint. On messages of type \u0027diagnosis\u0027 with autoFix set, the handler passes msg.fixCommand \u2014 a string chosen by whoever controls the relay \u2014 directly to child_process.execSync on the local machine (timeout 120000ms), yielding full-host command execution under the user running the agent. On messages of type \u0027opencode_request\u0027, the handler forwards attacker-chosen HTTP method, path, and body to a locally-spawned opencode AI coding agent bound on 127.0.0.1 and returns its response, giving the same remote party a proxied channel to drive that agent\u0027s file and shell tool access against the installer\u0027s workspace. The relay hostname mangomindbd.com is also referenced from https://api.mangomindbd.com in the same file, and the module makes cross-platform curl/http.get/os.hostname calls consistent with host-context reporting to the relay. The remote-execution paths are gated only by an initial token handshake with the relay operator, so any party in control of relay.mangomindbd.com holds arbitrary RCE and AI-agent-driven filesystem access on every host running this package.\n",
  "id": "MAL-2026-13611",
  "modified": "2026-08-07T14:28:45Z",
  "published": "2026-08-07T13:47:22Z",
  "references": [
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.8"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.2"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.5"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.1"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.0"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.4"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.7"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.2.0"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.3"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.2.1"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.6"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/mangomind-agent/v/0.1.9"
    }
  ],
  "schema_version": "1.7.4",
  "summary": "Malicious code in mangomind-agent (npm)"
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…