@nocobase/cli-v1@2.2.30
<video width="100%" controls> <source src="https://github.com/user-attachments/assets/4d11a87b-00e2-48f3-9bf7-389d21072d13" type="video/mp4"> </video>
AI Security Review
scanned 15h ago · by lpm-firewall-aiThe package has a concrete credential-forwarding risk when its package URL or returned tarball URL is untrusted. The explicit command and package-service default limit the concern, but the source does not bind credentials or the token to an approved destination.
Decision evidence
public snapshot- The explicit `pkg download-pro` command can load an environment-bound saved license key or credentials from environment variables.
- The command accepts an unrestricted `NOCOBASE_PKG_URL` override and passes the selected credentials to that endpoint’s login route.
- The returned bearer token is sent to the metadata endpoint and to the tarball URL supplied by that metadata, without destination validation.
- The credential transfer requires the user to invoke `pkg download-pro` and provide credentials or have a saved license key; the default endpoint is the NocoBase package service.
- The source checks that a saved license key matches the current environment before using it.
Source & flagged code
11 flagged · loading sourcePackage source references child process execution.
src/commands/e2e.jsView on unpkg · L11Package source invokes a package manager install command at runtime.
src/commands/e2e.jsView on unpkg · L123Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/commands/e2e.jsView on unpkgFindings
Affected versions and remediation
This report applies to @nocobase/cli-v1@2.2.30.
See all versions of @nocobase/cli-v1 for other recorded verdicts.
- Review the evidence and your use of @nocobase/cli-v1@2.2.30 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.