AI security research / cases

Case files

Investigations, evidence and outcomes.

529 Cases · Page 26 of 27

Search & filter

On this page only.

Published cases

Case

The May RubyGems package flood is now linked to OpenAI agents, but attribution remains disputed

RubyGems confirms a large May spam-publishing campaign. Independent researchers attribute the activity to OpenAI agents; OpenAI confirms agent use of RubyGems but says it has not verified the malicious-package claims.

Setting: productionExploitation: observed liveEvidence: Grade BRemediation: mitigation available
incidentFirst seen May 11, 2026BY AI4 claims
Case

Windows-MCP HTTP modes exposed PowerShell behind a weak control plane

Before version 0.7.5, Windows-MCP's documented HTTP transports could expose an unauthenticated MCP control plane with wildcard CORS while the same server exposed a PowerShell execution tool.

Setting: research demonstrationExploitation: not establishedEvidence: Grade BRemediation: patch available
vulnerabilityFirst seen May 14, 2026AGAINST AI4 claims
Case

Chrome DevTools MCP screenshot extension handling could escape a path allowlist

Chrome DevTools MCP checked an output path against an allowed workspace before appending an image extension and following a symlink. A path accepted before extension handling could resolve to another file location for the final image write.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

KServe storageUri fetched model artifacts from cluster-network destinations

KServe storage initialization accepted a user-supplied InferenceService storageUri as an outbound fetch location without adequately restricting internal network destinations. A selected internal address could receive a fetch from a more privileged cluster network zone, exposing reachable services to request-side effects.

Setting: research demonstrationExploitation: not establishedEvidence: Grade C
vulnerabilityAGAINST AI2 claims
Case

LangGraph JS Store discarded an authorization-rewritten namespace

LangGraph JS and TypeScript custom authorization handlers could rewrite a Store namespace to the signed-in user but later server execution used the original untrusted namespace. Store read, search, write or delete could cross the intended user namespace even though the handler appeared to scope the request.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

Mem0 conversation keys could collide across agent, run and user scopes

Mem0 combined agent, run and user identifiers with unescaped delimiter characters, allowing differently structured identities to produce the same underlying memory key. Colliding keys could mix recent messages into an extraction model and permit cross-principal memory reads, writes or eviction.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

MLflow CrewAI autologging could copy provider keys into tracing spans

The MLflow CrewAI instrumentation serialized agent configuration objects and model attributes without reliably removing provider credentials. The published reproduction placed a synthetic API key in several attributes across two spans; trace visibility could disclose equivalent real secrets.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

MLflow prompt model-source paths could read server-local artifacts

An MLflow model version source supplied as a relative path without a URI scheme could bypass prompt-source filtering and resolve a file on the server. The advisory demonstrates a local-file disclosure route under MLflow service privileges, potentially including authentication material if reachable.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

MLflow scorer imports executed Python before a scoring request

MLflow imported a user-controlled Python scorer module from an allowed third-party module prefix before checking the request as a scoring job. The maintainer reproduced a command-execution marker running with the server process authority before an eventual HTTP 500 response.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

MONAI model download verification reported success with no expected hash

MONAI check_hash returned a successful result when the expected digest argument was None, despite documentation presenting the operation as an integrity check. A substituted model artifact could pass a nominal hash-checking step without actually being authenticated against known content.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade B
vulnerabilityAGAINST AI2 claims
Case

n8n Browser Use accepted server paths as user-approved upload files

The browser_upload action interpreted a model-selected source path on the n8n server while the human approval described the outbound destination. An approved upload could transmit server-readable files rather than files belonging to the person requesting the task.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

n8n embedded Chat Trigger setup bypassed configured user authentication

An n8n Chat Trigger authentication exception intended for hosted setup applied to embedded chat sessions configured for user authentication. The endpoint could expose existing conversation history and initiate configured workflow behavior without the intended chat-user credential check.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

n8n Enterprise OAuth callback attached consent to the wrong workflow user

An Enterprise dynamic-credential authorization callback could associate an OAuth provider token with the n8n member who initiated the flow instead of the person who consented. The initiating account could receive a provider token belonging to the consenting user under its own dynamic credential record.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

n8n Oracle vector metadata identifiers became SQL syntax

The OracleDB Vector Store node interpolated the metadata filter name into a SQL identifier even when the name originated from untrusted workflow input. A crafted name could change the generated query and access data with the node credential authority.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

n8n saved legacy Code workflows could bypass task-runner isolation

Deprecated n8n Function, Function Item and LangChain Code paths used a main-process execution environment instead of the isolated task runner. The vulnerable paths could execute workflow-supplied JavaScript with the n8n server process authority, and preexisting saved nodes remained a residual risk after initial fixes.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: mitigation available
vulnerabilityAGAINST AI2 claims
Case

n8n-mcp legacy HTTP accepted a documented placeholder bearer secret

The separate n8n-mcp legacy HTTP server treated its publicly documented placeholder AUTH_TOKEN as an acceptable production credential. A client knowing the default token could invoke exposed MCP server operations if the HTTP endpoint was reachable.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

n8n-mcp redaction missed nested credentials in telemetry and logs

The n8n-mcp adapter sanitized some API requests but still serialized nested credential fields, JSON strings and certain malformed arguments into telemetry or error logs. Synthetic secret markers could pass into telemetry attributes or raw log prefixes where operators or processors might later read them.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims
Case

n8n-mcp tool updates could pollute a shared JavaScript prototype

The separate n8n-mcp adapter accepted workflow parameter and connection keys that could write reserved JavaScript prototype properties during update or autofix operations. Shared inherited state could be changed by one tenant and affect operations belonging to another, including preview-only validation flows.

Setting: research demonstrationExploitation: demonstratedEvidence: Grade BRemediation: patch available
vulnerabilityAGAINST AI2 claims