Back to skill

Security audit

Slack

Security checks for vulnerabilities and agentic risk

Overview

The skill’s Slack access is clearly disclosed, fits its purpose, and includes user-control requirements for sending messages and making changes.

Review the Slack app’s permissions before connecting, grant only the access you need, and protect the access token. The agent can read authorized workspace content and make requested changes as the connected account. Check message destinations and previews, and revoke Slack access when finished.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (2)

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

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

md
This skill expects `MAVERICK_SLACK_MCP_ACCESS_TOKEN` to be set in the agent runtime environment. mcporter sends it as `Authorization: Bearer <value>` on every request.

Slack uses a long-lived, non-rotating OAuth access token when token rotation is off for the app. If calls fail with auth errors, the token is invalid, revoked, or no longer covers the requested scopes - reconnect Slack and re-set `MAVERICK_SLACK_MCP_ACCESS_TOKEN`. There is no automatic refresh; bearer tokens are static.

Reconnect Slack if the grant is revoked, the app is uninstalled from the workspace, the granting user is deactivated, or Slack scopes change and require a new grant.

Unrestricted Tool Access

Medium
Category
Excessive Agency
Confidence
80% confidence
Finding

Skill grants unrestricted tool access without appropriate constraints. An agent with unfettered tool access can perform arbitrary actions including file modification, network requests, and code execution.

Content

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

The output includes the server's Instructions: field, if published, and a JSON Schema for every tool's parameters. Treat this as the authoritative reference for the rest of the session.

Step 2 - Call any tool from the catalog using the form maverick-slack-mcp.<tool>:

sh
mcporter --config {baseDir}/mcporter.json call maverick-slack-mcp.<tool> <arg>=<value> ...