Skip to content
Heist/ feed
Unrated

Malicious code in nebula-llm (npm)

Type: advisorySource: OSV1 source record

--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (b33da6aef41209f654f8f76cc56074a7b827599f42f941e3917326da1f4d2566) The npm package nebula-llm@1.0.0 ships a preinstall lifecycle script (preinstall.cjs) that embeds a ~257KB Windows PE binary as a base64+zlib-compressed string literal. On `npm install` on Windows, the script decompresses the blob, writes it to %LOCALAPPDATA%\Microsoft\Conhost\conhost.exe — impersonating the legitimate Windows Console Host binary — and spawns it detached with stdio ignored and windowsHide:true, then unrefs the child so it survives the install process. The decoded PE contains a.kntrat section and references github.com/syskiel/kntrat-e and IP 65.87.7.132, consistent with a persistent remote-access implant. Installation therefore executes an opaque author-supplied executable on the installer's host with no user interaction and no purpose related to any documented package function.

Announced Group revision 1
Original source ↗

MAL-2026-17227

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: osv:MAL-2026-17227

nebula-llm

Source reference: /affected/0/package/name

Affected versions
1.0.0

Source reference: /affected/0/versions

Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "package": {
      "name": "nebula-llm",
      "purl": "pkg:npm/nebula-llm",
      "ecosystem": "npm"
    },
    "versions": [
      "1.0.0"
    ],
    "database_specific": {
      "cwes": [
        {
          "name": "Embedded Malicious Code",
          "cweId": "CWE-506",
          "description": "The product contains code that appears to be malicious in nature."
        }
      ],
      "source": "https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/nebula-llm/MAL-2026-17227.json",
      "indicators": {
        "evidence_files": [
          {
            "path": "preinstall.cjs",
            "tlsh": "24e312267c5990351b18a613f83217257b336259152cd9363b3a08c709fad98cf7bebb",
            "sha256": "8bc90df9b387849338d9c61a8d379cfbb0d70ea576c0e37e1fb07ba164921807"
          }
        ],
        "package_integrity": [
          {
            "hashes": {
              "sha1": "032b6edad3b60be8102d88680b33f5c1a600f4c2",
              "sha512_sri": "sha512-yA376+kosqW6rFrXJalk3pXFXCvpBNopJm/Rf1Jr7Ltk7F7YV8p3EVAV+pdWcmO1APU48UJPviUqpajDHQ74Lg=="
            },
            "filename": "nebula-llm-1.0.0.tgz"
          }
        ]
      }
    }
  }
]

Publisher severity

No explicit severity was provided.

Event
#23569 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement