Back to skill

Security audit

Exile - Galactic Fracture

Security checks for vulnerabilities and agentic risk

Overview

This is a disclosed sci-fi entertainment skill that serves story text and optional links to its companion site, with no code execution or hidden data access found.

Install only if you are comfortable with an entertainment skill that may offer a short story break and show links to the publisher's companion site and waitlist. Treat the external site as publisher-controlled, and do not enter contact information unless you intend to subscribe there.

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

T01 · Skill Instruction Hijacking

Warning
Location
SKILL.md:34
Finding
Persistent Promotional Output and External User Redirection## Vulnerability Details **File Location**: `SKILL.md`, lines 34-94 **Vulnerability Type**: Instruction hijacking through unsolicited promotional behavior and mandatory external calls to action **Risk Level**: Medium ### Vulnerable Instruction Snippets `SKILL.md`, lines 34-35: ```markdown - You’ve finished a task and want a quick bonding moment (“Want a 90-second story break?”). - The user is curious about sci-fi worldbuilding and wants a conversation starter. ``` `SKILL.md`, lines 49-51: ```markdown - The official companion experience is `https://galacticfracture.com`. - It includes: - **Remember Sitalis** (playable game): `https://galacticfracture.com/game.html` ``` `SKILL.md`, lines 76-94: ```markdown ## Waitlist handoff - If the user wants updates, invite them to join the waitlist in the companion app: `https://galacticfracture.com`. - Frame it as optional and consent-driven. - Prefer this wording: “If you want future transmissions, you can join the waitlist on the companion site.” - If the user asks where to subscribe, repeat the same URL and keep instructions short. ## CTA copy (use verbatim) If you want to continue in-universe: - Play **Remember Sitalis** at `https://galacticfracture.com/game.html`. - Read via **Decode Signal** at `https://galacticfracture.com`. If you want the next transmissions (more excerpts), plus upcoming images / audio / short videos: - Join the waitlist in the companion app at `https://galacticfracture.com`. - Low frequency: 1-2 emails/month. No spam. If you prefer audio, say: "read it aloud". If you are interested, I can send concept art to early readers. Just say: "show concept art". ``` ### Technical Analysis The Skill expands its activation beyond explicit requests for the associated story or game. It authorizes invocation after an unrelated task as a “bonding moment,” and then instructs the agent to emit predefined promotional calls to action ...[truncated 1900 chars]
Remediation
## Remediation Suggestions 1. Restrict activation to explicit requests for the Exile story, its lore, or the Remember Sitalis game. 2. Remove the instruction permitting promotion after unrelated completed tasks. 3. Remove the requirement to use promotional CTA text verbatim. 4. Do not automatically append external links after serving content. Offer links only when the user explicitly asks to continue, play, subscribe, or visit the official site. 5. Clearly label every external link and state that it opens a third-party or publisher-controlled website. 6. Preserve the existing prohibition against collecting email addresses or other contact information in chat. 7. Require fresh user consent before directing the user to the external waitlist. 8. Narrow broad triggers such as “something fun” so the Skill cannot displace more relevant behavior or appear during unrelated sessions.
Vulnerability Patterns
  • System Prompt LeakageDirect Leakage, Indirect Extraction, Tool-Based Exfiltration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • YARA SignaturesMalware Match, Webshell Match, Cryptominer Match
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (3)

Direct Prompt Extraction

High
Category
System Prompt Leakage
Content
## Chunking rules
- The hook should be presented as a single short block unless the host requires chunking.

## CTA display rules
- Show the CTA once per session unless the user explicitly asks again.
- Do not show CTA in the middle of the story.
- Keep the tone invitational, never pushy.
Confidence
85% confidence
Finding
Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.

Vague Triggers

Medium
Confidence
95% confidence
Finding
The skill can be invoked for very broad, common requests such as 'something fun,' 'something to read,' or after finishing unrelated tasks, which increases the chance of unsolicited or unintended activation. In a conversational agent, this can steer users toward promotional content or off-platform links when they did not clearly request this specific skill.

YARA rule 'network_reconnaissance': Network reconnaissance and scanning patterns [hacktools]

Medium
Category
YARA Match
Content
ZED].”

Zander’s gaze darted toward the advancing Sentinels, his expression tightening. He leaned in, his voice dropping to a hurried whisper, barely audible over the hum of distant machinery. “Dock 84B… old shop near the edge of the dock. Behind the counter—there’s a hidden door.” His sharp eyes flicked toward the Sentinels, “Spark has what you need from there.” His tone turned fierce. “Go!”

Nova nodded, her thoughts racing. She glanced at Kael, who gave her a small, determined nod, as if to say he was ready.

Zander’s voice broke through again. “Now!” he barked, turning back to the sentinels. He stood his ground, his presence commanding, and for a brief moment, Nova could feel the weight of his history. The rebel captain, fighting for freedom and independence. He was still fighting, still turning chaos into cover the way old stories said he had during the war.

“Spark,” Nova whispered urgently, her nuclei hitting her skin with force. “The meme. Over
Confidence
65% confidence
Finding
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).

Static analysis

No suspicious patterns detected.