# MAL-2026-17872: Malicious code in @newspage/lib-ng-async-routes-ui (npm)


- **Type:** Malicious package
- **Package:** `@newspage/lib-ng-async-routes-ui` (npm)
- **Published:** 13 Oct 2026

## What is MAL-2026-17872?

MAL-2026-17872 is a malicious package in @newspage/lib-ng-async-routes-ui, published on 13 Oct 2026. 

### Official description

npm user 'priyashareek' published this package in a dependency confusion campaign against the internal scopes @accenturecodefoundry and @newspage. The publisher used 99.99.x versions to outrank the internal packages. 0.0.0-stage and 99.99.1 are empty placeholders. In version 99.99.4, index.js sends an HTTPS GET to attacker-controlled host accenture-npm.azurewebsites.net (/async). The same publisher's @accenturecodefoundry/mfe-pot-shared-ui-scds-core calls back to that host. The 'preinstall' script in these versions is empty; the publisher put 'node index.js || true' in the 'main' field instead, likely by mistake. Node.js can't resolve that 'main' target and falls back to index.js, so the beacon fires when code requires or imports the package, not during install.

@newspage/lib-ng-async-routes-ui@99.99.4 is a dependency-confusion artifact. The scoped name impersonates an internal-sounding namespace, and the implausibly high version (99.99.4) is the standard technique for winning resolution against a lower-versioned private package of the same name. On require(), the main module unconditionally issues an HTTPS GET to the hardcoded host accenture-npm.azurewebsites.net at the path /async, causing any environment that resolves and loads the package to beacon out to that endpoint. The outbound request discloses source IP and request metadata to the operator of that Azure Web App, confirming to an external party that an internal build or developer machine has pulled a package under this scope. No first-party relationship or caller consent exists; the destination is an external Azure Web App, not an Accenture-controlled domain.

## What should I do about MAL-2026-17872?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

## Fix prompt for AI coding agents

```text
MAL-2026-17872 is a malicious package: @newspage/lib-ng-async-routes-ui (npm). Every version was published to cause harm.

Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.

Reference: https://insights.sbomify.com/MAL-2026-17872/ (Markdown: https://insights.sbomify.com/MAL-2026-17872/index.md)
```

## Sources

- OSV: https://osv.dev/vulnerability/MAL-2026-17872

---
From sbomify Insights: https://insights.sbomify.com/MAL-2026-17872/
Summaries are generated and may contain mistakes; the official description above is the record.
