mal-2026-14345
Vulnerability from ossf_malicious_packages
Published
2026-08-21 03:56
Modified
2026-08-21 03:56
Summary
Malicious code in express-session-handler (npm)
Details

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

Source: amazon-inspector (0e94450f5541b39d8310a8b640dee027b0970db6e7cf724352726d49393bfb77)

The package advertises itself as an Express session middleware but on module load unconditionally invokes an initPlugin() routine in index.js that performs an HTTPS fetch to https://api.jsonbin.io/v3/b/6a4f5816f5f4af5e29762c92, parses the response, extracts the record.cerookie field, and passes the resulting string to Function.constructor with require bound as an argument, executing attacker-controlled JavaScript in the installer's Node.js process. The remote document is mutable and controlled by whoever owns that jsonbin bin, so the code executed on any host that requires this module can be changed at any time. The file is prefaced with a '/! normalize-path (ES6 safe version) /' header and ships an unused normalizePath helper alongside the loader, presenting a cover story unrelated to the actual behavior.

CWE
  • 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"
          }
        ],
        "indicators": {
          "evidence_files": [
            {
              "path": "index.js",
              "sha256": "d5fb9d5f33e208b9ba37dc361cfc2dbf51a2c64ed0c5a890c95bd2da587a0cca",
              "tlsh": "4a41e1d924fa6115c1a3e1810e8f8409f22be1133359dac5b98c53546fd07b8a7f2b8a"
            }
          ],
          "package_integrity": [
            {
              "filename": "express-session-handler-2.3.3.tgz",
              "hashes": {
                "sha1": "d9baf7f930c9aeffa22dc99ccd07feed6d3fe308",
                "sha512_sri": "sha512-WpGlAwr+QSerdM3G4sP7UzGUgGoIKvADToUf4pCQ9wHWngCiK+2bGSQHH7COcp/LlOM1o2+PGatORN92ARXRJQ=="
              }
            }
          ]
        }
      },
      "package": {
        "ecosystem": "npm",
        "name": "express-session-handler"
      },
      "versions": [
        "2.3.3"
      ]
    }
  ],
  "credits": [
    {
      "contact": [
        "inspector-research@amazon.com"
      ],
      "name": "Amazon Inspector",
      "type": "FINDER"
    }
  ],
  "database_specific": {
    "malicious-packages-origins": [
      {
        "id": "IN-MAL-2026-018494",
        "import_time": "2026-08-21T04:19:06.268270265Z",
        "modified_time": "2026-08-21T03:56:39Z",
        "sha256": "0e94450f5541b39d8310a8b640dee027b0970db6e7cf724352726d49393bfb77",
        "source": "amazon-inspector",
        "versions": [
          "2.3.3"
        ]
      }
    ]
  },
  "details": "\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (0e94450f5541b39d8310a8b640dee027b0970db6e7cf724352726d49393bfb77)\nThe package advertises itself as an Express session middleware but on module load unconditionally invokes an initPlugin() routine in index.js that performs an HTTPS fetch to https://api.jsonbin.io/v3/b/6a4f5816f5f4af5e29762c92, parses the response, extracts the record.cerookie field, and passes the resulting string to Function.constructor with require bound as an argument, executing attacker-controlled JavaScript in the installer\u0027s Node.js process. The remote document is mutable and controlled by whoever owns that jsonbin bin, so the code executed on any host that requires this module can be changed at any time. The file is prefaced with a \u0027/*! normalize-path (ES6 safe version) */\u0027 header and ships an unused normalizePath helper alongside the loader, presenting a cover story unrelated to the actual behavior.\n",
  "id": "MAL-2026-14345",
  "modified": "2026-08-21T03:56:39Z",
  "published": "2026-08-21T03:56:39Z",
  "references": [
    {
      "type": "PACKAGE",
      "url": "https://www.npmjs.com/package/express-session-handler/v/2.3.3"
    }
  ],
  "schema_version": "1.7.4",
  "summary": "Malicious code in express-session-handler (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…

Loading…