T08 · Insecure Dependencies
- Location
scripts/install.sh:12- Finding
Unpinned Third-Party Packages Create a Supply-Chain Execution Risk
- Content
View full analysis
/dev/null; then echo "Installing olcli via Homebrew..." brew tap aloth/tap brew install olcli echo "✓ Installed olcli $(olcli --version)" exit 0 fi # Fall back to npm if command -v npm &> /dev/null; then echo "Installing olcli via npm..." npm install -g @aloth/olcli echo "✓ Installed olcli $(olcli --version)" exit 0 fi ``` `SKILL.md:16-24`: ```bash ## Installation ```bash # Homebrew (recommended) brew tap aloth/tap && brew install olcli # npm npm install -g @aloth/olcli ``` ``` `README.md:25-39`: ```bash ## Installation ### For agents (via skills CLI) ```bash npx skills add aloth/overleaf-skill ``` ### CLI tool only **Homebrew (macOS/Linux):** ```bash brew tap aloth/tap && brew install olcli ``` **npm (all platforms):** ```bash npm install -g @aloth/olcli ``` ``` ### Technical Analysis The installation paths resolve mutable third-party content at installation time without an exact version, checksum, signature verification, or lockfile: - `brew tap aloth/tap` adds and trusts a custom Homebrew tap. - `brew install olcli` installs whatever formula version that tap currently supplies. - `npm install -g @aloth/olcli` installs the current package release globally and may execute package lifecycle scripts. - `npx skills add aloth/overleaf-skill` may dynamically retrieve and execute package-manager tooling and then install mutable Skill content. The audited project does not include the implementation of `olcli`, so the executable's runtime behavior cannot be verified from this artifact. There is no evidence that the currently referenced packages are malicious; the vulnerabi ...[truncated 1542 chars]- Remediation
View remediation
``` 2. Where possible, verify the package tarball against a published SHA-256 digest or cryptographic signature before installation. 3. Pin Homebrew installation to an immutable, reviewed formula revision or distribute a versioned bottle with checksum verification. 4. Avoid `npx` for security-sensitive bootstrap operations unless the executed package and version are explicitly pinned. 5. Publish and verify package provenance, such as npm provenance attestations and signed release artifacts. 6. Use a lockfile and dependency review process for any vendored or locally installed implementation. 7. Prefer a project-local or isolated installation over a global npm installation to reduce the affected scope. 8. Audit the separately distributed `@aloth/olcli` implementation, including its lifecycle scripts and transitive dependencies, before recommending it for sensitive Overleaf accounts. ]]>
