Back to skill

Security audit

Sketch2CAD

Security checks across malware telemetry and agentic risk

Overview

This skill appears to do what it claims, but its converter runs under-scoped code and installs an unpinned package during normal use.

Install only if you are comfortable with the skill creating a persistent Python virtual environment and downloading ezdxf from pip on first use. Avoid giving it user-controlled or unusual output filenames, and do not use it for sensitive building plans unless you are comfortable with the image being analyzed and the generated file being sent through Feishu.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (5)

subprocess module call

Medium
Category
Dangerous Code Execution
Content
print("[sketch2cad] DXF已生成: {output_path}")
'''
    
    result = subprocess.run(
        [venv_python, "-c", code],
        capture_output=True,
        text=True
Confidence
97% confidence
Finding
result = subprocess.run( [venv_python, "-c", code], capture_output=True, text=True )

subprocess module call

Medium
Category
Dangerous Code Execution
Content
print("[sketch2cad] 首次使用,创建虚拟环境并安装依赖...")
        os.makedirs(VENV_DIR, exist_ok=True)
        subprocess.run([sys.executable, "-m", "venv", VENV_DIR], check=True)
        subprocess.run([venv_python, "-m", "pip", "install", "ezdxf", "-q"], check=True)
        print("[sketch2cad] 环境准备完成")
    
    return venv_python
Confidence
79% confidence
Finding
subprocess.run([venv_python, "-m", "pip", "install", "ezdxf", "-q"], check=True)

Context-Inappropriate Capability

Medium
Confidence
76% confidence
Finding
Creating a virtual environment and installing dependencies during execution is unnecessary for a simple converter and broadens the attack surface. It enables network-dependent behavior and package installation in the execution path, which can be abused through supply-chain compromise or environmental manipulation even if the core feature only needs local DXF generation.

Vague Triggers

Medium
Confidence
81% confidence
Finding
The trigger phrases include broad requests like '帮我画个CAD' and '把这个转成图纸', which can match many unrelated conversations and cause accidental activation. Unintended invocation can expose user images or text to unnecessary processing and may trigger shell-backed file generation without clear user intent.

Missing User Warnings

Medium
Confidence
84% confidence
Finding
The skill does not clearly warn users that uploaded sketch photos will be analyzed and that a generated file will be sent via Feishu, which is a transparency and privacy problem. Users may share sensitive floor plans, dimensions, or drawings without understanding how their data will be processed and transmitted.

VirusTotal

65/65 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.