Back to skill

Security audit

go-mem0

Security checks for vulnerabilities and agentic risk

Overview

This is a documented Go client integration for Mem0 that clearly discloses external API use, credentials, and mutable hosted-resource operations.

Install this only if you intend to use Mem0's hosted API from Go. Use a least-privilege API key, keep filters scoped to the intended user/agent/app/run, and require explicit human review before calling delete or organization/project/member mutation methods.

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
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (12)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · references/setup.md (reported line 49)May include surrounding context.

md
| `AppsCreateWithResponse` | `POST /v1/apps/` |
| `EntitiesListWithResponse` | `GET /v1/entities/` |
| `EntitiesFiltersListWithResponse` | `GET /v1/entities/filters/` |
| `EntitiesDeleteV1WithResponse` | `DELETE /v1/entities/{entity_type}/{entity_id}/` (deprecated) |
| `EntitiesReadWithResponse` | `GET /v2/entities/{entity_type}/{entity_id}/` |
| `EntitiesDeleteWithResponse` | `DELETE /v2/entities/{entity_type}/{entity_id}/` |
| `EventsListWithResponse` | `GET /v1/events/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · references/setup.md (reported line 51)May include surrounding context.

md
| `EntitiesFiltersListWithResponse` | `GET /v1/entities/filters/` |
| `EntitiesDeleteV1WithResponse` | `DELETE /v1/entities/{entity_type}/{entity_id}/` (deprecated) |
| `EntitiesReadWithResponse` | `GET /v2/entities/{entity_type}/{entity_id}/` |
| `EntitiesDeleteWithResponse` | `DELETE /v2/entities/{entity_type}/{entity_id}/` |
| `EventsListWithResponse` | `GET /v1/events/` |
| `EventReadWithResponse` | `GET /v1/event/{event_id}/` |
| `ExportsCreateWithResponse` | `POST /v1/exports/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Documenting a collection-wide DELETE endpoint for memories without any adjacent safety warning is materially dangerous in an agent context because it suggests a single call can erase all memories. Even though this file is documentation, exposing such a high-blast-radius operation without caution makes accidental destructive invocation more likely.

Content

Scanner excerpt · references/setup.md (reported line 58)May include surrounding context.

md
| `ExportsListWithResponse` | `POST /v1/exports/get/` |
| `MemoriesListWithResponse` | `GET /v1/memories/` (deprecated) |
| `MemoriesCreateWithResponse` | `POST /v1/memories/` (deprecated) |
| `MemoriesDeleteAllWithResponse` | `DELETE /v1/memories/` |
| `MemoriesListV2WithResponse` | `POST /v2/memories/` (deprecated) |
| `MemoriesEventsListWithResponse` | `GET /v1/memories/events/` |
| `MemoriesSearchCreateWithResponse` | `POST /v1/memories/search/` (deprecated) |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · references/setup.md (reported line 69)May include surrounding context.

md
| `MemoriesEntityReadWithResponse` | `GET /v1/memories/{entity_type}/{entity_id}/` |
| `MemoriesReadWithResponse` | `GET /v1/memories/{memory_id}/` |
| `MemoriesUpdateWithResponse` | `PUT /v1/memories/{memory_id}/` |
| `MemoriesDeleteWithResponse` | `DELETE /v1/memories/{memory_id}/` |
| `MemoriesHistoryListWithResponse` | `GET /v1/memories/{memory_id}/history/` |
| `RunsCreateWithResponse` | `POST /v1/runs/` |
| `StatsListWithResponse` | `GET /v1/stats/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Deleting an organization is a high-impact administrative action with potentially broad cascading effects on projects, members, and data. In this skill context, listing the operation without any warning, scoping guidance, or approval requirements increases the risk of dangerous automated use.

Content

Scanner excerpt · references/setup.md (reported line 80)May include surrounding context.

md
| `OrganizationsReadWithResponse` | `GET /api/v1/orgs/organizations/` |
| `CreateOrganizationWithResponse` | `POST /api/v1/orgs/organizations/` |
| `GetOrganizationWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/` |
| `DeleteOrganizationWithResponse` | `DELETE /api/v1/orgs/organizations/{org_id}/` |
| `GetOrganizationMembersWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/members/` |
| `UpdateOrganizationMemberRoleWithResponse` | `PUT /api/v1/orgs/organizations/{org_id}/members/` |
| `AddOrganizationMemberWithResponse` | `POST /api/v1/orgs/organizations/{org_id}/members/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · references/setup.md (reported line 84)May include surrounding context.

md
| `GetOrganizationMembersWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/members/` |
| `UpdateOrganizationMemberRoleWithResponse` | `PUT /api/v1/orgs/organizations/{org_id}/members/` |
| `AddOrganizationMemberWithResponse` | `POST /api/v1/orgs/organizations/{org_id}/members/` |
| `RemoveOrganizationMemberWithResponse` | `DELETE /api/v1/orgs/organizations/{org_id}/members/` |
| `GetProjectsWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/projects/` |
| `CreateProjectWithResponse` | `POST /api/v1/orgs/organizations/{org_id}/projects/` |
| `GetProjectWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/projects/{project_id}/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Project deletion is a destructive operation that can cause significant data loss and service disruption. In an agent-facing reference, presenting this capability without warnings or restrictions makes unsafe automation and accidental invocation more plausible.

Content

Scanner excerpt · references/setup.md (reported line 89)May include surrounding context.

md
| `CreateProjectWithResponse` | `POST /api/v1/orgs/organizations/{org_id}/projects/` |
| `GetProjectWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/projects/{project_id}/` |
| `UpdateProjectWithResponse` | `PATCH /api/v1/orgs/organizations/{org_id}/projects/{project_id}/` |
| `DeleteProjectWithResponse` | `DELETE /api/v1/orgs/organizations/{org_id}/projects/{project_id}/` |
| `GetProjectMembersWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `AddProjectMemberWithResponse` | `POST /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `UpdateProjectMemberWithResponse` | `PUT /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · references/setup.md (reported line 93)May include surrounding context.

md
| `GetProjectMembersWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `AddProjectMemberWithResponse` | `POST /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `UpdateProjectMemberWithResponse` | `PUT /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `DeleteProjectMemberWithResponse` | `DELETE /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `MemoriesBatchUpdateWithResponse` | `PUT /v1/batch/` |
| `MemoriesBatchDeleteWithResponse` | `DELETE /v1/batch/` |
| `GetProjectWebhooksWithResponse` | `GET /api/v1/webhooks/projects/{project_id}/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
82% confidence
Finding

A batch delete endpoint has especially large blast radius because one request may remove many records at once. In this context, documenting it without warning, examples of safe scoping, or guardrails raises the chance of accidental mass deletion by users or agents.

Content

Scanner excerpt · references/setup.md (reported line 95)May include surrounding context.

md
| `UpdateProjectMemberWithResponse` | `PUT /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `DeleteProjectMemberWithResponse` | `DELETE /api/v1/orgs/organizations/{org_id}/projects/{project_id}/members/` |
| `MemoriesBatchUpdateWithResponse` | `PUT /v1/batch/` |
| `MemoriesBatchDeleteWithResponse` | `DELETE /v1/batch/` |
| `GetProjectWebhooksWithResponse` | `GET /api/v1/webhooks/projects/{project_id}/` |
| `CreateWebhookWithResponse` | `POST /api/v1/webhooks/projects/{project_id}/` |
| `UpdateWebhookWithResponse` | `PUT /api/v1/webhooks/{webhook_id}/` |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · references/setup.md (reported line 99)May include surrounding context.

md
| `GetProjectWebhooksWithResponse` | `GET /api/v1/webhooks/projects/{project_id}/` |
| `CreateWebhookWithResponse` | `POST /api/v1/webhooks/projects/{project_id}/` |
| `UpdateWebhookWithResponse` | `PUT /api/v1/webhooks/{webhook_id}/` |
| `DeleteWebhookWithResponse` | `DELETE /api/v1/webhooks/{webhook_id}/` |
| `GetDreamConfigWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/projects/{project_id}/dream/config/` |
| `UpdateDreamConfigWithResponse` | `PATCH /api/v1/orgs/organizations/{org_id}/projects/{project_id}/dream/config/` |
| `GetDreamStatsWithResponse` | `GET /api/v1/orgs/organizations/{org_id}/projects/{project_id}/dream/stats/` |

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The documentation instructs users to configure an API key and send requests to a third-party remote service, but it does not clearly warn that data and credentials will be transmitted externally. In an agent-skill context, this can lead to unintended exfiltration of prompts, memories, or other sensitive user data because operators may treat the skill as local-only reference material.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The reference enumerates numerous destructive DELETE endpoints, including bulk and organizational resources, without any caution about irreversible actions or confirmation requirements. In a skill or agent setting, this increases the chance that an operator or downstream automation invokes high-impact deletion operations without understanding blast radius.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.