Back to skill

Security audit

Nas Movie Download

Security checks across malware telemetry and agentic risk

Overview

This skill is related to NAS movie automation, but it ships hardcoded credentials and can broadly access or modify NAS and qBittorrent content.

Install only in an environment you fully control after removing all bundled credentials, rotating any exposed passwords or API keys, replacing them with least-privilege secrets, and reviewing the SMB mount, --all subtitle, archive/move, and qBittorrent delete workflows before running them.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • Taint TrackingDirect Taint Flow, Variable-Mediated Taint Flow, Credential Exfiltration Chain
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (89)

subprocess module call

Medium
Category
Dangerous Code Execution
Content
]
    
    print(f"尝试挂载: {' '.join(mount_cmd)}")
    result = subprocess.run(mount_cmd, capture_output=True, text=True)
    
    if result.returncode == 0:
        print(f"挂载成功! 目录: {mount_point}")
Confidence
95% confidence
Finding
result = subprocess.run(mount_cmd, capture_output=True, text=True)

subprocess module call

Medium
Category
Dangerous Code Execution
Content
return True
    except ImportError:
        print("正在安装 smbprotocol 库...")
        result = subprocess.run(
            [sys.executable, "-m", "pip", "install", "--user", "smbprotocol"],
            capture_output=True,
            text=True
Confidence
93% confidence
Finding
result = subprocess.run( [sys.executable, "-m", "pip", "install", "--user", "smbprotocol"], capture_output=True, text=True )

Tainted flow: 'download_link' from requests.post (line 207, network input) → requests.get (network output)

Medium
Category
Data Flow
Content
if download_link:
                    # 下载实际文件
                    file_response = requests.get(download_link, timeout=60)
                    if file_response.status_code == 200:
                        return file_response.content
Confidence
95% confidence
Finding
file_response = requests.get(download_link, timeout=60)

Lp3

Medium
Category
MCP Least Privilege
Confidence
98% confidence
Finding
The skill documents access to environment variables, shell execution, file reads/writes, and networked services, but it does not declare permissions or scope boundaries. This prevents meaningful consent and review, and is especially risky here because the documented defaults include direct access to qBittorrent, Jackett, and SMB-backed NAS storage with write capability.

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding
The documented purpose is movie search/download management, but the broader behavior includes NAS file movement, library reorganization, torrent/file deletion, local SMB mounting with sudo/CIFS, and bulk processing outside the stated scope. That mismatch is dangerous because users and reviewers may authorize the skill for a narrow use case while it can perform materially more destructive or privacy-impacting operations on storage systems.

Context-Inappropriate Capability

Medium
Confidence
89% confidence
Finding
The standalone SMB subtitle workflow supports processing arbitrary NAS files and directories, including bulk modes, which extends beyond the stated purpose of assisting movie downloads. This broadens the blast radius from a single requested download to potentially many existing files on the NAS, increasing the chance of unintended modification or misuse.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The script embeds live SMB credentials directly in source code and uses them to access a remote network share. Hardcoded secrets are easily leaked through source control, logs, backups, or redistribution, and they grant direct access to storage unrelated to the minimal subtitle-search logic.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The script embeds live SMB credentials directly in source code, exposing a username, password, host, and share details to anyone who can read the skill. Hard-coded secrets are easily leaked through source distribution, logs, backups, or repository history, enabling unauthorized access to the NAS and any reachable data on that share.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The script embeds live SMB credentials and internal NAS connection details directly in source code, exposing secrets to anyone with repository or file access. If leaked or reused, an attacker can access, enumerate, or alter files on the NAS, turning this subtitle helper into an unintended credential disclosure and lateral-access vector.

Context-Inappropriate Capability

Medium
Confidence
98% confidence
Finding
The script hardcodes live SMB credentials, including username, password, server identity, and share name, directly in source code. Anyone with access to the skill can reuse these secrets to access the NAS share, exposing media contents and potentially enabling broader lateral movement depending on share permissions.

Context-Inappropriate Capability

Medium
Confidence
99% confidence
Finding
The script embeds live-looking default credentials and API secrets for qBittorrent, SMB, and Jackett directly in code. Hardcoded secrets are easily exposed through source control, logs, backups, or downstream packaging, and in this skill context they grant access to internal services and a network file share that could be abused for unauthorized downloads, file access, or lateral movement.

Description-Behavior Mismatch

Medium
Confidence
95% confidence
Finding
The subtitle function accepts a target video name but ignores it and invokes the Python helper with the bulk '--all' option, causing processing of every SMB-accessible video instead of the requested movie. In this skill, that expands remote file operations far beyond user intent and can trigger unintended scanning, modification, or metadata leakage across the entire share.

Intent-Code Divergence

Medium
Confidence
92% confidence
Finding
The code comments and function signature imply it will locate a specific video, but the implementation performs a bulk subtitle action over all files. This mismatch is dangerous because it hides broader behavior from reviewers and users, making overbroad remote file access more likely to be triggered unintentionally in an automation context.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The script embeds plaintext SMB credentials and directly accesses a remote file share from within the skill. Hardcoded secrets are highly sensitive because anyone with code access can recover them, reuse them outside the skill, and potentially read or modify files on the NAS.

Context-Inappropriate Capability

Medium
Confidence
93% confidence
Finding
The script contains built-in SMB connectivity that can browse a remote share and write files to it, which is broader and more sensitive than simple torrent search/download behavior. In this skill context, undisclosed remote file access increases the blast radius: compromise or misuse of the skill can modify NAS contents and expose internal network resources.

Context-Inappropriate Capability

Medium
Confidence
98% confidence
Finding
The script embeds plaintext SMB credentials and uses them to access a remote share directly. Hardcoded secrets in a distributable skill enable unauthorized reuse by anyone who can read the file, and the SMB capability expands the skill from movie/subtitle lookup into direct remote file-system access.

Intent-Code Divergence

Low
Confidence
87% confidence
Finding
The script description suggests a search helper, but the implementation also writes files to a remote SMB share. This mismatch reduces transparency and can cause users or operators to authorize behavior they did not expect, especially in an automation context with network file-write capability.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The script embeds live SMB credentials, server identity, and network location directly in source code, exposing secrets to anyone who can read the file or logs. In this skill context, the script can directly access and modify a NAS media share, making credential leakage immediately useful for unauthorized access, data tampering, or lateral movement on the local network.

Description-Behavior Mismatch

Medium
Confidence
90% confidence
Finding
The script establishes an SMB connection and recursively enumerates files on a network share, which extends beyond a simple movie search/download workflow and gives the skill direct visibility into NAS contents. In a skill handling torrents and media, undisclosed network share traversal increases the attack surface and may expose unrelated files or metadata if the share path or recursion scope changes.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The code embeds hard-coded SMB credentials, host identifiers, and share details directly in source, which is a direct secret exposure and enables unauthorized access by anyone who can read the file or logs. In this skill context, the credentials provide access to a private NAS over the local network, making lateral movement, data exfiltration, or tampering significantly easier.

Context-Inappropriate Capability

Medium
Confidence
97% confidence
Finding
The script constructs a URL containing the Jackett API key and then prints that full URL to stdout. This exposes a live credential in logs, terminal history, agent transcripts, or downstream tooling, enabling unauthorized use of the Jackett service by anyone who can view the output.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The script embeds live SMB credentials and immediately uses them to connect to a private network share. Hardcoded secrets are dangerous because anyone with access to the skill can reuse them to access, enumerate, or modify the remote NAS outside the intended workflow, and the skill context makes this especially sensitive because it targets a real home/private storage server.

Description-Behavior Mismatch

Medium
Confidence
79% confidence
Finding
The helper recursively scans an SMB share for all video files, which exceeds a narrowly scoped movie-download/search role and exposes unrelated NAS content to the skill. Broad enumeration increases privacy risk and expands the blast radius if the skill is misused or compromised.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The script hardcodes valid SMB credentials and direct NAS connection details in source code. Embedded secrets are easily exposed through source sharing, logs, backups, or repository access, enabling unauthorized access to the NAS and any data reachable with that account.

Context-Inappropriate Capability

Medium
Confidence
96% confidence
Finding
Runtime pip installation is broader system modification than needed for the stated function and introduces third-party code into the environment on demand. In a download-oriented skill already interacting with untrusted networks, this increases attack surface and supply-chain risk.

VirusTotal

66/66 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.