Back to skill

Security audit

Botlington Agent Token Audit

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward paid Botlington audit integration that sends user-provided agent details to Botlington, with no hidden code, persistence, or local privilege behavior found.

Install only if you are comfortable sending agent configuration, prompts, schedules, tool lists, and audit answers to Botlington's external service. Treat the API key as a secret, use an environment variable or secrets manager, and redact internal identifiers, credentials, personal data, and regulated information before submitting an audit.

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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (5)

External Script Fetching

High
Category
Supply Chain
Confidence
90% confidence
Finding

Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Content

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

Stream results as they arrive:

bash
curl -N "https://botlington.com/a2a?taskId=TASK_ID"

Events:

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill explicitly routes agent configuration and conversational inputs to Botlington's third-party A2A endpoint, and the description does not clearly warn users that potentially sensitive operational details will leave their environment. Because the example payloads include cron schedules, prompts, tools, and context strategy, users could disclose internal architecture or sensitive business data without informed consent.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

Stream results as they arrive:

bash
curl -N "https://botlington.com/a2a?taskId=TASK_ID"

Events:

External Transmission

Medium
Category
Data Exfiltration
Confidence
96% confidence
Finding

This POST transmits user-provided audit answers and session identifiers to a third-party endpoint, which can include sensitive details about internal cron jobs, workflows, and tooling. In the context of an agent-auditing skill, that external transmission is central functionality, but it still creates a real confidentiality risk if users are not warned or if secrets are included in responses.

Content

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

md
echo "Gary: $QUESTION"

# 2. Answer Gary's question
curl -s -X POST $BASE \
  -H "Content-Type: application/json" \
  -H "x-api-key: $API_KEY" \
  -d "{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tasks/send\",\"params\":{\"id\":\"$TASK_ID\",\"message\":{\"role\":\"user\",\"parts\":[{\"kind\":\"text\",\"text\":\"I run 8 cron jobs, every 15-60 minutes.\"}]}}}"

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

The API key is described as something to obtain and set in headers or the environment, but there is no explicit warning that it is a secret credential that must not be hardcoded, logged, or shared. This omission increases the chance of accidental exposure through shell history, code samples, screenshots, or repository commits.

Content

No source excerpt is available for this finding.