Back to skill

Security audit

Moodle Connector Skill

Security checks across malware telemetry and agentic risk

Overview

This appears to be a real Moodle connector, but it handles Moodle tokens, credential passwords, downloads, and local file writes with unsafe defaults and weak boundaries that need review before installation.

Install only if you trust the publisher and the MCP client using it. Before using real Moodle credentials, remove the 'test-pass' defaults, avoid putting the credential password directly in MCP config files, prefer a strong environment or secret-manager value, restrict downloads to your Moodle domain, and keep outputs in a dedicated download/cache directory.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (6)

Context-Inappropriate Capability

Medium
Confidence
90% confidence
Finding
The batch downloader unnecessarily handles credential-decryption material directly via a CLI flag, environment fallback logic, and interactive prompt, even though its stated role is just downloading files from a config. Passing secrets on the command line is risky because they can be exposed via shell history, process listings, logs, and CI job metadata, increasing the chance of credential compromise.

Context-Inappropriate Capability

Medium
Confidence
92% confidence
Finding
The download feature accepts an arbitrary URL and fetches it with the authenticated session, appending the Moodle token to the query string. In a Claude Code / agent context, this expands the skill from a Moodle client into a generic network fetcher and can leak the user's token to attacker-controlled hosts via the URL parameter.

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The documentation encourages placing the credential-protecting password directly into MCP configuration, which is commonly stored in plaintext on disk and may be exposed through backups, screenshots, config sync, or local disclosure. This undermines the stated secret-handling model because compromise of the config can lead to decryption of stored Moodle credentials.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The code accepts an encryption password from the command line and even defaults it to a hardcoded placeholder without warning users about secret exposure. In practice, this encourages unsafe handling of credential material and may lead to accidental disclosure through shell history, process inspection, screenshots, automation logs, or reuse of the weak default.

Missing User Warnings

Medium
Confidence
98% confidence
Finding
The server initializes the Moodle connector with a hardcoded password value (`password='test-pass'`). Hardcoded credentials are insecure because they may be committed to source control, reused unintentionally in non-test environments, and encourage insecure secret-handling patterns; in this MCP server context, the credential is automatically used whenever the tool is invoked, increasing the chance of unauthorized Moodle access if it corresponds to a real secret or bypass mechanism.

Missing User Warnings

Medium
Confidence
84% confidence
Finding
This function writes downloaded content to local disk, including to a user-specified output path, without an explicit safety confirmation or prominent warning. In an agent setting, this can cause unintended persistence of untrusted files or overwriting of files in sensitive locations if the caller is manipulated.

VirusTotal

65/65 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

Detected: suspicious.exposed_secret_literal

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
SKILL.md:72