T08 · Insecure Dependencies
- Location
SKILL.md:16- Finding
Execution of an Unverifiable Precompiled Dependency
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The Moodle purpose is clear, but the skill asks users to install an external binary and handle Moodle credentials and bulk course downloads in ways that need careful review.
Review this before installing. Prefer the interactive configuration flow, avoid putting Moodle passwords or token URLs in shell commands or chat transcripts, and confirm where credentials are stored. Treat whole-course syncs as bulk downloads of potentially sensitive material; choose a destination deliberately and avoid `--no-confirm` unless you have already reviewed the scope. Only run the downloaded binary if you trust the publisher and release provenance beyond the included checksum.
SKILL.md:16Execution of an Unverifiable Precompiled Dependency
SKILL.md:41Moodle Credentials Exposed Through Command-Line Arguments
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
URL="https://github.com/4strium/moodle-claw/releases/download/v1.0/moodle-claw"
SHA256="0ce9e6ad4e42c626ebe2c4ce79bde23da3386dc8e4b54a87da0a345a1a0252aa"
curl -L -o moodle-claw "$URL"
echo "$SHA256 moodle-claw" | sha256sum -c -
chmod +x moodle-claw
--no-confirm is a dangerous parameter in the context of a tool that can sync large sets of course files, because it suppresses an important safeguard before a write-heavy and potentially sensitive action. In an automated environment, this can be abused or accidentally triggered to perform unreviewed bulk exfiltration-like downloads to local storage.
moodle-claw sync "Course Name" [--dest ~/Courses] [--no-confirm]
moodle-claw sync # syncs all enabled courses
Downloads all files from a course.
The offline workflow recommends a --no-confirm full-course sync, which turns a high-impact parameter into the default operational path for the agent. This materially increases the risk of unintended mass download of educational content and associated privacy, storage, and compliance issues.
3. The extracted text will be included in the output for you to analyze
### When user wants to work offline
1. Sync the entire course: `moodle-claw sync "Course Name" --no-confirm`
2. Files will be available locally for reading
## Output Formats
The example command for downloading all course files includes --no-confirm, directly modeling use of a risky parameter for bulk content acquisition. In practice, this can facilitate unreviewed collection of potentially sensitive course materials and make misuse by an automated assistant more likely.
User: "Télécharge tous les fichiers du cours de physique"
moodle-claw sync "Physique" --no-confirm
The setup instructions ask users to supply highly sensitive authentication material, including tokens, SSO redirect URLs containing access tokens, and usernames/passwords, without clear guidance on secure handling. In a skill or agent environment, these secrets may be exposed in command history, logs, transcripts, screenshots, or copied output, enabling account compromise.
The skill encourages downloading individual files and syncing entire courses to local storage, but it does not clearly warn that these actions write potentially large amounts of course data onto the host machine. In an agent setting, this can lead to unintended bulk data collection, privacy issues, disk consumption, and persistence of sensitive educational materials beyond the user's expectations.
Documenting --no-confirm for course sync lowers the barrier to unattended bulk actions and encourages operation without an interactive safety check. In an agent-driven workflow, that can enable accidental or over-broad downloads of course materials without the user reviewing scope, destination, or data sensitivity.
moodle-claw sync "Course Name" [--dest ~/Courses] [--no-confirm]
moodle-claw sync # syncs all enabled courses
Downloads all files from a course.
The usage pattern explicitly recommends syncing an entire course with --no-confirm for offline work, normalizing unattended mass download behavior. This increases the chance that an automated assistant performs broad local data collection without meaningful user review.
3. The extracted text will be included in the output for you to analyze
### When user wants to work offline
1. Sync the entire course: `moodle-claw sync "Course Name" --no-confirm`
2. Files will be available locally for reading
## Output Formats
The example response to downloading all physics course files uses --no-confirm, reinforcing autonomous execution of a potentially sensitive and high-volume action. For agent users, this can bypass a natural checkpoint before writing many files locally.
User: "Télécharge tous les fichiers du cours de physique"
moodle-claw sync "Physique" --no-confirm
No suspicious patterns detected.