mal-2026-17806
Vulnerability from ossf_malicious_packages
Published
2026-10-12 00:57
Modified
2026-10-13 06:42
Summary
Malicious code in ap3-foundations-ui (npm)
Details

ap3-foundations-ui describes itself as a security research PoC for dependency confusion and does not identify an upstream package it copies. Its preinstall hook runs node index.js during npm install; the script sends the package name and version, hostname, username, home directory, working directory, platform, architecture, and CI flag to https://webhook.site/7dbd5e4e-3156-427f-b383-30c14d845587. The npm account vikkuthetester22 published it on 2026-10-12.


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

Source: amazon-inspector (7469eefaab624821647b4e412c4ceac1f422d4857b8484767041fdc355398477)

The package's preinstall hook runs index.js, which collects installer host identifiers (os.hostname(), os.userInfo().username, os.homedir(), process.cwd(), os.platform(), os.arch(), and process.env.CI) and POSTs them as JSON to a hardcoded third-party collector at https://webhook.site/7dbd5e4e-3156-427f-b383-30c14d845587. The behavior fires automatically on npm install without caller consent. The package is published at version 99.0.1 under a name consistent with an internal/private namespace, matching the shape of a dependency-confusion beacon used to confirm successful name hijack in a target environment. The exfiltrated fields identify the installing host, user account, working directory, and CI status — information useful for targeting follow-on attacks against the organization whose build pulled the 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.

{
  "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"
          }
        ],
        "indicators": {
          "evidence_files": [
            {
              "path": "index.js",
              "sha256": "289c3b12fdd5798f6c38b731035ab96abc736f80a0c226d279fd96ebfbe2075a",
              "tlsh": "9f1140e016b16b300ff69bc13885dd0512b6e522b10f7de0bb8912e4578e6f900729f9"
            }
          ],
          "package_integrity": [
            {
              "filename": "ap3-foundations-ui-99.0.1.tgz",
              "hashes": {
                "sha1": "7d9d180ba806adbf9ad68bf58e8e14296f096ec3",
                "sha512_sri": "sha512-66vCx1gasRYVhVMz5QOAWWJq/ff7sSK+LkQx0mAJhbc+pt9RjkAsHiXNXUpVjIDA003Yy3SHkYN8akmlLis7EQ=="
              }
            }
          ]
        }
      },
      "package": {
        "ecosystem": "npm",
        "name": "ap3-foundations-ui"
      },
      "versions": [
        "99.0.1"
      ]
    }
  ],
  "credits": [
    {
      "contact": [
        "inspector-research@amazon.com"
      ],
      "name": "Amazon Inspector",
      "type": "FINDER"
    },
    {
      "contact": [
        "https://www.invisirisk.com",
        "mailto:research@invisirisk.com"
      ],
      "name": "InvisiRisk, Inc.",
      "type": "FINDER"
    }
  ],
  "database_specific": {
    "iocs": {
      "files": [
        {
          "digests": {
            "sha256": "44180ea5d9e3df9978bc4c5a0be8635656f7ca8b73e9ddd9e1d384d673e53604"
          },
          "note": "preinstall script: node index.js",
          "paths": [
            "package.json"
          ],
          "source": "PACKAGE_ARCHIVE"
        },
        {
          "digests": {
            "sha256": "289c3b12fdd5798f6c38b731035ab96abc736f80a0c226d279fd96ebfbe2075a"
          },
          "note": "Executed by the preinstall script of ap3-foundations-ui@99.0.1.",
          "paths": [
            "index.js"
          ],
          "source": "PACKAGE_ARCHIVE"
        }
      ],
      "urls": [
        "https://webhook.site/7dbd5e4e-3156-427f-b383-30c14d845587"
      ]
    },
    "malicious-packages-origins": [
      {
        "id": "IN-MAL-2026-021459",
        "import_time": "2026-10-12T04:58:42.447698328Z",
        "modified_time": "2026-10-12T04:56:13Z",
        "sha256": "7469eefaab624821647b4e412c4ceac1f422d4857b8484767041fdc355398477",
        "source": "amazon-inspector",
        "versions": [
          "99.0.1"
        ]
      }
    ]
  },
  "details": "ap3-foundations-ui describes itself as a security research PoC for dependency confusion and does not identify an upstream package it copies. Its `preinstall` hook runs `node index.js` during `npm install`; the script sends the package name and version, hostname, username, home directory, working directory, platform, architecture, and CI flag to `https://webhook.site/7dbd5e4e-3156-427f-b383-30c14d845587`. The npm account vikkuthetester22 published it on 2026-10-12.\n\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (7469eefaab624821647b4e412c4ceac1f422d4857b8484767041fdc355398477)\nThe package\u0027s preinstall hook runs index.js, which collects installer host identifiers (os.hostname(), os.userInfo().username, os.homedir(), process.cwd(), os.platform(), os.arch(), and process.env.CI) and POSTs them as JSON to a hardcoded third-party collector at https://webhook.site/7dbd5e4e-3156-427f-b383-30c14d845587. The behavior fires automatically on `npm install` without caller consent. The package is published at version 99.0.1 under a name consistent with an internal/private namespace, matching the shape of a dependency-confusion beacon used to confirm successful name hijack in a target environment. The exfiltrated fields identify the installing host, user account, working directory, and CI status \u2014 information useful for targeting follow-on attacks against the organization whose build pulled the package.\n",
  "id": "MAL-2026-17806",
  "modified": "2026-10-13T06:42:15.615864642Z",
  "published": "2026-10-12T00:57:37Z",
  "references": [
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/ap3-foundations-ui/v/99.0.1"
    },
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/ap3-foundations-ui"
    }
  ],
  "schema_version": "1.7.4",
  "summary": "Malicious code in ap3-foundations-ui (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…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…