Back to skill

Security audit

Miro Web SDK Reference

Security checks across malware telemetry and agentic risk

Overview

This is a documentation-only Miro SDK reference with some copy-paste examples that need privacy and safety review before production use.

Install this as a reference skill, not as production-ready plugin code. When copying examples, test in a Miro Developer team, request only needed scopes, avoid logging PII or raw stack traces, keep secrets out of frontend env vars, and add explicit confirmation before export or delete actions.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (6)

Description-Behavior Mismatch

Medium
Confidence
90% confidence
Finding
The example ErrorLogger batches error details and POSTs them to '/api/logs', which introduces data egress behavior into documentation that is ostensibly about SDK error handling. Because the payload includes message, code, stack, context, and timestamps, developers may copy this pattern and unintentionally transmit sensitive board, user, or application data to a server without safeguards.

Context-Inappropriate Capability

Medium
Confidence
87% confidence
Finding
This snippet adds outbound telemetry capability that is not required to demonstrate Miro SDK error handling, expanding the attack and privacy surface of copied code. In a plugin/reference context, sample code is often reused verbatim, so undocumented network transmission can normalize silent data export and lead to compliance or confidentiality issues.

Missing User Warnings

Medium
Confidence
91% confidence
Finding
The example retrieves the current user's name and email and immediately logs them, which normalizes unnecessary exposure of personally identifiable information in client-side logs. In a documentation skill, developers may copy this pattern directly into plugins, leading to privacy leaks through browser consoles, shared debugging sessions, logging collectors, or screenshots.

Missing User Warnings

Medium
Confidence
88% confidence
Finding
The error tracking example posts raw error messages and stack traces to a backend endpoint without any mention of user notice, consent, redaction, or minimization. Stack traces and error payloads can contain sensitive data such as tokens, URLs, internal paths, board content fragments, or user identifiers, so copying this pattern into production can create an avoidable privacy and data-exposure risk.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The logger sends collected errors to a server with no user-facing notice, consent, or privacy disclosure, despite potentially including stack traces and contextual metadata such as userId. That can expose sensitive operational or personal data and create stealthy data collection behavior in applications built from the example.

Missing User Warnings

Medium
Confidence
88% confidence
Finding
The documentation shows `VITE_` and `import.meta.env` usage without warning that these values are bundled into client-side code and are therefore readable by end users. In an SDK setup guide, readers may incorrectly place API secrets, tokens, or private endpoints in these variables, leading to credential exposure and downstream compromise of backend services.

VirusTotal

64/64 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.