T08 · Insecure Dependencies
- Location
SKILL.md:174- Finding
Unpinned Python Package Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:174
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumComplete Code Snippet:
markdown **Software**: COLMAP (SfM+MVS standard), ORB-SLAM3/BLEPS (visual SLAM), LIO-SAM/FAST-LIO2 (LiDAR SLAM), FreeMoCap (AGPL-3.0, markerless MoCap from webcams, outputs .trc/.c3d/.fbx, `pip install freemocap`)Technical Analysis
The documented command installs
freemocapwithout pinning an exact version or verifying package integrity. Package registry resolution is mutable, so users executing this command may receive a release that did not exist when the Skill was reviewed. Python package installation can execute package-controlled build hooks or installation logic.This is a supply-chain weakness rather than evidence that the current
freemocappackage is malicious. Exploitation depends on compromise or takeover of the package, its publishing account, the registry, or a transitive dependency.Attack Path
- An attacker compromises the package, a maintainer account, or a transitive dependency and publishes a malicious release.
- A user follows the Skill guidance and runs
pip install freemocap. pipresolves the current mutable release rather than a previously reviewed version.- Malicious build or installation logic executes under the privileges of the user running
pip. - The payload can access resources available to that user and may install additional components.
Impact Assessment
Successful exploitation could execute arbitrary code with the invoking user's privileges. The accessible scope may include user-owned files, project data, environment variables, network credentials available to the process, and writable Python environments. Administrator-level impact would require the user to run the command with elevated privileges; the Skill does not explicitly instruct elevation.
- Remediation
View remediation
Remediation Suggestions
- Pin
freemocapto an explicitly reviewed version. - Install it inside a dedicated virtual environment rather than into a shared interpreter.
- Provide a lockfile or constraints file with cryptographic hashes and install with
pip --require-hashes. - Document the expected official package registry and project source.
- Review direct and transitive dependencies before updating the pinned version.
- Avoid running package installation with administrator or root privileges.
- Pin
