Advisories
Security vulnerabilities, privacy incidents, safety concerns, and policy updates affecting LLMs and AI agents.
Security vulnerabilities, privacy incidents, safety concerns, and policy updates affecting LLMs and AI agents.
3,134 items
The bedrock-agentcore-starter-toolkit, an AWS-maintained Python package distributed via GitHub and PyPI for importing Amazon Bedrock Agents into local environments, has two issues affecting versions >= 0.1.4 and <= 0.3.13. CVE-2026-105812 is a code injection flaw that could allow arbitrary code execution when a specially crafted agent is imported and then run or deployed. CVE-2026-106032 is an external reference handling flaw that could cause unintended network requests or local file access during agent import.
LangChain versions before 1.3.1 let MongoDBChatMessageHistory accept an untrusted structured session identifier without enforcing the documented string type. When several users' histories share one MongoDB collection, the identifier is interpreted as a MongoDB query condition instead of a literal value. An attacker who can invoke chat-history operations can read, modify, or delete another user's conversation. Applications that use authenticated, server-controlled string identifiers are not affected.
Fixed in version 1.3.1.
Microsoft.OpenApi.Kiota and Microsoft.OpenApi.Kiota.Builder, from version 1.25.1 through 1.34.1 (including the 1.29.1 security-backport release), copy x-ai-capabilities.response_semantics.oauth_card_path into generated API plugin manifests without checking that it is a safe package-relative file reference. An attacker who controls the OpenAPI description can supply parent-directory traversal, rooted paths, or absolute URIs, and a consuming host that resolves the reference may cross the package boundary or use an unintended authentication card. Kiota itself does not read files or execute code during generation.
`@langchain/redis` versions through 1.1.0 did not properly escape values used to build structured RediSearch TAG and TEXT filters. An attacker who controls values passed into these filters can inject RediSearch syntax, altering or broadening the search query and potentially exposing indexed documents outside their intended scope where the filter serves as a tenant or document-access boundary.
Fix: Upgrade to `@langchain/redis` 1.1.1 or later.
A security flaw in vllm-project vLLM up to 0.31.0 affects the function get_token_bin_counts_and_mask in vllm/model_executor/layers/utils.py, part of the Penalty Handler component. Remote exploitation leads to denial of service, and a public exploit exists. The project was notified through an issue report but has not yet responded.
Before Langflow 1.10.3, several built-in components, including RSS Reader, SearXNG, Web Search, Home Assistant, Glean Search and Docling Serve, sent server-side requests to flow-author-controlled URLs with no SSRF enforcement. An authenticated user who can build or run flows could reach loopback, private, link-local and cloud metadata addresses and often read the response back through the component output.
Fix: Fixed in Langflow 1.10.3 (and 1.11.0+), with patched versions langflow 1.10.3, langflow-base 0.10.3, lfx 1.10.3 and lfx-docling 0.1.2. With default settings, outbound requests from these components are now validated after DNS resolution, pinned to the validated IP, and blocked for private, loopback, link-local or metadata addresses unless the operator allowlists the host.
Langflow's PythonREPLComponent and legacy PythonREPLToolComponent executed user- or model-supplied Python without effective sandboxing, so any authenticated user who could run a flow could gain code execution with the service's privileges and escalate to superuser by flipping is_superuser in the database. The root cause is CWE-94/CWE-95, with unrestricted builtins exposed even under the default allow_custom_components=True setting. Affected versions are below 1.10.1.
Upgrade langflow to 1.10.1 or later, preferably 1.12.3 or later. The fix adds restricted builtins via safe_builtins(), AST validation in validate_code_safety(), and a server-policy gate in ensure_code_execution_enabled() that refuses execution when allow_custom_components=False or block_code_interpreter_components=True.
A security vulnerability in vllm-project vLLM up to 0.31.0 affects the function conv_ssm_forward in vllm/model_executor/layers/mamba/mamba_mixer2.py, within the Completions Request Handler component. Manipulation of this component leads to an out-of-bounds read, and the attack can be carried out remotely. The exploit has been publicly disclosed and may be used, and the project was informed through an issue report but has not yet responded.
This advisory was withdrawn as a duplicate of GHSA-3cr3-8m4c-fpxw and is kept for external references. The original description says Docling from 2.45.0 through 2.131.0 calls tarfile.TarFile.getmembers() in the METS-GBS format detection and backend before enforcing max_member_count, so a small gzip-compressed tar with a very large number of empty members can consume memory proportional to the declared member count. The flaw is a residual weakness in the protection added for CVE-2026-44018.
Fix: Fixed in 2.131.0.
An unauthenticated attacker can exhaust memory in the vLLM API-server process on Qwen2-VL and Qwen3-VL deployments by raising the request-level media_io_kwargs.video.max_frames and fps values. The Qwen video samplers never read num_frames, so the num_frames ceiling in PR #51969 does not stop this path, while the same knobs were already capped for GLMGAVideoBackend in commit 8b6de0eb9. In the reporter's test, 74 extra bytes of JSON sent over POST /tokenize raised peak RSS from 2 271 MiB to 13 629 MiB.
vLLM's OpenAI-compatible chat endpoint accepts request-level `media_io_kwargs`, so a caller can select the GLMGA video sampler and set large `fps` and `max_frames` values. GLMGA builds and deduplicates an attacker-sized index list before frame reads, so a tiny valid video with compact JSON options can consume disproportionate CPU and memory in the shared media-loading executor and delay unrelated media requests. The demonstrated impact is partial denial of service, with no memory corruption, data disclosure or code execution claimed.
vLLM versions up to and including 0.25.1 are affected through the disaggregated scale-out transport. The POST /inference/v1/generate route decodes a caller-supplied features object (kwargs_data, mm_hashes, mm_placeholders) and passes it to the engine as if it came from the trusted render step, without validating it against the active model's renderer output. Any authenticated caller can forge one field to crash the shared EngineCore process, poison or disclose cross-request encoder-cache state, or drop placeholder masks during replay.
vLLM versions up to and including 0.25.1 contain three structured-output request paths that raise an uncaught, engine-fatal exception instead of a per-request validation error. The exception escapes into EngineCore's busy loop and triggers a fatal _send_engine_dead(), so one malformed structured-output request denies service to all concurrent and subsequent users of that engine. Site 1 is a valid duplicate-root EBNF grammar that the latched xgrammar backend fails to compile, and the completion check catches only TimeoutError. The advisory states that these sites are distinct from the fixes in GHSA-6qc9-v4r8-22xg and GHSA-8wr5-jm2h-8r4f.
vLLM versions up to and including 0.25.1 cache late-interaction query embeddings on `/score` and `/rerank` under a key derived from the caller-supplied `X-Request-Id` header when flash late interaction is enabled, which is the default for supported models. A concurrent request reusing the victim's header value replaces the victim's cached query embedding, so the victim's documents are scored against the attacker's query, and one request can also force the other into a late-interaction cache-miss error. The source states the lower bound of affected versions is not confirmed and maintainers can confirm it.
vLLM's OpenAI-compatible request models (Completions, Chat Completions, Responses) accept a client-supplied `cache_salt` validated only as a non-empty string. With the built-in LMCache-MP KV connector enabled, the value reaches the scheduler's cache lookup unguarded, and the downstream LMCache `IPCCacheServerKey.__post_init__` raises an uncaught `ValueError` for `@`, `/`, `\`, NUL or lengths over 128 characters. Because the exception is never caught on the scheduling path, a single request such as `cache_salt="/"` kills EngineCore for all users.
vLLM, an inference and serving engine for large language models, is affected before version 0.30.0 by a flaw in the Rust frontend's track_http_metrics middleware. The middleware records the raw HTTP method token as a Prometheus label on requests reaching registered routes, so an unauthenticated attacker sending unique arbitrary method tokens to unguarded routes such as /tokenize can permanently create label sets. This increases process memory usage and enlarges the /metrics response until the service or monitoring path is exhausted.
CVE-2026-105753 affects vLLM, an inference and serving engine for large language models, prior to 0.28.0. The default mirrored multimodal LRU cache can record a media hash in the frontend sender cache before engine admission, while the engine receiver cache never gets the payload if the request is rejected. A later request reusing that media hash makes the receiver cache hit an assertion, causing an availability failure in the shared service.
Fix: Fixed in version 0.28.0.
vLLM versions prior to 0.30.0 drop the cache_salt value when rebuilding the next-turn engine input for Harmony tool continuations submitted through POST /v1/responses. The continuation prefix lands in the global unsalted cache namespace even when the caller enabled salting, and on deployments with prefix caching enabled (the default), an authenticated tenant can use the cached_tokens_per_turn count to determine whether a victim's low-entropy post-tool prefix was previously processed, defeating salted prefix cache isolation.
Fixed in version 0.30.0.
langgraph-sdk applies the actions= argument incorrectly on resource-scoped authorization decorators, including @auth.on.threads, @auth.on.assistants, and @auth.on.crons. A handler meant for selected actions is instead registered for every action on the resource, so broader fallback handlers that carry authorization checks may not run. Only Python deployments using actions= on these decorators are affected.
Fix: Patched in 0.4.4. No workaround is documented.
Fix: Upgrade to Kiota 1.35.0 or later and regenerate affected plugin manifests. Kiota 1.35.0 applies the existing safe-file-reference validator to oauth_card_path, drops unsafe references, and emits a warning; valid relative card paths remain supported. Workaround: generate plugins only from trusted, integrity-protected OpenAPI descriptions, and before packaging or deployment review generated manifests and remove any oauth_card_path that is not a safe relative reference confined to the plugin package.
Fix: Validate request-level video sampling options before dispatching work to the media executor. Enforce conservative absolute limits for `fps`, `max_frames`, and especially the computed candidate count.
Fix: Fixed in version 0.30.0.