Back to skill

Security audit

Flashrev Mailer Notion Tracker

Security checks for vulnerabilities and agentic risk

Overview

This skill does what it says: it logs FlashRev email send records into a user-configured Notion database, with some privacy and dependency-installation cautions.

Install only if you are comfortable copying campaign email metadata and a 300-character body preview into Notion. Use a Notion integration limited to the intended database, avoid logging sensitive campaigns unless appropriate, and prefer a pinned dependency plus package-lock.json or npm ci before broader use.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
scripts/package.json:6
Finding

Non-Reproducible npm Installation Uses an Unlocked Dependency Range

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (8)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill sends detailed email records to Notion, including recipient addresses, subject lines, body previews, timestamps, and error details, but it does not clearly disclose that this data is being transmitted to a third-party service. This is dangerous because users may unknowingly export personal, confidential, or regulated communications data outside the primary mail workflow, creating privacy, compliance, and data leakage risk.

Content

No source excerpt is available for this finding.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 46)May include surrounding context.

md
node scripts/notion-push.js --campaign CAMPAIGN_ID

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 63)May include surrounding context.

md
node scripts/notion-push.js --campaign CAMPAIGN_ID

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 72)May include surrounding context.

md
node scripts/notion-push.js --campaign CAMPAIGN_ID

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 75)May include surrounding context.

md
node scripts/notion-push.js --campaign CAMPAIGN_ID

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
83% confidence
Finding

The skill requires access to sensitive environment-backed configuration (NOTION_TOKEN, NOTION_DATABASE_ID) and instructs execution of a Node script, but it does not declare an explicit tool scope or permissions boundary. That creates ambiguity about what the skill is allowed to access and makes unintended secret use or over-broad execution harder to audit and constrain.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The trigger language is broad enough to activate on common requests like viewing sent emails, campaign logs, or searching outreach history, which can cause this skill to run in more situations than the user intended. In context, that increases the chance of unnecessary access to email metadata and accidental transmission or processing of sensitive campaign information.

Content

No source excerpt is available for this finding.

Unpinned Dependencies

Low
Category
Supply Chain
Confidence
93% confidence
Finding

The dependency uses a caret range (^2.2.15), which allows automatic installation of newer minor and patch versions instead of a fully pinned artifact. This creates supply-chain risk because a compromised upstream release or unexpected behavioral change could be pulled into an environment that handles email audit data and Notion credentials.

Content

Scanner excerpt · scripts/package.json (reported line 7)May include surrounding context.

json
"description": "Pushes FlashRev send-log entries into a Notion database",
  "type": "module",
  "dependencies": {
    "@notionhq/client": "^2.2.15"
  },
  "engines": {
    "node": ">=18"