Back to skill

Security audit

Use Effect

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent React refactoring guide with no hidden execution, credential access, or persistence behavior.

Before installing, expect this skill to push React work away from direct useEffect and toward derived render values, event handlers, query/loaders, keyed remounts, and possibly lint or documentation updates if you ask for a broader rollout.

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
  • Memory PoisoningPersistent Context Injection, Context Window Stuffing, Memory Manipulation
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (1)

Memory Manipulation

High
Category
Memory Poisoning
Confidence
80% confidence
Finding

Skill manipulates agent memory, state, or stored context. Memory corruption can alter personality, override safety rules, or cause unpredictable behavior.

Content

Scanner excerpt · references/patterns.md (reported line 21)May include surrounding context.

md
4. Is the effect performing setup and cleanup for an external system?
Use a mount-only wrapper such as `useMountEffect`, or the project's equivalent.

5. Is the effect trying to reset state when an ID or entity changes?
Remount with `key`.

If none of these fit, inspect whether the component owns too many responsibilities and should be split.

Static analysis

No suspicious patterns detected.