T09 · Insecure Skill Coding Practices
- Location
references/cost.md:112- Finding
Unauthenticated AWS Instance Metadata Service Request
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a cloud architecture guidance skill with some cautions needed around cloud cleanup examples, but I found no hidden execution, persistence, or credential-stealing behavior.
Installers should treat this as advisory cloud architecture material, not an automation package. Before following cleanup or purchasing recommendations, confirm resource ownership, dependencies, retention needs, backups, change windows, and approvals. If copying the Spot interruption example, update it to use AWS IMDSv2.
references/cost.md:112Unauthenticated AWS Instance Metadata Service Request
Code accesses a cloud instance metadata endpoint (e.g. 169.254.169.254). A single request can return temporary IAM credentials, making this a high-value SSRF target for credential theft.
def check_spot_termination():
try:
response = requests.get(
"http://169.254.169.254/latest/meta-data/spot/termination-time",
timeout=2
)
if response.status_code == 200:
The trigger list contains broad, generic cloud terms such as vendor names and common architecture topics that are likely to appear in ordinary conversation, increasing the chance the skill is invoked when the user did not actually request this specialized behavior. Over-broad invocation can cause unintended context switching, irrelevant guidance, or overshadowing of a more appropriate skill, which is a real security and reliability concern in agent routing.
The checklist recommends potentially destructive actions such as deleting volumes, snapshots, AMIs, load balancers, and terminating instances without any warning, dependency checks, backup guidance, or rollback considerations. In a skill intended to guide cloud architecture and cost optimization, users may copy these actions directly, creating a realistic risk of service disruption or irreversible data loss.
No suspicious patterns detected.