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
- 25
- First published
- Jan 2026
- Publisher
- jiamao
Recommended action
Block this updateStatic 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"}'Why flagged
What the scanner saw
Webhook Exfil Endpoint: matched "ngrok.app"
Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.
Availability ledger
available
Status history (1 event)
- new → available · risk high · score 102 · status changed
Evidence
Static findings
9 static · 0 from release diff · showing high-signal first.
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/dist/psl.cjs | matched "ngrok.app" | 40 |
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/dist/psl.umd.cjs | matched "ngrok.app" | 40 |
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/data/rules.js | matched "ngrok.app" | 40 |
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/dist/psl.mjs | matched "ngrok.app" | 40 |
| high | Credential File Packaged | package/bin/docker/.env | package/bin/docker/.env | 35 |
| medium | Remote Payload | package/dist/node_modules/.pnpm/[email protected]/node_modules/better-sqlite3/deps/download.sh | matched "curl " | 12 |
Show all 9 findings (low-signal and informational)
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/dist/psl.cjs | matched "ngrok.app" | 40 |
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/dist/psl.umd.cjs | matched "ngrok.app" | 40 |
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/data/rules.js | matched "ngrok.app" | 40 |
| high | Webhook Exfil Endpoint | package/dist/node_modules/.pnpm/[email protected]/node_modules/psl/dist/psl.mjs | matched "ngrok.app" | 40 |
| high | Credential File Packaged | package/bin/docker/.env | package/bin/docker/.env | 35 |
| medium | Remote Payload | package/dist/node_modules/.pnpm/[email protected]/node_modules/better-sqlite3/deps/download.sh | matched "curl " | 12 |
| low | Credential file access | package/dist/node_modules/.pnpm/[email protected]/node_modules/aws4/aws4.js | matched "AWS_ACCESS_KEY" | 5 |
| low | Large Javascript Payload | package/dist/public/explorer.js | 2334735 bytes | 0 |
| low | Obfuscation Density | package/dist/pnpm-lock.yaml | high encoded/escaped-token density | 0 |
Manifest
Package metadata
Scripts24
buildnpm run build-onlybuild-onlyvite build && npm run build-serverbuild-servertsc -p tsconfig.server.jsonbuild:allnpm run build && npm run build:vscode && npm run build:vscode:extensionbuild:server:pkgncc build server/index.ts -o dist/server/pkgbuild:vscodevite build --config vite.config.vscode.tsbuild:vscode:extensioncd packages/vscode && npm run compiledevvitelinteslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignoremove-assetsnode move-assets.cjsnw:buildnode scripts/nw-build.jsnw:build:linuxnode scripts/nw-build.js --platform=linuxnw:build:osxnode scripts/nw-build.js --platform=osxnw:build:winnode scripts/nw-build.js --platform=winnw:devnode scripts/nw-dev.jspkg:servercd d:/code/ycnull/db_tool && pkg dist/server/index.js -t node18-win-x64 -o dist/server/server.exepreviewvite previewrestartpm2 restart fdb2-server --disable-logs --startpm2 start server.js --name fdb2-server --disable-logs --stoppm2 stop fdb2-server --test:unitvitesttype-checkvue-tsc --noEmit --composite falsevscode:devcd packages/vscode && npm run watchvscode:packagecd packages/vscode && vsce package
Dependencies10
@fefeding/common^1.0.60axios^1.16.1dayjs^1.11.20express^5.2.1mysql2^3.22.3oracledb^6.10.0pg^8.21.0reflect-metadata^0.2.2typeorm^0.3.30vue-i18n^11.4.4
Optional dependencies1
better-sqlite3^11.10.0