{"id":"MAL-2026-17770","revision":"20c5c16eaa084d3284efec5339ef7433","records":[{"revision":"20c5c16eaa084d3284efec5339ef7433","observedAt":"2026-10-24T13:17:17.793+00:00","statement":{"source":"osv","id":"MAL-2026-17770","aliases":[],"title":"Malicious code in ksp-app (npm)","description":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (b14a9fbd9fc1a48dc3ac0498f9606cecb1a56bad912c7f8a818fad332ef9ad15)\nksp-app@100.100.100 is a dependency-confusion-shaped npm package whose only payload is an opaque prebuilt Linux x64 native addon loaded at install time. package.json declares scripts.postinstall=\"node postinstall.js\", which require()s prebuilds/linux-x64/addon.node. The tarball ships no C/C++ source, no binding.gyp, and no build tooling; index.js exports an empty object, so the entire package behavior is in the native binary. On load, the ELF addon reads the environment variables HOSTNAME, npm_package_name, and npm_config_registry and POSTs them over a raw socket to the hardcoded bare-IP endpoint http://64.181.165.115/dc (HTTP/1.0, Host: 64.181.165.115, format string h=%.40s&p=%.40s&u=%.20s&r=%.80s). The version string 100.100.100, inert JS stub, generic \"Frontend utilities\" description, and a beacon that reports the installer's configured npm registry are the signature of a dependency-confusion exfiltration package used to confirm installs inside victim environments and disclose internal registry URLs to a third party.\n","state":0,"publishedAt":"2026-10-11T13:57:22+00:00","modifiedAt":"2026-10-11T14:30:09.1744519+00:00","affected":[{"ecosystem":"npm","name":"ksp-app","ranges":[],"versions":["100.100.100"],"rawVersionEvidence":null}],"metrics":[],"references":["https://www.npmjs.com/package/ksp-app/v/100.100.100"],"sourceUrl":"https://osv.dev/vulnerability/MAL-2026-17770","license":"OSV · upstream source license applies","key":"osv:MAL-2026-17770","identifiers":["MAL-2026-17770"]},"retained":false,"historicalAffected":[]}],"coverage":[]}