Back to skill

Security audit

Bark Notify

Security checks across malware telemetry and agentic risk

Overview

This skill does what it says: it helps agents send Bark push notifications while giving clear guidance to protect the Bark device key.

Install this only if you are comfortable giving the skill access to your Bark device key and allowing agents to send notifications through your configured Bark server. Keep BARK_KEY in private local config or stdin, avoid command-line keys, and use non-default --server values only when you trust that server.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (2)

Lp3

Medium
Category
MCP Least Privilege
Confidence
96% confidence
Finding
The skill instructs the agent to use shell, file reads/writes, environment-backed secrets, and network access, but it does not declare those permissions. That creates a trust and review gap: a host may expose more capability than users or policy expect, and the skill can send outbound notifications and write local config containing sensitive credentials.

Env Variable Harvesting

High
Category
Data Exfiltration
Content
stdin_key = sys.stdin.readline().rstrip("\r\n") if args.key_stdin else ""
    server = (args.server or os.environ.get("BARK_SERVER") or cfg.get("BARK_SERVER") or DEFAULT_SERVER).rstrip("/")
    key = args.key or stdin_key or os.environ.get("BARK_KEY") or cfg.get("BARK_KEY", "")
    agent = args.agent or os.environ.get("BARK_AGENT") or cfg.get("BARK_AGENT", "")
    agent_group, agent_group_source = agent_value(agent, "group", cfg, agents)
    agent_icon, agent_icon_source = agent_value(agent, "icon", cfg, agents)
Confidence
75% confidence
Finding
The script accepts a Bark device key from environment/config/stdin and then transmits it to a remote Bark server in the push payload. In a skill context, this is more sensitive than a normal local CLI because an agent-triggered tool can cause secrets sourced from the environment or local config to be used in outbound network requests, potentially to a user-supplied or attacker-controlled server via --server.

VirusTotal

63/63 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

Detected: suspicious.dynamic_code_execution

Dynamic code execution detected.

Critical
Code
suspicious.dynamic_code_execution
Location
tests/test_cli.py:17