Back to skill

Security audit

Agent Ontology

Security checks for vulnerabilities and agentic risk

Overview

This is a purposeful local memory skill, but it needs Review because persistent graph writes are broadly scoped and the promised validation and secret protections are not actually enforced.

Install only if you are comfortable with a persistent local memory file. Avoid storing passwords, API keys, tokens, private messages, or regulated personal data in it until schema validation, secret-field rejection, file permission hardening, and deletion/update controls are implemented.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (1)

T09 · Insecure Skill Coding Practices

Warning
Location
scripts/ontology.py:28
Finding

Missing Schema Enforcement Allows Plaintext Credential Storage and Invalid Graph Records

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (4)

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · references/schema.md (reported line 165)May include surrounding context.

forbidden_properties: [password, secret, token, key, api_key] properties: service: string secret_ref: string # Reference to secret store (e.g., "keychain:github-token") expires: datetime? scope: string[]?

text

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The activation examples are very broad conversational phrases such as "Remember that..." and "What do I know about X?", which can overlap with normal user dialogue and cause the skill to activate unexpectedly. In a skill that performs knowledge-graph writes and updates, over-broad triggering increases the chance of unintended persistence, incorrect graph mutations, or disclosure of stored information when the user did not explicitly intend to use this capability.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill explicitly stores information in a persistent append-only graph file but does not warn users that their inputs may be retained. This creates a privacy and data-governance risk because users may disclose personal, sensitive, or contextual information under the assumption it is ephemeral, and append-only storage also makes later deletion or correction harder.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The module docstring states this CLI provides 'CRUD operations on typed knowledge graph,' which implies create, read, update, and delete support. In the actual code, commands only implement create/read-style operations and relationship creation; there are no update or delete commands or corresponding code paths.

Content

No source excerpt is available for this finding.