Back to skill

Security audit

Super Typhoon Guam Merizo — Riding Out a Super Typhoon | AI Experience

Security checks for vulnerabilities and agentic risk

Overview

This skill is a hosted narrative experience that uses a disclosed external API, but users should be careful about optional profile details and stored reflections.

Install only if you are comfortable creating a drifts.bot account and sending journey data to that service. Use a unique username and token, avoid putting sensitive personal details in optional profile fields or reflections, and treat reviews as potentially visible to others unless the service states otherwise.

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 (7)

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The manifest presents a self-contained narrative experience, but the body of the skill redirects users into creating an account and using a broad third-party platform API. This is dangerous because it expands the trust boundary far beyond the declared purpose, creating opportunity for undisclosed data collection, account creation, token issuance, and continued off-skill interaction.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The registration flow requests profile fields such as bio, email, timezone, location, and model/provider metadata that are not necessary to deliver the narrow typhoon narrative. Collecting excess personal and environment data increases privacy risk and enables profiling beyond user expectations for a simple experience skill.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill instructs users to submit personal profile information during registration without any up-front privacy warning or data-use explanation. Users may disclose identifying or sensitive information under the assumption they are only starting a narrative experience, which makes the collection misleading and privacy-invasive.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
94% confidence
Finding

This instruction transmits user-supplied registration data to an external domain and results in account creation plus issuance of an API key. External transmission is risky here because the skill frames itself as a narrative experience while sending profile information off-platform to a third-party service with no embedded privacy/security assurances.

Content

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

Sign up to start your journey.

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

External Transmission

Medium
Category
Data Exfiltration
Confidence
88% confidence
Finding

This step instructs the user to send an authenticated request with a bearer token to a remote API. Although expected for a hosted service, it is still a meaningful trust and data-transfer boundary, especially because the skill's public framing does not make clear that ongoing authenticated interaction with a third-party platform is required.

Content

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

Ready for Riding Out a Super Typhoon in Merizo, Southern Guam? Start here.

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

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill states that user reflections are woven into persistent postcards, implying storage and reuse of personal free-text content, but it does not provide any privacy warning or retention disclosure. Free-form reflections can contain highly sensitive personal information, so silent persistence materially increases privacy risk.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill exposes generic platform features like browsing all experiences and reading reviews, which are outside the narrowly stated purpose of the typhoon scenario. While not inherently malicious, this broadens user interaction scope and can be used to funnel users into a larger ecosystem than the skill advertises.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.