PkgRadar

Package evidence

[email protected]

Obfuscation Density: high encoded/escaped-token density

Trust signals

Why this verdict

PkgRadar discounts a release’s score when public reputation argues against novel malware. The verdict above already reflects these — the panel just explains what was applied.

Versions published
244
First published
Feb 2026
Publisher
cyborgninja

Recommended action

Block this update

Static evidence trips multiple high-signal indicators. Quarantine the release until the publisher validates the change or you can rule out the indicators below.

Block this release in CIcurl · GitHub Actions

Fail the build when this package version is added or upgraded. Replace $PKGRADAR_TOKEN with a Pro / Team API key from your dashboard.

curl -fsS https://pkgradar.com/gate/npm \
  -H "Authorization: Bearer $PKGRADAR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"specs":["[email protected]"],"fail_on":"high"}'

GitHub Actions step:

- name: PkgRadar gate
  run: |
    curl -fsS https://pkgradar.com/gate/npm \
      -H "Authorization: Bearer ${{ secrets.PKGRADAR_TOKEN }}" \
      -H "Content-Type: application/json" \
      -d '{"specs":["[email protected]"],"fail_on":"high"}'
Publishercyborgninja
Artifact bytes4,599,211
Previous version4.21.0
Published2026-05-24T21:05:50.011Z
SHA-25655111add889e660c57dfbf5f51403338384b979cbb5513688f8d17df77fb3285

Why flagged

What the scanner saw

Obfuscation Density: high encoded/escaped-token density

Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.

Availability ledger

available

high
Last checked
highRisk
144Score
4.21.1Version
Status history (4 events)
  1. availableavailable · risk high · score 144 · status available -> available, risk high -> high, score 152 -> 144
  2. availableavailable · risk high · score 152 · status available -> available, risk high -> high, score 243 -> 152
  3. availableavailable · risk high · score 243 · status available -> available, risk high -> high, score 768 -> 243
  4. newavailable · risk high · score 768 · status changed

Related candidates

Linked campaigns and clusters

Repeated static TTPstale

Credential file access — matched "aws_secret_access_key"

11 members · evidence strength 90
Publisher / release actor burststale

cyborgninja

5 members · evidence strength 84

Evidence

Static findings

98 static · 0 from release diff · showing high-signal first.

SeverityKindPathDetailPoints
mediumObfuscation Densitypackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/comment-json/index.jshigh encoded/escaped-token density12
mediumRemote Payloadpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/lib/mkcert.jsmatched "github.com/FiloSottile/mkcert/releases/download"12
Show all 98 findings (low-signal and informational)

Showing 60 of 98 findings.

SeverityKindPathDetailPoints
mediumObfuscation Densitypackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/comment-json/index.jshigh encoded/escaped-token density12
mediumRemote Payloadpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/lib/mkcert.jsmatched "github.com/FiloSottile/mkcert/releases/download"12
lowCredential file accesspackage/dist/audit/dependency-scanner.jsmatched ".ssh"5
lowCredential file accesspackage/dist/xray/findings-store.jsmatched ".ssh"5
lowCredential file accesspackage/dist/defence/skill-scanner/scan-skill.jsmatched ".ssh"5
lowInstall-time lifecycle scriptpackage.jsonpostinstall="node scripts/postinstall.mjs"5
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/zod/index.cjsmatched "atob("3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__883523b7._.jsmatched "\\x1b"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__c95102dd._.jsmatched "\\u0009"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/static/chunks/2d55e8cb58d80df0.jsmatched "\\xd7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/static/chunks/40c1a2122c341c45.jsmatched "\\xb7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/static/chunks/43d761df92da7cb6.jsmatched "\\u00C0"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/static/chunks/4d0b86f6afedd8b5.jsmatched "\\xb7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/static/chunks/8d4a0f601450b091.jsmatched "\\xb7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/static/chunks/a092294b7089c7a6.jsmatched "\\xb7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/static/chunks/a6dad97d9634a72d.jsmatched "\\u2028"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.jsmatched "fromCharCode"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.jsmatched "fromCharCode"3
lowObfuscationpackage/dist/cli/audit.jsmatched "\\x1b"3
lowObfuscationpackage/dashboard/.next/standalone/node_modules/source-map-support/browser-source-map-support.jsmatched "fromCharCode"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/server/resume-data-cache/cache-store.jsmatched "atob("3
lowObfuscationpackage/dist/license/cli.jsmatched "\\x1b"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/server/node-environment-extensions/console-dim.external.jsmatched "\\x1b"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/server/node-environment-extensions/console-file.jsmatched "\\u001b"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_c219bf07._.jsmatched "\\xb7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_replay_page_tsx_d2b20535._.jsmatched "\\xd7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_overview_page_tsx_8c105626._.jsmatched "\\xb7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_components_protection_ProtectionOverview_tsx_54554a97._.jsmatched "\\xb7"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_components_settings_SettingsView_tsx_16dc83a7._.jsmatched "\\xb7"3
lowObfuscationpackage/dist/cli/doctor.jsmatched "\\x1b"3
lowObfuscationpackage/dist/setup/doctor.jsmatched "\\x1b"3
lowObfuscationpackage/dist/defence/firewall/encoding-detector.jsmatched "\\u200B"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/server/app-render/encryption-utils.jsmatched "fromCharCode"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/server/app-render/encryption.jsmatched "atob("3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/build/webpack/plugins/eval-source-map-dev-tool-plugin.jsmatched "eval("3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.jsmatched "\\x1B"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/experimental/testmode/fetch.jsmatched "Buffer.from(body, 'base64"3
lowObfuscationpackage/dist/xray/file-scanner.jsmatched "\\u200b"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/build/babel/loader/get-config.jsmatched "\\x00"3
lowObfuscationpackage/dist/xray/guidance.jsmatched "eval("3
lowObfuscationpackage/dist/environment/hidden-detector.jsmatched "\\u202A"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/server/htmlescape.jsmatched "\\u0026"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/lib/metadata/generate/icon-mark.jsmatched "\\xab"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/@next/env/dist/index.jsmatched "Buffer.from(e,\"base64"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/build/webpack/loaders/next-app-loader/index.jsmatched "Buffer.from(middlewareConfigBase64, 'base64"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/build/webpack/loaders/next-edge-app-route-loader/index.jsmatched "Buffer.from(appDirLoaderBase64, 'base64"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/build/webpack/loaders/next-edge-ssr-loader/index.jsmatched "Buffer.from(middlewareConfigBase64, 'base64"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/@hapi/accept/index.jsmatched "\\u2028"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/babel-code-frame/index.jsmatched "\\u0080"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/busboy/index.jsmatched "fromCharCode"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/commander/index.jsmatched "\\ufeff"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/comment-json/index.jsmatched "\\x00"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/conf/index.jsmatched "\\x00"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/content-disposition/index.jsmatched "\\x00"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/cookie/index.jsmatched "\\u0009"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/edge-runtime/index.jsmatched "\\x20"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/jsonwebtoken/index.jsmatched "\\x00"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/picomatch/index.jsmatched "\\x00"3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/send/index.jsmatched "Eval("3
lowObfuscationpackage/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/strip-ansi/index.jsmatched "\\u001B"3

Manifest

Package metadata

Scripts21
  • audit:securitynpm audit --audit-level=moderate
  • benchtsx benchmark/longmemeval/run.ts
  • bench:smokeSHIELDCORTEX_SKIP_EMBEDDINGS=1 tsx benchmark/longmemeval/run.ts --quiet
  • bootstrap:dashboardnode -e "if (!require('fs').existsSync('dashboard/node_modules')) { process.exit(1); }" || (cd dashboard && npm ci --no-audit --no-fund)
  • buildnpm run build:ts && npm run build:dashboard
  • build:dashboardnpm run bootstrap:dashboard && cd dashboard && npm run build && (cp -r .next/static .next/standalone/dashboard/.next/ 2>/dev/null || true) && (cp -r public .next/standalone/dashboard/ 2>/dev/null || true) && cd .. && node scripts/prune-dashboard-standalone.mjs
  • build:tsnode -e "fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('plugins/openclaw/dist', { recursive: true, force: true })" && tsc -p tsconfig.build.json && tsc -p tsconfig.openclaw-plugin.json && cp plugins/openclaw/openclaw.plugin.json plugins/openclaw/dist/ && cp src/database/schema.sql dist/database/
  • devtsx src/index.ts
  • dev:apitsx src/index.ts --mode api
  • dev:dashboardtsx src/index.ts --dashboard
  • postbuild:tsnode scripts/ensure-bin-executable.mjs
  • postinstallnode scripts/postinstall.mjs
  • prepacknode scripts/ensure-bin-executable.mjs
  • prepublishOnlynpm run build
  • startnode dist/index.js
  • start:apinode dist/index.js --mode api
  • start:dashboardnode dist/index.js --dashboard
  • testnode scripts/run-jest.mjs
  • test:coveragenode scripts/run-jest.mjs --coverage
  • test:watchnode scripts/run-jest.mjs --watch
  • watchtsc --watch
Dependencies9
  • @huggingface/transformers^3.7.2
  • @modelcontextprotocol/sdk^1.0.0
  • better-sqlite3^12.0.0
  • cors^2.8.5
  • express^4.21.0
  • safe-regex2^5.0.0
  • semver^7.7.0
  • ws^8.18.0
  • zod^3.23.0