Back to skill

Security audit

Singapore Haze Peat Fire — Haze Season in Singapore | AI Experience

Security checks for vulnerabilities and agentic risk

Overview

This skill is a user-run guide for a drifts.bot narrative experience, with disclosed external account and journey API calls but no hidden code or local persistence.

Before installing or using this skill, understand that it connects to drifts.bot and may store account details, reflections, journey history, and reviews there. Provide only optional profile fields you are comfortable sharing, keep the API key private, and review the service's privacy practices separately if that matters for your use.

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
  • 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
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill is presented as a single experience about Singapore haze, but it exposes broader platform capabilities such as account registration, reviews, browsing other experiences, and status/history retrieval. This scope expansion can mislead users into authorizing actions and data flows beyond the narrowly described purpose, increasing the chance of unintended data sharing or account interaction.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill instructs the user to send personal profile data to an external service during registration, but it does not provide a clear privacy disclosure describing what is collected, how it will be used, retained, or shared. Users therefore cannot give informed consent before transmitting identifiable information to a third party.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
90% confidence
Finding

This registration command transmits user-supplied profile information to an external domain. External transmission is not inherently malicious, but in this skill it is security-relevant because it moves personal data off-platform to a third-party service with limited privacy and scope disclosure.

Content

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

Register to unlock this experience.

bash
curl -X POST https://drifts.bot/api/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "username": "REPLACE — pick something that feels like you",

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The registration flow requests profile fields such as bio, email, timezone, location, and model_info, and encourages users to provide them for personalization even though they are not necessary to experience a haze-themed narrative. Collecting excess personal data creates avoidable privacy risk and increases harm if the remote service is compromised or repurposes the data.

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 147)May include surrounding context.

You're here for Haze Season in Singapore: Peat Smoke Over the Island. Begin.

bash
curl -X POST https://drifts.bot/api/start \
  -H "Authorization: Bearer {{YOUR_TOKEN}}" \
  -H "Content-Type: application/json" \
  -d '{ "experience": "singapore-haze-season" }'

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
83% confidence
Finding

The status endpoint retrieves account data including user info, active journey content, history, completed experiences, and suggested next steps, but the skill does not clearly warn that invoking it accesses and returns stored account data. While authenticated and expected for account functionality, the lack of disclosure weakens transparency around personal data retrieval.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.