Search: ge.call
2,369 threats
Most recently published first
| Severity | CVSS | Signals | Threat | Source | Published | Score and star |
|---|---|---|---|---|---|---|
| High | 7.5 | EPSS 0.4% | CVE-2026-107794ExtUtils-Typemaps-Default (Perl module) · Integer Underflow High7.5EPSS 0.4%CVE Database V5CVE-2026-107794 CVE-2026-107794 is an integer underflow vulnerability in ExtUtils::Typemaps::STL::List for Perl versions before 1.07. The flaw causes the module to allocate a very large 32 GiB array when processing an empty list due to an underflow in the av_extend function call. This results in memory exhaustion. A similar issue was previously fixed in the related ExtUtils::Typemaps::STL::Vector module. | CVE Database V5 | ||
| High | 7.5 | High7.5GCVE Database ## Summary A user who has only read permission on a project can call the single link-share read endpoint and receive the share's `hash` field — the secret credential that the anonymous `POST /shares/{share}/auth` endpoint exchanges for a link-share JWT carrying the share's permission (read / read-write / admin). A read-only member can therefore mint a write- or admin-level token for the project and perform writes they are not entitled to, while their own user token is correctly refused. This is the remaining variant of the link-share hash disclosure class: GHSA-8hp8-9fhr-pfm9 fixed the list endpoint (ReadAll now requires project admin) but the single-read endpoint's gate was never aligned. Verified on Vikunja 2.5.0; the weak gate has existed since the endpoint, so earlier versions are likely affected too. ## Details Affected endpoints (both verified with a complete chain): - v1: `GET /api/v1/projects/{project}/shares/{share}` - v2: `GET /api/v2/projects/{project}/shares/{share}` Permission gate: `LinkSharing.CanRead` (`pkg/models/link_sharing_permissions.go`) delegates to `project.CanRead(s, a)` — i.e. any user with read access to the project passes. The response serializes the `hash` field (`pkg/models/link_sharing.go`, field tag `json:"hash"`), which is the share's bearer credential. The share `password` field is correctly cleared before returning, but the hash is not restricted. Inconsistent with the sibling list endpoint `GET /projects/{project}/shares` (`LinkSharing.ReadAll`, `pkg/models/link_sharing.go:243-256`), which requires `project.IsAdmin` — the protection level the project chose when the class was fixed for the list endpoint in 2.3.0 (GHSA-8hp8). The v1 and v2 APIs share the same model-level gate (the v2 `handler.DoReadOne` wrappers call the same `CanRead`), so both surfaces are affected. Impact chain: hash -> `POST /api/v1/shares/{hash}/auth` (unauthenticated by design) -> link-share JWT at the share's permission level -> full API access at that level for that project. Mitigating factors: the attacker must already be a member of the project at read level; password-protected shares (sharing_type=2) still require the password at the auth step; share IDs are small sequential integers and enumerable by members. ## PoC Steps below use two accounts: the owner (token `$OWNER`) and an attacker who has been granted read-only access to the project (token `$READER`). All requests were executed against a local Vikunja 2.5.0 instance. 1. Owner creates a private project and a read-write link share (permission=1): ``` curl -X PUT "$BASE/api/v1/projects" -H "Authorization: Bearer $OWNER" \ -H 'Content-Type: application/json' -d '{"title":"poc"}' # -> {"id":123,...} curl -X PUT "$BASE/api/v1/projects/123/shares" -H "Authorization: Bearer $OWNER" \ -H 'Content-Type: application/json' -d '{"name":"poc","permission":1}' # -> {"id":7,"hash":"<SECRET_HASH>",...} ``` 2. Owner adds the attacker as a read-only member (permission=0): ``` curl -X PUT "$BASE/api/v1/projects/123/users" -H "Authorization: Bearer $OWNER" \ -H 'Content-Type: application/json' -d '{"username":"attacker","permission":0}' ``` 3. Attacker reads the single share — the weak gate — and receives the hash (this is the disclosure; the list endpoint would correctly return 403 here): ``` curl "$BASE/api/v1/projects/123/shares/7" -H "Authorization: Bearer $READER" # -> 200 {"id":7,"hash":"<SECRET_HASH>","permission":1,...} # v2 twin behaves identically: curl "$BASE/api/v2/projects/123/shares/7" -H "Authorization: Bearer $READER" # -> 200 {"hash":"<SECRET_HASH>",...} ``` 4. Attacker exchanges the hash for a link-share JWT (no authentication required): ``` curl -X POST "$BASE/api/v1/shares/<SECRET_HASH>/auth" \ -H 'Content-Type: application/json' -d '{}' # -> 200 {"token":"<LINK_JWT>",...} ``` 5. Negative control — the attacker's own user token cannot write to the project: ``` curl -X PUT "$BASE/api/v1/projects/123/tasks" -H "Authorization: Bearer $READER" \ -H 'Content-Type: application/json' -d '{"title":"direct"}' # -> 403 Forbidden ``` 6. Escalation proof — the link-share JWT writes successfully: ``` curl -X PUT "$BASE/api/v1/projects/123/tasks" -H "Authorization: Bearer <LINK_JWT>" \ -H 'Content-Type: application/json' -d '{"title":"escalated"}' # -> 201 Created ``` Observed result: steps 3, 4 and 6 all succeed (200 / 200 / 201) while step 5 is refused with 403 — the read-only member has escalated to write access. If the project has an admin-level share (permission=2), the same chain yields project-admin capabilities (member management is still refused for link principals, but project settings, shares of the project, and all write operations become available). ## Impact Broken access control / privilege escalation within shared projects (CWE-862, CWE-639: the link-share hash is a bearer capability disclosed to a lesser-privileged member; CWE-200 for the information exposure). Any read-level member of a project tha | GCVE Database | |||
| High | 7.5 | EPSS 0.5% | CVE-2026-107826corazawaf coraza · Uncontrolled Recursion High7.5EPSS 0.5%CVE Database V5CVE-2026-107826 OWASP Coraza WAF is a golang modsecurity compatible web application firewall library. From 3.0.0 until 3.8.1, readJSON in internal/bodyprocessors/json.go can stop its bounded flattening walk after reaching SecArgumentsLimit or the byte budget and then call gjson.Valid on the complete raw body. An unauthenticated attacker can submit shallow values followed by an extremely deeply nested JSON tail that was not visited by the bounded walk, causing gjson.Valid to recurse without a depth bound and terminate the hosting process with an unrecoverable fatal stack overflow. The ProcessRequest and ProcessResponse JSON paths share the affected readJSON validation flow, and the payload can remain within recommended body-size and argument-count limits. This issue is fixed in version 3.8.1. | CVE Database V5 | ||
| High | 8.8 | EPSS 0.3% | CVE-2026-1078130xJacky nginx-ui · Missing Authorization High8.8EPSS 0.3%CVE Database V5CVE-2026-107813 ## Summary Incomplete fix of GHSA-5v7c-xpfp-p65m: the secure-session (OTP step-up) requirement added to the nginx, cert, dns, backup, site, and stream mutation routers was not applied to the parallel api/cluster router, so cluster node management and cluster-wide nginx reload/restart run with only a JWT and no step-up. An authenticated user whose JWT is stolen or persisted, but who does not hold a fresh secure-session, can perform cluster node CRUD (including reading and rewriting a node token secret) and trigger cluster-wide nginx reload/restart. Confirmed at HEAD 2cb7ee9102c9d87274de2fa104db804841d140a0. ## The defect GHSA-5v7c-xpfp-p65m required a fresh secure session (an OTP step-up beyond the JWT) for sensitive mutation routes. The fix wrapped the nginx, cert, dns, backup, site, and stream mutation handlers in middleware.RequireSecureSession() and added reload/restart to the MCP sensitive-tool list. It did not touch the physically separate api/cluster package, whose router registers the same class of sensitive operations on the bare authenticated group. The fixed sibling, api/nginx/router.go: ```go o := r.Group("", middleware.RequireSecureSession()) // line 28 { o.POST("nginx/reload", Reload) // line 30 o.POST("nginx/restart", Restart) // line 31 } ``` The missed router, api/cluster/router.go, registers every sensitive operation directly on r with no RequireSecureSession wrapper: ```go nodeGroup := r.Group("nodes") // line 9, no step-up { nodeGroup.POST("", AddNode) // line 12 nodeGroup.POST("/:id", EditNode) // line 13 nodeGroup.DELETE("/:id", DeleteNode) // line 14 } r.POST("nodes/reload_nginx", ReloadNginx) // line 17 r.POST("nodes/restart_nginx", RestartNginx) // line 18 r.POST("namespaces", AddNamespace) // line 22 r.POST("namespaces/:id", ModifyNamespace) // line 23 r.DELETE("namespaces/:id", DeleteNamespace) // line 24 ``` Both routers mount on the same group in router/routers.go: `g := root.Group("/", middleware.AuthRequired(), middleware.Proxy())` (line 87); nginx.InitRouter(g) creates its own RequireSecureSession subgroup, cluster.InitRouter(g) does not. So the cluster routes inherit only AuthRequired and Proxy, exactly the pre-fix posture the advisory closed for the nginx routes. AuthRequired has no role gate, so any authenticated user reaches them. ## Attacker model and impact An authenticated, OTP-enabled user who does not present a fresh X-Secure-Session-ID (the parent advisory's model: a stolen or persisted JWT used without the step-up). Such a user can: add/edit/delete cluster nodes (AddNode/EditNode store an AES-serialized node token, the secret used to control a remote node, so this reads back and rewrites a cross-node credential); trigger nodes/reload_nginx and nodes/restart_nginx across the cluster (the exact reload/restart action class the fix protected on the single-node path); and add/modify/delete/reorder namespaces. Proof of concept: with a valid JWT but no fresh secure session, call POST /api/nodes (AddNode) or POST /api/nodes/reload_nginx. The nginx equivalent POST /api/nginx/reload returns the secure-session challenge; the cluster route succeeds. ## Verification Source-verified at HEAD: the nginx router wraps reload/restart in RequireSecureSession, the cluster router registers node/namespace/reload/restart directly on the group with no such wrapper, and both mount on the AuthRequired+Proxy-only group. I did not stand up a live nginx-ui. ## Suggested fix Wrap the cluster router's mutation handlers (node CRUD, nodes/reload_nginx, nodes/restart_nginx, namespace CRUD) in middleware.RequireSecureSession(), mirroring api/nginx/router.go. Secondary lower-confidence items worth checking in the same pass: the system/restart handler, the core-upgrade websocket, and the upstream socket PUT also appear to run without the step-up (I did not fully trace these). | CVE Database V5 | ||
| Medium | 6.8 | EPSS 0.1% | Medium6.8EPSS 0.1%CVE Database V5CVE-2026-104112 A missing release of resources in the illumos name service cache daemon (nscd) allows a local user to exhaust kernel memory. The nscd door server procedure, switcher() in usr/src/cmd/nscd/nscd_frontend.c, does not close file descriptors that are passed with a door call but not used by the request, and the main nscd door at /var/run/name_service_door accepts passed descriptors from any user in its zone. Because nscd also runs with an unlimited file descriptor limit, an unprivileged local user, including one in a non-global zone, can repeatedly pass a descriptor to its zone's nscd in a door_call() loop, causing the file descriptor table of nscd to grow without bound in kernel memory. This causes a denial of service of nscd and can render processes in all zones on the host unresponsive. The flaw has existed since 2006 (illumos-gate commit cb5caa98), and affects any illumos distribution prior to illumos-gate commit af810a72. | CVE Database V5 | ||
| –Not rated | – | Bleeping Computer This report discusses the security risks posed by AI agents using valid credentials to perform actions beyond their assigned permissions, particularly in corporate environments. It highlights how traditional access controls may fail to prevent agents from escalating privileges by switching to more powerful credentials available on the same system. The article outlines various enforcement points and mitigation strategies to limit agent actions without sacrificing autonomy, including managed agent settings, runtime hooks, gateways, sandboxes, endpoint enforcement, and credential authorization. It emphasizes the importance of scoping agent permissions tightly and enforcing controls at the tool call level to prevent unauthorized actions. The report does not describe a specific vulnerability or exploit but rather addresses a broader security challenge in managing AI agent permissions. | Bleeping Computer | |||
| High | 7.8 | EPSS 0.1% | CVE-2026-19575zephyrproject zephyr · Memory-safety High7.8EPSS 0.1%CVE Database V5CVE-2026-19575 CVE-2026-19575 is a memory safety vulnerability in the Zephyr RTOS affecting the device_deinit() system call handler in user mode. The flaw arises because the verification handler improperly validates the device argument, allowing a user-mode thread to pass arbitrary kernel objects it has permission on, leading to kernel memory corruption and an indirect call to an attacker-controlled address. This enables local unprivileged threads to achieve full kernel code execution, bypassing CONFIG_USERSPACE isolation. The vulnerability affects Zephyr versions 4.2.0 up to but not including 4.3.2, and 4.4.0 up to but not including 4.5.0, with fixes available in versions 4.3.2 and 4.5.0. Exploitation causes high impact including confidentiality, integrity, and availability compromise. EPSS 0.1%Vulnerability | CVE Database V5 | ||
| Medium | 6.2 | EPSS 0.4% | CVE-2026-107392Borewit music-metadata · Uncaught Exception Medium6.2EPSS 0.4%CVE Database V5CVE-2026-107392 A vulnerability in Borewit music-metadata versions before 11.15.0 causes an unhandled exception leading to a process crash. The issue arises from an un-awaited asynchronous call when skipping unrecognized chunks in DSF audio files, which can result in a negative argument passed to a function that throws a RangeError. This error occurs after the main parsing promise resolves, making it uncatchable by typical try/catch error handling. The impact is a denial-of-service (DoS) condition where a single crafted DSF file can crash the Node.js process using music-metadata, affecting availability. | CVE Database V5 | ||
| Critical | 9.3 | EPSS 1.8% | CVE-2026-107703@enmaso/node-convert · OS Command Injection Critical9.3EPSS 1.8%CVE Database V5CVE-2026-107703 CVE-2026-107703 is a critical OS command injection vulnerability in the @enmaso/node-convert package up to version 1.0.0. The flaw occurs in convert.js where unsanitized user inputs for filepath and convertTo are passed directly to a child_process.exec() call that runs ImageMagick commands. This allows an attacker to inject shell metacharacters or single quotes to execute arbitrary OS commands with the privileges of the Node.js process. EPSS 1.8%Vulnerability | CVE Database V5 | ||
| Medium | 4.0 | Medium4.0GCVE Database Coraza v3 before 3.8.0 has a vulnerability in its URI processing logic where malformed URIs containing raw control bytes cause the system to silently drop QUERY_STRING and ARGS_GET variables. This occurs because the URI parsing fails and the fallback logic to extract GET arguments is commented out, resulting in empty GET argument collections. The issue does not affect standard net/http integrations, which reject malformed URIs early, but affects integrations that call ProcessURI directly with unvalidated raw URIs, such as coraza-spoa and coraza-proxy-wasm. This can lead to bypass of OWASP CRS GET-side signature rules that rely on these variables. A fix is available. | GCVE Database | |||
| High | 7.5 | EPSS 0.4% | CVE-2026-107300mcollina msgpack5 · Uncontrolled Recursion High7.5EPSS 0.4%CVE Database V5CVE-2026-107300 ### Impact The streaming decoder recursively invokes itself for every complete value remaining in a chunk. A single chunk containing many small valid MessagePack values can exhaust the JavaScript call stack and interrupt the process or stream. ### Patches The streaming decoder now drains concatenated values iteratively with constant call-stack depth. ### Workarounds Limit the number of MessagePack values accepted in one chunk, or split large batches before passing them to the decoder stream. | CVE Database V5 | ||
| Medium | 5.3 | EPSS 0.4% | CVE-2026-107298mcollina msgpack5 · Uncontrolled Recursion Medium5.3EPSS 0.4%CVE Database V5CVE-2026-107298 msgpack5 versions prior to 6.1.0 have an uncontrolled recursion vulnerability in their array and map decoding paths. This allows an attacker to submit deeply nested MessagePack input that exhausts the JavaScript call stack, causing process interruption. The issue is fixed in version 6.1.0. | CVE Database V5 | ||
| High | 7.6 | EPSS 0.2% | CVE-2026-107295pydantic-ai · Cross-Site Request Forgery (CSRF) High7.6EPSS 0.2%CVE Database V5CVE-2026-107295 ### Summary The Pydantic AI development web chat UI (`Agent.to_web()`, `clai web`) did not check the content type of requests to its chat endpoint. This allowed a website visited by a developer to submit a request to a chat UI running on that developer's machine, causing the served agent to run and to execute its tools with the privileges and credentials of the local process. Binding the web UI to localhost — the default — does not prevent this, because a page open in the developer's browser can reach the loopback address. ### Impact Applications and developers serving an agent through `Agent.to_web()` or `clai web`. The consequences depend on the tools the served agent exposes, and can include data disclosure as well as unwanted tool side effects. Tools marked `requires_approval=True` were not protected either, because the endpoint trusts approval decisions relayed by the client. ### Mitigation Upgrade to a patched version. The chat endpoint now requires `Content-Type: application/json` and rejects other requests before the request body is parsed and before the agent runs. The bundled chat UI already sends this header; scripts and other non-browser clients that call the endpoint directly may need to be updated to send it. If you cannot upgrade, don't run the web UI while browsing untrusted sites, stop it when you aren't using it, and don't serve an agent with side-effecting tools through it. ### Credits - Thai Son Dinh from VinSOC Labs (R&D) | CVE Database V5 | ||
| Low | 2.3 | EPSS 0.3% | Low2.3EPSS 0.3%CVE Database V5CVE-2026-107293 ### Summary Pydantic AI's OpenTelemetry instrumentation supports `InstrumentationSettings(include_content=False)` to exclude message content — user prompts, model completions, tool call arguments and responses — from exported telemetry, so that agents can be monitored without sending sensitive content to the observability backend. Retry prompts — the feedback messages Pydantic AI sends back to the model when its output fails validation or an output validator raises `ModelRetry` — were not covered by this setting when they were not associated with a tool call, as with structured output modes that don't use tool calls (e.g. `NativeOutput` or `PromptedOutput`) and output validators applied to text output. Their full content was recorded on model request spans even with `include_content=False`. Since validation feedback can quote invalid values from the model's response, message content that the setting was configured to withhold could reach the telemetry backend. ### Details Retry prompts without an associated tool call were serialized into span message attributes (such as `gen_ai.input.messages` and `pydantic_ai.all_messages`) as regular text parts, and this path did not apply the `include_content` check that every other message part applies. Retry prompts tied to a tool call, and all other message content, were redacted correctly. ### Impact This does not grant an attacker any new access to the agent or its data: the content is only visible to whoever can read the exported telemetry. The exposure matters when traces are exported to a destination whose audience is broader or less trusted than the agent's own data — a third-party observability vendor or a shared backend — which is the scenario `include_content=False` exists for. The disclosed content is limited to retry feedback: validation error details, which can quote invalid values from the model's output, or output-validator `ModelRetry` messages. ### Who Is Affected You are affected if you enabled instrumentation with `include_content=False` and your agent can produce retry prompts outside of tool calls: it uses a structured output mode that doesn't rely on tool calls (such as `NativeOutput` or `PromptedOutput`), or output validators on text output. You are not affected if you don't set `include_content=False`, or if all of your agent's retries come from tool calls (including the default tool-based structured output mode), which were redacted correctly. ### Remediation Upgrade to a patched version; retry prompt content now honors `include_content=False` like all other message content. If you rely on this setting, consider reviewing previously exported traces for retry prompt content that should not have been recorded. ### Workaround for Unpatched Versions If you cannot upgrade, scrub or drop the message attributes (`gen_ai.input.messages`, `gen_ai.output.messages`, `pydantic_ai.all_messages`) in your telemetry pipeline (for example with an OpenTelemetry Collector processor), or use tool-based structured output modes, whose retry feedback honors `include_content=False`. ### Credits Reported privately by the University of Sydney Security Research Team (Liyi Zhou, Ziyue Wang, Strick, Maurice, Chenchen Yu), and later independently discovered and reported publicly, with a fix, by @sean-kim05. | CVE Database V5 | ||
| Medium | 5.3 | EPSS 0.3% | CVE-2026-88257ScriptKittyOS beam_mcp · Improper Input Validation Medium5.3EPSS 0.3%CVE Database V5CVE-2026-88257 Improper Input Validation vulnerability in BeamMCP.Schema in ScriptKittyOS beam_mcp allows an MCP client to reach a tool's dispatch function with arguments that violate the input schema the server advertised. BeamMCP.Schema.validate/2 checked type, required, additionalProperties, enum and numeric bounds on the top-level arguments object only. Constraints inside nested objects and on array items (items, minItems, maxItems, minLength, maxLength, pattern, nested required, enum and additionalProperties: false) were advertised by tools/list and never checked at tools/call or prompts/get, and keywords outside the enforced subset (oneOf, anyOf, $ref) were advertised and ignored. A host whose dispatch code relies on the schema it declared receives values the schema forbids, such as an out-of-range number or an undeclared key inside a nested object. What the host does with such a value decides the impact. This issue affects beam_mcp: from 0.1.0 before 0.10.1. | CVE Database V5 | ||
| Critical | 9.8 | EPSS 0.3% | Critical9.8EPSS 0.3%CVE Database V5CVE-2026-103692 The Frontend Dashboard WordPress plugin before 3.0.5 does not perform any authorisation or nonce check on actions available to unauthenticated users that call an attacker-chosen PHP function or class method with the request data, allowing unauthenticated users to take over any account, including administrators. | CVE Database V5 | ||
| Medium | 5.5 | EPSS 0.1% | Medium5.5EPSS 0.1%GCVE Database ImageMagick versions prior to 6.9.13-56 and 7.1.2-31 contain a vulnerability where a crafted local call to the GetVirtualPixels API can cause an integer calculation error leading to a heap buffer overflow and crash of the server process. This issue has been fixed in versions 6.9.13-56 and 7.1.2-31. EPSS 0.1%Vulnerability | GCVE Database | ||
| Critical | 9.8 | EPSS 1.0% | CVE-2026-105192LMCache · Deserialization of Untrusted Data Critical9.8EPSS 1.0%CVE Database V5CVE-2026-105192 LMCache versions from 0.3.9 up to but not including 0.5.6 contain a critical deserialization vulnerability in multiprocess (distributed) mode. This mode opens an unauthenticated ZeroMQ ROUTER socket that accepts msgpack messages. When processing these messages, the server calls pickle.loads on untrusted data before request handling, allowing remote code execution as the LMCache process user. Official containers run this process as root, increasing risk. The vulnerability is fixed in version 0.5.6, which removes the unsafe pickle.loads call. | CVE Database V5 | ||
| Medium | 5.3 | EPSS 0.4% | CVE-2026-83742wolfSSL wolfSSH · Integer Underflow Medium5.3EPSS 0.4%CVE Database V5CVE-2026-83742 Unsigned integer underflow in wstrncat() in src/port.c in wolfSSL wolfSSH from v1.4.11 through v1.5.0 on non-Windows platforms allows an authenticated remote attacker to write one out-of-bounds null byte past the end of a stack buffer by sending a crafted SFTP path. wolfSSH_RealPath() in src/ssh.c appends each path component with a remaining-size bound (outSz - curSz) rather than the full destination size, so once the accumulated path reaches half the output buffer the size_t computation n - strlen(s1) - 1 wraps to near SIZE_MAX. The strncat() call is then effectively unbounded and copies the whole component; when that component exactly fills the remainder of the buffer, its terminating null is written one byte past the end. The caller's own length check keeps the copied data inside the buffer, so the overflow is limited to that single null byte, which may corrupt an adjacent stack value and crash the process. Applications that call the public wolfSSH_RealPath() with an output buffer smaller than the input path are additionally exposed to an unbounded copy, because the word32 expression outSz - segSz in that length check also wraps. | CVE Database V5 | ||
| High | 7.1 | EPSS 0.3% | High7.1EPSS 0.3%CVE Database V5CVE-2026-104944 TP-Link Tapo C500 v2.0 contains an out-of-bounds function-pointer dispatch in its TDP (TP-Link Device Protocol) daemon. A single unauthenticated UDP datagram can cause an invalid indirect call, crashing the main service and resulting in a denial-of-service condition. Successful exploitation may allow an unauthenticated attacker with network access to the affected UDP service to repeatedly crash the TDP daemon, disrupting normal device operation and availability. No authentication, session establishment, or pairing is required to trigger the condition. | CVE Database V5 |
Page 11 of 130