Docker
Monthly
Path traversal in JFrog Artifactory (CWE-22) enables an authenticated low-privilege user to write data outside the intended Docker cache directory when specific remote-repository conditions are present. The CVSS 3.1 vector scores 5.3 Medium, reflecting a real but constrained integrity risk - arbitrary filesystem writes are possible, but high attack complexity and required authentication limit opportunistic abuse. No active exploitation or public exploit code has been identified at time of analysis.
Sandbox escape in Cursor IDE for macOS (versions prior to 3.0.0) allows a malicious or prompt-injected AI agent operating in Auto-Run Sandbox mode to break container isolation by invoking the Dev Containers CLI to launch a privileged Docker container that mounts the host's virtiofs0 virtual filesystem. This grants the agent unrestricted read and write access to the user's entire home directory and enables arbitrary command execution at the user's privilege level - all without any additional permission prompt to the user. No public exploit code has been identified at time of analysis; a vendor-released patch is available as version 3.0.0.
Path traversal in XAgent's ToolServerNode workspace file endpoint allows any network-accessible user to read arbitrary files on the host by exploiting missing path containment validation in the `/workspace/file` handler. Because XAgent permits self-registration without email verification, an attacker requires no prior credentials - trivial account creation is sufficient to reach the vulnerable endpoint. Sensitive targets include application secrets, database credentials, and system configuration files that may be reachable through Docker volume mounts, with no public exploit identified at time of analysis but the fix commit publicly available.
Portainer CE through 2.44.0 exposes root-level Docker host access to any authenticated low-privileged user via a URL path normalization flaw in the Docker proxy endpoint. The authorization middleware evaluates a non-canonical request path (e.g., percent-encoded slashes, double slashes, or traversal sequences) differently from the proxy layer that ultimately forwards it to the Docker daemon - allowing crafted requests to bypass all access controls while executing with full Docker API privileges. No active exploitation has been confirmed (no CISA KEV listing) and no public exploit code has been identified at time of analysis; EPSS data was not provided in the source intelligence.
Command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated low-privilege member run arbitrary OS commands on the control-plane host. The volumeName field in the volumeBackup.create and volumeBackup.runManually tRPC endpoints is interpolated unquoted into a shell string passed to child_process.exec; because the process holds Docker socket access, injected commands run with host/root-equivalent privileges. No public exploit is identified at time of analysis, but the fix is a one-character-class change and the vulnerable code path is well documented in the published PR and advisory.
Shell command injection in Dokploy exposes the underlying host OS to arbitrary command execution by any authenticated user with Compose service edit permissions. The flaw is in the sanitizeCommand function within packages/server/src/utils/builders/compose.ts, which stripped only whitespace and surrounding quotes before interpolating user-supplied compose.command values into live shell invocations such as docker ${command} - leaving semicolons, pipe operators, backticks, and subshell substitutions entirely intact. Working exploit payloads (semicolons, $(subshell), pipes, backtick substitution) are publicly available in the fix PR test suite at https://github.com/Dokploy/dokploy/pull/4863; no CISA KEV listing exists at time of analysis, and the vendor-confirmed patch is available in v0.29.13.
Incomplete authorization in Dokploy's WebSocket handlers prior to v0.29.13 allows any authenticated organization member to obtain root terminal access to servers and read logs or statistics for services they were explicitly denied access to. The four affected handlers (terminal.ts, docker-container-terminal.ts, docker-container-logs.ts, docker-stats.ts) verify organization membership but never call checkServiceAccess, getAccessibleServerIds, or accessedServices, nullifying all fine-grained role-based access controls. No public exploit or CISA KEV listing exists; however, the attack requires only a valid low-privilege organization account, making this a meaningful privilege escalation risk in any multi-tenant Dokploy deployment.
OS command injection in Dokploy self-hosted PaaS before 0.29.8 allows an authenticated user with project access to run arbitrary commands on the Dokploy host. The getRegistryCommands() function in packages/server/src/utils/cluster/upload.ts builds a `docker login` shell string by interpolating the attacker-controlled registry password and URL without escaping, so malicious credentials are executed when a swarm deployment runs. No public exploit identified at time of analysis, but the root cause and fix are fully disclosed in the vendor advisory (GHSA-prwq-2mcm-mvhr), PR #4579, and the v0.29.8 release.
OS command injection in Dokploy self-hostable PaaS versions prior to 0.29.13 lets an authenticated user with application create or update permission achieve arbitrary command execution on the build host. The dockerImage field is interpolated unquoted into shell commands in buildRemoteDocker() (packages/server/src/utils/providers/docker.ts) and validated only as an optional string, so shell command substitution such as $(...) or backticks runs on the local build host or a remote SSH build target. The upstream fix and its regression test publicly demonstrate working injection payloads, so publicly available exploit code exists, though there is no public exploit identified as weaponized and no CISA KEV listing; EPSS was not provided.
Cross-tenant remote command execution in Dokploy (self-hosted PaaS) before 0.29.13 lets any authenticated user holding only the server:read permission run arbitrary OS commands on servers belonging to other organizations. The swarm tRPC endpoints never verified that the supplied serverId belonged to the caller's active organization, and getNodeInfo interpolated an attacker-controlled nodeId straight into a remote shell command, chaining a broken multi-tenant authorization flaw with OS command injection. No public exploit or CISA KEV listing has been identified, though the vendor security advisory and a fix-verification test are public.
OS command injection in Dokploy prior to version 0.29.13 allows any authenticated user with project write access to execute arbitrary commands as the Dokploy server process. The buildRemoteDocker() function in packages/server/src/utils/providers/docker.ts interpolates the user-controlled dockerImage field directly into a shell command passed to execAsync() without sanitization. The same unsanitized interpolation pattern was present across three separate build pipeline files, indicating a systemic rather than isolated flaw. No public exploit has been identified at time of analysis, and the vulnerability is not listed in CISA KEV.
OS command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated user with the backup:restore permission run arbitrary commands on the Docker-privileged host. The backup.restoreBackupWithLogs tRPC subscription forwards an attacker-controlled databaseName into shell strings that Node.js exec passes to /bin/sh before docker exec, so the outer host shell expands injected metacharacters. Rated CVSS 9.9 with a scope change to the host; no public exploit identified at time of analysis, though the upstream fix PR ships regression tests containing working injection payloads.
Command injection in Dokploy self-hosted PaaS before 0.29.13 lets a low-privileged organization member run arbitrary OS commands inside the root Dokploy container, which holds the host Docker socket, effectively yielding host takeover. The destination.testConnection mutation interpolates unsanitized S3 fields (accessKey, secretAccessKey, region, endpoint, provider, bucket) into an rclone shell command run via child_process.exec. No public exploit is identified at time of analysis, but the fix is confirmed in v0.29.13 and the root cause is clearly documented in the upstream patch (PR #4873).
OS command injection in Dokploy self-hosted PaaS prior to 0.29.13 lets an authenticated project member with compose write and deploy permissions execute arbitrary commands on the Docker-privileged host. The compose.update operation persists an unvalidated composePath that is later interpolated verbatim into `docker compose -f`, `docker stack deploy -c`, and `touch` commands run via `/bin/sh -c`, so a crafted path fires shell metacharacters when the compose is deployed. No public exploit identified at time of analysis and the issue is not listed in CISA KEV, but the upstream regression test suite demonstrates working injection payloads, making the path to exploitation well-understood.
Privilege escalation via missing authorization in Dokploy, a self-hostable Platform-as-a-Service, lets any authenticated organization member open a root shell inside arbitrary containers on a self-hosted instance. The /docker-container-terminal WebSocket handler authenticated the caller but never checked the attacker-supplied containerId against the caller's role, organization, or service scope before invoking docker exec. Fixed in 0.29.13; no public exploit identified at time of analysis, though the upstream fix commit is public.
Privilege escalation to host root in Dokploy self-hosted PaaS versions prior to 0.29.13 allows any authenticated organization member to hijack WebSocket terminal and log-streaming handlers that authenticate the session but never check the role/permission model enforced elsewhere. Because these handlers can open an interactive shell into any container - including the Dokploy container that mounts the Docker socket - a low-privileged tenant can obtain root on the host and cross every tenant boundary. No public exploit identified at time of analysis, though the upstream fix commit and a regression test are public. The CVSS is 9.9 driven by scope change and full CIA impact.
Command injection in Dokploy self-hosted PaaS versions prior to 0.29.13 lets an authenticated user with database-service provisioning rights run arbitrary shell commands on managed remote servers. The user-controlled dockerImage field for PostgreSQL, MySQL, MariaDB, MongoDB, Redis, and libSQL services is interpolated unquoted into a 'docker pull ${dockerImage}' command executed over the remote-server code path (execAsyncRemote), enabling shell metacharacter injection. Rated CVSS 9.9 with a scope change; no public exploit or CISA KEV listing is identified, though the patch ships a regression test demonstrating the injection.
Remote command injection in Dokploy self-hosted PaaS before 0.29.13 allows an authenticated dashboard user to execute arbitrary shell commands on managed remote nodes. The registry credential-testing and Docker Swarm cluster-management endpoints interpolate user-controlled values (nodeId, imagePrefix/username driving the registry tag) into unquoted shell strings that run over SSH via execAsyncRemote. Rated CVSS 9.9 with scope change; no public standalone exploit is identified, though the public fix commit df2779e and advisory GHSA-4mfc-grxw-6858 disclose the exact vulnerable code paths and injection payloads.
REST API connection exhaustion in Klever-Go versions 1.7.14 through 1.7.17 allows unauthenticated remote attackers to render node API services unavailable by holding slow-header connections open until server file descriptors are exhausted. The root cause is Gin's Engine.Run convenience method, which delegates to Go's default http.ListenAndServe without any ReadHeaderTimeout, ReadTimeout, or MaxHeaderBytes configured, leaving incoming connections open indefinitely if the client never completes request headers. A proof-of-concept documented in GHSA-w4c6-7r69-w7j9 confirmed that 120 such connections caused all 20 of 20 legitimate API probes to fail with 'accept: too many open files' on v1.7.17; no CISA KEV listing was found, and no public exploit beyond the researcher's PoC is identified at time of analysis.
Unauthenticated arbitrary file write in Dinky v1.2.5 and its byte-identical development branch lets anyone who can reach the HTTP port (8888 by default) overwrite files as the Dinky service account, because the POST /download/uploadFromRsByLocal handler feeds a caller-supplied path straight into new File(path) and transferTo(dest) with no validation. The route is exempt from Sa-Token auth and guarded only by a header check against a dinkyToken whose default value is hardcoded in source and shipped to every install, so the guard is effectively no guard. The researcher (VulnCheck) demonstrated full remote code execution by shadowing Dinky.class on the writable, chmod-777 classpath and by planting attacker JavaScript in the served index.html; there is no public exploit identified at time of analysis and it is not in CISA KEV, but the disclosure describes a working demonstration.
Credential exfiltration via the tenant API in OpenReception appointment-booking-software prior to v1.0.2 allows any authenticated TENANT_ADMIN to retrieve the full PostgreSQL connection string - including plaintext password - for the shared database instance. In default docker-compose.prod.yml deployments, those credentials belong to the postgres superuser (rolsuper=true), granting the attacker read-write access to every tenant's database, all GLOBAL_ADMIN password hashes and session records, and superuser-level PostgreSQL functions (pg_read_server_files, COPY FROM PROGRAM) usable for container-level escalation. No public exploit code or CISA KEV entry exists at time of analysis; EPSS data was not provided, but the CVSS S:C scope change and the cross-tenant blast radius make this a high-priority patch target for any operator running the affected version.
Cross-user HTTP response poisoning in Traefik's default reverse proxy allows an unauthenticated remote attacker using HTTP/2 or HTTP/3 to smuggle responses into other clients' backend connections, potentially delivering authenticated or private content from one user to another. All supported Traefik branches through v2.11.52, v3.6.23, and v3.7.8 are affected in default configuration when fronting Go net/http or gunicorn/Flask backends, which are confirmed 'armed' (respond to CONNECT with keep-alive non-2xx without draining the body). A proof-of-concept is publicly available demonstrating reliable cross-user poisoning including a cascade scenario where 8 of 8 sequential victims read responses that were not their own; no CISA KEV listing was present at time of analysis.
Unauthenticated denial-of-service in sgoudelis/Ground Station prior to 0.6.0 allows any network peer to forcibly terminate the application process by emitting a single Socket.IO event requiring no credentials. Authentication enforcement is disabled and a wildcard CORS policy is in place, exposing the service_control handler - which triggers process shutdown via a restart_service command - to any host with TCP access to port 7000. In Docker deployments, the attack can be repeated in a loop to sustain a persistent outage of all satellite-tracking sessions, SDR recording pipelines, demodulators, decoders, and rotator controllers. No public exploit or CISA KEV listing is identified at time of analysis.
Unauthenticated remote code execution in OpenChamber 1.11.7 lets remote attackers run arbitrary OS commands by POSTing to the /api/fs/exec endpoint, which hands input directly to Node.js spawn() with no allowlist, blocklist, or argument sanitization. Because the authentication middleware silently no-ops when UI_PASSWORD is unset - the state of the default Docker deployment - the endpoint is reachable without credentials and returns full stdout, stderr, and exit code to the attacker. Reported by VulnCheck; there is no public exploit identified at time of analysis and it is not listed in CISA KEV, though the flaw is trivially exploitable.
Host filesystem read and write access in IBM Langflow OSS 1.0.0 through 1.10.3 is achievable by any authenticated low-privilege user via insufficient filtering of Docker volume-mount and device-mapping arguments passed to Docker-based MCP servers. By injecting unsanitized flags such as --volume into MCP server configuration, an attacker can bind-mount arbitrary host directories into a spawned container, exposing or tampering with sensitive files outside the intended Docker isolation boundary. No public exploit code has been identified at time of analysis and no CISA KEV listing exists, but the network-exploitable, low-complexity attack path and full CIA impact score (CVSS 8.8) make this a high-priority patch target for any organization running Langflow in Docker environments with externally accessible or multi-tenant access.
Missing authentication in the NASA-AMMOS ANMS reference implementation exposes the amp-manager REST API (CivetWeb, port 8089) directly on the host network, allowing any network-reachable client to command DTNMA agents without credentials. Because the shipped docker-compose.yml publishes the port and bypasses the CAM authentication gateway, unauthenticated remote attackers can enumerate agents, submit arbitrary EXECSET command sets to them, and clear stored reports. No public exploit identified at time of analysis; the flaw affects the reference/testbed implementation rather than onboard spacecraft flight software, though managed agents may represent real ground or space nodes depending on deployment.
Unauthenticated OAuth2 access-token theft in Flowise (npm/flowise <= 3.1.2) stems from the token-refresh endpoint POST /api/v1/oauth2-credential/refresh/:credentialId being listed in WHITELIST_URLS, so it bypasses authentication entirely. Any remote party who knows or guesses a credential ID can force the server to decrypt the stored OAuth2 credential, refresh it against the provider using the victim's client secret, and receive the fresh access_token directly in the response body. No public exploit code has been identified, but the researcher (Shinobi Security) validated the missing-auth behavior in Docker, and a vendor-released patch is available in 3.1.3.
Remote code execution in FlowiseAI Flowise 3.1.2 lets an authenticated user abuse the 'SQLite Record Manager' node's `additionalConfig` input to override the target database path and write an attacker-shaped SQLite file to any location on disk. Because the official Docker image runs as root, the file can be planted at /etc/chromium/exploit.conf, and a second Upsert operation that launches Puppeteer/Chromium sources that .conf file and executes an embedded reverse-shell payload, yielding full application compromise as root. No public exploit is identified at time of analysis beyond the detailed reproduction steps in the elttam advisory; the issue is patched in 3.1.3.
Remote code execution as root in Flowise (npm packages flowise and flowise-components, versions 3.0.5 through 3.1.2) lets any authenticated user with a valid API key escape the NodeVM sandbox used by the custom-function feature and run arbitrary OS commands. The flaw stems from executeJavaScriptCode() merging caller-supplied nodeVMOptions over its secure defaults with a JavaScript spread, so an attacker can re-enable blocked builtins (child_process, fs) via require.builtin:["*"]. A detailed working exploit is published in the vendor's GHSA advisory, so publicly available exploit code exists; there is no CISA KEV listing, meaning no confirmed active exploitation at time of analysis.
Authenticated remote code execution in FlowiseAI Flowise (versions ≤ 3.1.2, npm packages flowise and flowise-components) arises from a vm2 JavaScript sandbox escape reachable through the AgentAsTool, ChatflowTool, and ExecuteFlow nodes, which still run untrusted code in the deprecated in-process vm2 sandbox (useSandbox: false). An attacker who can edit a chatflow injects code via an unvalidated baseURL URL-hash fragment and abuses moment's CVE-2022-24785 path-traversal (whose fix is bypassable inside the sandbox) to break out of vm2 and run arbitrary commands as the Flowise service account, fully compromising the host. A complete working exploit is published in the elttam/GitHub advisory, but the flaw is not in CISA KEV.
Authenticated remote code execution in FlowiseAI Flowise 3.1.2 and earlier lets any logged-in user escape the vm2 sandbox and run arbitrary OS commands on the host. The MySQL/Postgres/SQLite Record Manager and MySQL/Agent Memory nodes expose an unfiltered additionalConfig input passed directly into the TypeORM DataSource constructor, whose entities/subscribers/migrations options can load attacker-supplied JavaScript files. A full public reproduction (including a root reverse-shell payload) was published in the elttam advisory, and the vendor fixed it in 3.1.3.
OS command injection in OpenWrt's luci-app-dockerman grants any authenticated user holding only the read ACL full root-level code execution on the affected router. The vulnerable run_ttyd handler in the ucode docker_rpc.uc backend constructs a shell command from attacker-controlled request fields (id, cmd, uid) and passes them unsanitized to system() within the rpcd root context, reachable via a simple HTTP POST to /ubus. Only LuCI master and openwrt-25.12 snapshots after the JS-to-ucode backend conversion are affected; upstream patch commits exist but no released patched snapshot version was confirmed as of the advisory, and no public exploit is identified at time of analysis.
Sensitive-credential disclosure leading to full node compromise in Pterodactyl Wings before v1.12.3 lets a low-privileged, authenticated panel user (a server owner or a subuser holding startup.update) smuggle a {{config.*}} placeholder through a user-editable egg variable, causing Wings to resolve it against its entire daemon configuration and write secrets - including the node daemon token, token_id, and Docker registry credentials - into a file the user can read via the file manager or SFTP. Because the daemon token is both the Panel⇆Wings API bearer and the HMAC signing key for every JWT the node issues, an attacker can then forge tokens and act against every server on the node. No public exploit identified at time of analysis and it is not listed in CISA KEV, but the CVSS is 9.9 and the affected templating pattern is common across stock and community eggs.
Exposure of a default-credentialed PostgreSQL database in the VPS.org one-click Supabase template allows remote attackers to connect directly to the database on 0.0.0.0:5432 using the well-known default password 'postgres', gaining full read/write access. The flaw stems from insecure default initialization combined with Docker's iptables rules overriding host UFW firewall policy, so operators who believe UFW protects the port are silently exposed. No public exploit has been identified at time of analysis, and EPSS is low (0.14%, 4th percentile), but SSVC rates the technical impact as total and exploitation as automatable.
Remote code execution in Somta Juggle through version 1.6.0 lets unauthenticated network attackers run arbitrary OS commands by reaching the bundled H2 database web console, which ships exposed at /h2-console with default credentials. Because the stock Docker image runs as root, successful exploitation via the classic H2 CREATE ALIAS Runtime.exec() technique yields root-level code execution on the host container. No public exploit identified at time of analysis, though the VulnCheck advisory provides a detailed exploitation path.
Predictable shared-secret generation in Spring Tools for Eclipse (5.2.0 and earlier) weakens the authentication protecting Spring Boot DevTools remote-restart uploads to remotely deployed targets such as Docker containers or Cloud Foundry apps. Because the secret is derived from a non-cryptographic PRNG rather than a secure random source, an attacker able to reach the deployed application's DevTools remote endpoint may predict the secret, authenticate restart uploads, and push arbitrary code, yielding remote code execution (CVSS 8.3, scope-changed). There is no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Network exposure of Docker container control ports in Spring Tools for Eclipse (versions 5.2.0 and earlier) occurs because the Boot Dashboard Docker integration binds these ports to 0.0.0.0 (all interfaces) instead of loopback. Any attacker on the same network segment as a developer running the integration can reach the container control interface without authentication, yielding high confidentiality, integrity, and availability impact. There is no public exploit identified at time of analysis and the issue is not in CISA KEV, but the flaw is trivially triggered once a developer starts the affected feature.
Arbitrary host file write in termux/proot-distro before 5.1.5 lets a malicious rootfs tarball or Docker layer plant an absolute-path symlink during `proot-distro install`, so a follow-up file member is written through that symlink onto the host filesystem - outside the container, before it is ever run. The install/reset paths (_extract_plain_tar) and the Docker layer path (_apply_layer) validated member names for '..' traversal but never validated symlink targets in member.linkname. No public exploit identified at time of analysis and it is not in CISA KEV, but the flaw is confirmed and fully described by the vendor GHSA advisory with vulnerable source shown.
Authentication bypass in pytonapi 2.2.0 allows unauthenticated remote attackers to trigger webhook handlers when a custom path is configured via the documented `path=` argument. The TonapiWebhookDispatcher fails to store bearer tokens for custom paths, causing the token check to be skipped entirely. Publicly available exploit code exists but no active exploitation in the wild has been confirmed.
Server-side template injection in Tugtainer (self-hosted Docker container auto-update tool) versions before 1.30.2 lets any authenticated user achieve root-level OS command execution by injecting Jinja2 expressions into notification templates. The title_template and body_template fields are rendered by an unsandboxed jinja2.Environment, so template payloads escape into arbitrary code running as root inside the container. Rated CVSS 9.9 with a scope change; no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Denial of service in PhpSpreadsheet (PHPOffice) versions 2.0.0 through 5.8.0 lets remote unauthenticated attackers crash a PHP worker with a ~1 KiB malformed XLS/OLE file. The library's OLERead::read() follows attacker-controlled OLE sector chains without cycle detection, so a sector that points back to itself makes the small-block depot loop append the same data until memory is exhausted. It is triggered during automatic format detection via Reader\Xls::canRead(), so any app that probes untrusted spreadsheet uploads is affected; a working proof of concept is published in the vendor advisory, though the flaw is not in CISA KEV.
Denial-of-service in PhpSpreadsheet's Gnumeric reader lets remote attackers crash PHP worker processes by uploading a tiny gzip-compressed .gnumeric file that decompresses to hundreds of megabytes. The reader's Gnumeric::canRead() calls gzdecode() with no decompressed-size cap during routine file-type detection, so a ~98 KB payload expanding to ~96 MiB exhausts a 64M memory limit and triggers a fatal error before validation. No public exploit is identified at time of analysis, but a working proof-of-concept is described in the advisory and the CVSS score is 7.5 (High) with A:H impact.
Server-side request forgery in Gitea before 1.27.0 lets attackers coerce the server into HTTP requests against internal hosts because its outbound IP allow-list classifier (IsGlobalUnicast && !IsPrivate) fails to block CGNAT (100.64.0.0/10) and nine IPv6 transition prefixes. An authenticated user can point a webhook or repo migration at an internal CGNAT service and read the full response (status, headers, and up to 1 MB body) rendered back on the hook detail page; separately, when OpenID sign-in is enabled the unauthenticated /user/login/openid discovery fetch uses http.DefaultClient with no IP filtering, giving anonymous internet callers a blind SSRF primitive. Publicly available exploit code exists (bundled run_poc.sh reproduces all three primitives), but no active exploitation is confirmed.
Unauthenticated denial of service in Gitea's Locale middleware allows any remote attacker to consume ~2 seconds of server CPU per HTTP request by crafting a ~1 MiB Accept-Language header composed of underscore separators, bypassing the existing CVE-2022-32149 guard in golang.org/x/text which only counts dash characters. All Gitea releases from 1.22.x through 1.26.x are affected because the middleware at modules/web/middleware/locale.go:38 passes the raw, unfiltered header directly to the quadratic-time ParseAcceptLanguage parser; ten concurrent attackers consuming ~10 MiB/s of upstream bandwidth can saturate all cores of a ten-core host indefinitely. Publicly available exploit code exists in the GHSA advisory; no active exploitation has been confirmed by CISA KEV at time of analysis.
Authorization bypass in Gitea before 1.27.0 lets a public-only Personal Access Token read internal content owned by Limited-visibility users and organizations, exceeding the reach the scope is meant to grant. The Repository and Package scope categories only test repo.IsPrivate / Owner.Visibility.IsPrivate(), which return false for VisibleTypeLimited, so an authenticated attacker with a public-only PAT can fetch READMEs, repo content, packages from all 24 registries, and even perform full git-upload-pack clones of instance-internal projects. A vendor-verified end-to-end Docker PoC exists (publicly available exploit code exists); it is not in CISA KEV and EPSS is low at 0.17% (6th percentile). This is the residual gap left after CVE-2026-25714 / PR #37118 fixed the sibling User/Org/ActivityPub cases.
Path-traversal to remote code execution in Home Assistant Core before 2026.6.0 lets an authenticated user who can supply a backup archive overwrite arbitrary files on the host. The backup-restore routine trusts a tar SYMTYPE (symlink) entry whose linkname is an absolute path outside the extraction directory, then writes a following regular-file entry through that unvalidated symlink; because the official Docker image runs the process as root, an attacker can drop code into auto-imported Python paths (e.g. site-packages/sitecustomize.py) and gain code execution. Reported by VulnCheck with a vendor patch available (2026.6.0); no public exploit identified at time of analysis and it is not listed in CISA KEV.
Unauthenticated loopback API access and path traversal in WhatsApp MCP Server (whatsapp-mcp) prior to v0.2.1 allow any same-user local process - including sibling MCP servers and IDE extensions - to send WhatsApp messages from the paired account and exfiltrate arbitrary user-readable files (SSH private keys, browser session data, dotfiles) as WhatsApp document attachments. The whatsapp-bridge HTTP service on 127.0.0.1:8080 requires no authentication and validates no Host header, enabling a DNS rebinding attack whereby a malicious webpage visited by the user can trigger identical file exfiltration remotely without any credentials. No public exploit identified at time of analysis; vendor-released patch v0.2.1 is available.
Local denial-of-service in the Linux kernel's IPv4 raw socket path allows a caller holding CAP_NET_RAW to crash the host by sending an IP_HDRINCL packet whose self-reported header length (ihl) is below the RFC 791 minimum of 5. raw_send_hdrinc() checks that the header fits within the message but never rejects ihl < 5, so the malformed header is injected into the output path where downstream consumers such as ah_output() compute a negative header size, cast it to size_t, and perform an OOB memcpy of nearly SIZE_MAX bytes, panicking the kernel. It affects all maintained kernel branches and is reachable from an unprivileged process inside a user+net namespace (CONFIG_USER_NS=y) or a rootless Docker container with NET_ADMIN; no public exploit identified at time of analysis and EPSS risk is low (0.18%).
Authentication bypass in meta-ads-mcp (< 1.0.115) lets an unauthenticated network caller send an arbitrary X-Pipeboard-Token header to slip past AuthInjectionMiddleware and execute every MCP tool using the server operator's Meta Ads credentials. The guard only rejects requests when BOTH an auth token and a pipeboard token are absent, but X-Pipeboard-Token satisfies the pipeboard branch without setting any auth context, causing the token getter to fall back to the operator's META_ACCESS_TOKEN environment variable. A publicly available exploit code exists (detailed PoC with Dockerfile and poc.py), enabling full read and write access to the operator's Meta Ads data; it affects only streamable-http deployments with META_ACCESS_TOKEN configured.
Unauthenticated Server-Side Request Forgery in the meta-ads-mcp Python package (versions <= 1.0.114) lets remote attackers coerce the server into fetching arbitrary attacker-chosen URLs via the upload_ad_image MCP tool's image_url parameter. The flaw is reachable when the server runs with the officially supported --transport streamable-http mode, because the pre-fetch authorization check only requires a non-empty Bearer token while real Meta credential validation happens after the outbound fetch. Publicly available exploit code exists (a working Docker PoC); this is not in CISA KEV and no EPSS score was provided, so real-world exploitation is unconfirmed, but the vulnerability enables reaching localhost services, RFC 1918 hosts, and cloud metadata endpoints such as 169.254.169.254.
Privilege escalation via incomplete privilege drop in the Python 'sh' subprocess library (versions < 2.2.4): when a root/privileged process launches a command with the _uid option, the child changes UID and primary GID but fails to clear the parent's supplementary groups via setgroups(). Any subprocess expected to run unprivileged can therefore retain sensitive parent groups (root, docker, disk, shadow, sudo), reading or writing resources those groups grant. No public exploit identified at time of analysis and it is not in CISA KEV; the fix is confirmed in release 2.2.4.
Denial of service in Wazuh's analysis engine (wazuh-analysisd) lets an unauthenticated remote attacker permanently halt SIEM alert processing on Wazuh manager versions 1.0.0 through 4.14.4. Because the official wazuh/wazuh-docker deployment ships with password-less agent enrollment enabled by default, an attacker can register as an agent and send a crafted rootcheck event that overflows a fixed 30-byte heap buffer, crashing the daemon while the dashboard and API keep showing stale data - silently blinding the SIEM. There is no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Sensitive configuration file disclosure in Grav CMS before 2.0.4 lets unauthenticated remote attackers bypass the bundled .htaccess protections by requesting blocked file types with uppercase or mixed-case extensions (e.g., .YAML, .PHP). The shipped rules omit the Apache [NC] flag, so extension matching is case-sensitive and fails to block case variants on case-insensitive filesystems (Windows/NTFS, macOS/HFS+, Docker volume mounts), exposing files that may hold API keys and credentials. There is no public exploit identified at time of analysis, and the issue is not listed in CISA KEV.
Authenticated command-injection in Pheditor 2.0.4 lets any user holding the 'terminal' permission bypass the TERMINAL_COMMANDS allowlist and run arbitrary OS commands as the web server user. The terminal handler only blocks '&', ';', and '||' and validates commands with a prefix check before handing the full string to shell_exec(), so shell substitution like ls$(...) satisfies the allowlist while executing attacker-controlled code. A working PoC is published in the GitHub advisory, though there is no public exploit identified as a standalone weaponized tool and no active exploitation reported.
Build-time remote code execution in Nuclio (serverless/FaaS platform) versions <= 1.15.27 lets remote attackers run arbitrary OS commands as root inside the function-builder container. The Java runtime renders user-supplied runtimeAttributes.repositories values into a Groovy build.gradle file via Go's text/template using the non-escaping {{ . }} action, so an attacker can inject a closing brace to break out of the repositories {} block and append Groovy that Gradle executes during its configuration phase. Because the Dashboard API defaults to NOP (no) authentication, exploitation needs no credentials; a dynamically-verified proof-of-concept is published in the vendor advisory, though there is no public exploit identified as being used in active attacks.
Missing authentication in @andrea9293/mcp-documentation-server v1.13.0 exposes its document-management Web UI/API on all network interfaces (0.0.0.0:3080) instead of localhost, letting any adjacent-network client read, add, search, and delete documents in the MCP knowledge base without credentials. Rated CVSS 8.8 (CWE-306), the flaw is exploitable by unauthenticated attackers reachable over the same LAN, VM network, Docker bridge, or VPN. A detailed proof-of-concept exists in the reporter's advisory, though there is no public exploit identified as being used in active attacks and it is not listed in CISA KEV; the vendor fixed it in v1.13.1.
Full-read SSRF in Koel v9.6.0 allows any authenticated user to bypass URL validation via the Subsonic API, creating radio stations pointing to internal HTTP services and reading the full response body. A publicly available proof-of-concept exists; exploitation requires only standard user credentials and no elevated privileges.
GitHub Actions artifact-poisoning (pwn request) in labring/FastGPT allows an external attacker who opens a pull request to smuggle attacker-controlled Docker images into privileged CI/CD pipelines. At commit 22ebfacbb43311e9b73294040ae0eb87390c6bba and earlier, artifacts built from untrusted PR code in the preview-docs-build and preview-fastgpt-build workflows are consumed by privileged workflow_run jobs, letting a malicious image be pushed to GHCR and, for documentation previews, deployed to a Kubernetes cluster using the secrets.KUBE_CONFIG_CN credential. There is no public exploit identified at time of analysis and it is not in CISA KEV, but the flaw is trivially reachable by any contributor.
Unauthenticated abuse of the operator's NetLicensing credential affects Labs64 netlicensing-mcp (FastMCP server) versions <= 0.1.5 when run in HTTP transport mode. The ApiKeyMiddleware forwards requests that carry no client API key straight to the tool handlers, and the downstream client falls back to the server-side NETLICENSING_API_KEY environment variable, so any network-reachable attacker can invoke every MCP tool (list/create/update/delete of products, licenses, licensees, tokens) under the operator's identity and account quota. Publicly available exploit code exists (a self-contained Docker/Python PoC in the advisory), no public active exploitation is confirmed, and the issue is fixed in 0.1.6.
Arbitrary file write in yutu, a Go-based YouTube CLI and MCP server, lets any caller of the built-in `caption-download` MCP tool place attacker-controlled bytes at any filesystem path the yutu process can write to. The vulnerable `Caption.Download()` calls `os.Create()` on the caller-supplied `file` parameter, bypassing the `YUTU_ROOT` (`pkg.Root`/`os.OpenRoot`) confinement that every other caption write path enforces. Publicly available exploit code exists (a self-contained Docker PoC ships with the advisory); the flaw is not in CISA KEV and no active exploitation is reported, and the vendor has released a fixed version (0.10.9-dev1).
Cross-tenant data exposure in n8n-mcp (npm package, <= 2.56.0) lets an authenticated tenant on a shared multi-tenant HTTP instance read, delete, and destroy the automatic workflow version backups belonging to other tenants. Because each snapshot embeds full node definitions, the leaked data can include credential references and authorization headers, making this both a confidentiality and an integrity/availability failure. Rated CVSS 9.9 due to the scope change across tenant trust boundaries; no public exploit is identified at time of analysis, and it is not listed in CISA KEV.
Unauthenticated remote denial of service in StacklokLabs MKP (Model Context Protocol for Kubernetes) server versions before 0.4.1 lets a single crafted `tools/call` request against the default `:8080` endpoint exhaust process memory. The `get_resource` tool accepts attacker-controlled `limitBytes`/`tailLines` values with no upper bound and streams the entire Kubernetes pod-log response into an in-memory `bytes.Buffer`, driving an OOM kill (dynamic reproduction grew RSS from 25.8 MB to 1,179.3 MB on one request). Publicly available exploit code exists in the GitHub Security Advisory; there is no public evidence of active exploitation.
Credential leakage in sigstore-js (specifically the @sigstore/oci package) before 0.7.1 allows Docker registry credentials to be transmitted to the wrong registry because getRegistryCredentials() matched configured auth keys against the target registry using a substring check instead of an exact host match. An attacker who can induce a victim to push or pull signatures/attestations against an attacker-named registry whose hostname has a substring relationship with a legitimately configured registry (e.g. 'cr.io' vs 'ghcr.io', or 'victim.127.0.0.1:5000' vs '127.0.0.1:5000') can capture the victim's stored registry credentials. There is no public exploit identified at time of analysis, and this is not listed in CISA KEV; the underlying weakness (CWE-522) is confirmed and fixed by the vendor in @sigstore/oci 0.7.1.
Improper API key generation in Sonatype Nexus Repository Manager lets a remote attacker impersonate a targeted user and perform repository operations on their behalf. The flaw stems from insufficient entropy (CWE-331) in format-specific API key realms, so an attacker who can predict or reconstruct a victim's key gains their access without credentials. The vendor (Sonatype) reported and patched the issue in release 3.93.0; there is no public exploit identified at time of analysis and it is not listed in CISA KEV.
Account takeover in Kimai time-tracking software (versions <= 2.57.0) stems from the official Docker image shipping a publicly-known default APP_SECRET ('change_this_to_something_unique') that is used as Symfony's kernel.secret. Any internet-reachable instance deployed from the image without overriding APP_SECRET lets an unauthenticated attacker forge HMAC-signed remember-me cookies, login links, and password-reset URLs to log in as any account, including the super_admin. Publicly available exploit code exists (a Nuclei template), though EPSS remains low at 0.38%.
Arbitrary file write in Crawl4AI's Docker API server (versions before 0.8.7) lets remote unauthenticated attackers overwrite any file writable by the service account by abusing the unvalidated output_path parameter on the /screenshot and /pdf endpoints. Reported by VulnCheck and disclosed in GitHub advisory GHSA-365w-hqf6-vxfg, the flaw enables path traversal or absolute-path writes that corrupt server files and cause denial of service. There is no public exploit identified at time of analysis and it is not listed in CISA KEV, but the network-reachable, no-privileges attack surface makes it a straightforward target once a Crawl4AI Docker server is exposed.
Credential exfiltration in Crawl4AI's Docker API server (all versions before 0.8.8) lets remote unauthenticated attackers steal secrets from the host. By abusing the exposed /md, /llm, and /llm/job endpoints, an attacker supplies a malicious base_url to redirect outbound LLM API calls and sets api_token to the special form env:VARIABLE_NAME, causing the server to resolve and leak arbitrary environment variables - including provider API keys and the JWT SECRET_KEY, which in turn enables full authentication bypass. No public exploit identified at time of analysis, but the flaw is trivially exploitable and reported by VulnCheck with an assigned CVSS 4.0 score of 8.8.
Arbitrary Python code execution in BabelDOC (funstory-ai, pip package `babeldoc`) prior to 0.6.3 allows an attacker to run code in the context of the translation process by having a victim process a crafted PDF. The vendored pdfminer CMap loader (`cmapdb.py::_load_data`) strips only NUL bytes from a PDF-controlled CMap/Encoding name and passes it to `pickle.loads()`, so a hex-encoded absolute path in the PDF's `/Encoding` name redirects deserialization to an attacker-planted `.pickle.gz` file. A detailed, working proof-of-concept exists (publicly available exploit code exists); there is no CISA KEV listing and no public evidence of active exploitation at time of analysis.
Server-side request forgery in Crawl4AI's Docker API server (versions before 0.8.7) allows remote unauthenticated attackers to coerce the server into making arbitrary internal requests. The /crawl/job and /llm/job endpoints accept caller-supplied webhook URLs without validating the destination, so an attacker can target private IP ranges, Docker network internals, or the cloud metadata endpoint (169.254.169.254) to reach otherwise unreachable services and harvest credentials. CVSS 4.0 rates it 9.2 (critical); no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Boolean-based blind SQL injection in YesWiki's public Bazar entry-listing API allows unauthenticated attackers to read arbitrary database contents by abusing numeric query/queries filters. Because numeric field values are escaped with mysqli_real_escape_string but inserted into the SQL statement without quotes or numeric validation, injected boolean expressions (e.g. '100 OR (SELECT COUNT(*) FROM yeswiki_users)>0') are evaluated by the database, turning the public endpoints into a data-exfiltration oracle. A detailed, self-contained proof-of-concept is published in the advisory; a vendor patch (commit f3b0dd0) is available, though the issue is not listed in CISA KEV.
Signature-verification bypass in YesWiki (v4.6.5 and earlier, ActivityPub-federated Bazar forms) lets an unauthenticated remote attacker forge a valid ActivityPub actor and have Create/Update/Delete activities processed as if properly signed. The flaw stems from HttpSignatureService::verifySignature() using a loose boolean check (!openssl_verify(...)) that treats openssl_verify()'s -1 internal-error return as success. A detailed proof-of-concept exists (publicly available exploit code exists) demonstrating full CRUD on Bazar entries; the issue is not in CISA KEV and no EPSS score was provided.
Stored Server-Side Template Injection in YesWiki's Bazar module allows an authenticated administrator to plant arbitrary Twig expressions into form semantic template fields (`bn_sem_template`, `bn_sem_reverse_template`), which are persistently stored and later executed server-side when unauthenticated requests reach the public JSON-LD semantic endpoint. Published proof-of-concept in the GHSA advisory confirms full escalation from harmless template evaluation (`{{ 7 * 7 }}` → `49`) to interactive OS-level reverse shell. The fix is confirmed in YesWiki v4.6.6, a dedicated security release addressing 12 CVEs; no CISA KEV listing at time of analysis, but publicly available exploit code exists.
Unauthenticated remote code execution in Ruflo (an agent meta-harness for Claude Code and Codex) before 3.16.3 arises because the default docker-compose deployment exposes the MCP bridge's POST /mcp and POST /mcp/:group endpoints with no authentication. A network attacker can send a JSON-RPC tools/call to the terminal_execute tool to gain an interactive shell inside the bridge container, exfiltrate provider API keys, and tamper with AgentDB learning-store patterns. Rated CVSS 10.0 with a scope change; no public exploit identified at time of analysis, and it is not in CISA KEV.
Server-side request forgery in the Ruby css_parser gem (< 3.0.0) lets a remote unauthenticated attacker force the parsing server to issue arbitrary HTTP/HTTPS GET requests, and via an attacker-controlled 3xx redirect to a file:// URI, escalate to arbitrary local file disclosure. The flaw sits in CssParser::Parser#read_remote_file, reachable through load_uri! and any add_block! call that supplies base_uri: - Premailer being the canonical consumer - so a single attacker-planted @import url(...) in parsed CSS reaches the sink. Publicly available exploit code exists (author-supplied PoC); there is no public exploit identified as being used in active campaigns, and it is not listed in CISA KEV.
Path traversal in Note Mark's migrate export CLI commands enables a low-privilege authenticated attacker to write files at arbitrary host filesystem locations outside the configured export directory, leading to root-level code execution in typical Docker deployments. The flaw exists in versions up to and including v0.19.4: book and note slugs are validated with huma's `pattern:"[a-z0-9-]+"` struct tag, but huma applies the regex unanchored via `MatchString`, so a traversal slug like `../../../../../../etc/cron.d/backdoor` passes validation because it contains a matching substring. When an administrator later executes `note-mark migrate export` (commonly as root in Docker), the raw slug is passed directly into `path.Join`/`os.MkdirAll`/`os.Create`, resolving the traversal and writing attacker-controlled content outside the export root. No public exploitation is confirmed (not in CISA KEV); a self-contained Go proof-of-concept is included in the GHSA advisory and demonstrates both the validation bypass and out-of-bounds file write.
Memory-exhaustion denial of service in soupsieve, the CSS selector engine bundled with Beautiful Soup 4 (beautifulsoup4), lets remote unauthenticated attackers crash Python services by submitting a large comma-separated CSS selector to soupsieve.compile() or Beautiful Soup's .select()/.select_one(). Each comma-delimited item is parsed into a ~976-byte object graph with no cap on list length, so a ~500 KB selector string of 'a,a,a,...' expands to roughly 244 MB of heap (a ~488x amplification), triggering OOM kills or MemoryError. A working proof-of-concept is published in the advisory; no CISA KEV listing or in-the-wild exploitation is reported.
Remote code execution in Nuclio's Kubernetes cron-trigger implementation allows an attacker who can submit a NuclioFunction specification to inject arbitrary shell commands that execute inside CronJob pods running as root. Two unsanitized paths exist: header keys are interpolated verbatim inside double-quoted shell arguments (breaking quoting context), and event bodies processed with Go's strconv.Quote survive as unescaped `$()` command substitution sequences. Both paths were dynamically verified on the latest release (1.15.27), and the resulting CronJobs persist as orphaned resources even after function deletion because they carry no ownerReferences. A publicly available PoC with full reproduction steps exists per the GHSA advisory. No KEV listing at time of analysis.
Container-to-host sandbox escape in HashiCorp Nomad and Nomad Enterprise lets an authenticated job submitter using the Docker task driver bind-mount an arbitrary host path into their container even when volume bind mounts are administratively disabled, enabling read and write access to files on the underlying host. The scope-changing flaw (CVSS 3.1 8.7) affects the Community and Enterprise editions and is fixed in Nomad 2.0.4 (CE), and Enterprise 2.0.4, 1.11.8, and 1.10.14. There is no public exploit identified at time of analysis and it is not on CISA KEV.
Host namespace escape in HashiCorp Nomad and Nomad Enterprise lets an authenticated job submitter bypass the allow_privileged control for the Docker task driver, launching containers in host PID/network/IPC namespaces to read data from the host or co-located workloads on the same client node. The flaw stems from missing authorization enforcement (CWE-862) and carries a CVSS 7.7 with a changed scope, reflecting cross-tenant impact. There is no public exploit identified at time of analysis and it is not listed in CISA KEV.
Authentication bypass in Portainer Community Edition (2.39.0-2.39.3 and 2.40.0 through 2.42.x) lets an unauthenticated network attacker seize full administrative control of a freshly deployed, uninitialized instance. During the five-minute post-deployment setup window the /api/restore and /api/users/admin/init endpoints stay reachable without credentials, so an attacker who wins the race can create the first admin account or restore a crafted backup and take over the platform along with every Docker, Swarm, Kubernetes and ACI environment it manages. No public exploit identified at time of analysis and it is not on CISA KEV, but the fix is available in 2.39.4 and 2.43.0.
Path traversal in Goploy's `/deploy/fileDiff` endpoint (versions <=1.17.5) enables any authenticated low-privilege member to read arbitrary files on both the Goploy host and every SFTP-managed remote server registered in the system. The dual file read returns local content in the `srcText` response field and remote server content in `distText`, multiplying the blast radius across all managed deployment targets. Publicly available exploit code exists per the GitHub Security Advisory; this is not listed in CISA KEV, but exploitation conditions are trivially met under default Goploy configuration.
Cross-namespace privilege escalation in goploy (zhenorzz/goploy through 1.17.5 and develop HEAD) lets any authenticated user holding the low-privilege `manager` role in their own namespace read, overwrite, plant, or delete project files in ANY other tenant's project, and rewrite any project's git remote URL, because the `/project/addFile`, `/project/editFile`, `/project/removeFile`, and `/project/edit` handlers act on body-supplied project/file row ids without verifying the target belongs to the caller's namespace. The rewritten git remote escalates to remote code execution on the next deploy, when goploy runs `git remote set-url origin <attacker-url>` and pulls attacker-controlled code under the goploy service account. A detailed proof-of-concept exists demonstrating all four primitives against the published Docker image, though no active exploitation has been reported.
Authenticated OS command injection in EGroupware lets an admin-level user escalate from web access to arbitrary shell command execution as the web server user (typically www-data). By uploading a crafted eTemplate .xet file to the admin-only /etemplates VFS mount, an attacker abuses Widget::expand_name(), which feeds widget attribute values into a PHP eval() while escaping only double quotes and leaving backtick shell operators intact. Publicly available exploit code exists and a vendor patch is available; there is no CISA KEV listing, so this is not confirmed as actively exploited.
Path traversal in XWiki running on Jetty 12+ lets remote users read arbitrary files the Jetty process can access by sending doubly URL-encoded '../' sequences to the skin resource endpoint (e.g. /xwiki/bin/skin/..%252f/..). Depending on how deep the webapp sits below root, this exposes both in-webapp secrets such as WEB-INF/xwiki.cfg and Hibernate configuration, and out-of-webapp OS files like /etc/passwd. No public exploit or active exploitation is tracked, but the vendor advisory (GHSA-qj4x-9g63-25g6) itself publishes working request URLs, so weaponization is trivial.
OS command injection in Coolify, the open-source self-hostable server/application/database management PaaS, allows an authenticated user with permission to edit application settings (versions prior to 4.0.0-beta.469) to run arbitrary commands on the managed host. The flaw lives in the executeInDocker() helper, which wraps user-controlled values in single quotes without escaping embedded quotes, letting an attacker break out of the quoted shell context during deployments and escape the intended Docker container confinement. No public exploit identified at time of analysis; this is not listed in CISA KEV.
OS command injection in Coolify (self-hosted server/app management platform) before 4.0.0-beta.471 lets an authenticated user embed shell metacharacters in a LocalPersistentVolume storage name, which is interpolated unescaped into docker volume shell commands and executed on managed servers when the associated resource is deleted. Rated CVSS 8.8 (CWE-78), it yields arbitrary command execution on downstream hosts controlled by the Coolify instance. There is no public exploit identified at time of analysis and it is not listed in CISA KEV, but the fix is confirmed in release 4.0.0-beta.471.
Privilege escalation to root command execution in Coolify (self-hosted PaaS) prior to 4.0.0-beta.471 lets any authenticated user holding the lowest-privilege team 'member' role run arbitrary OS commands as root on every server Coolify manages. The flaw lives in the GetLogs Livewire component, whose $container public property is unsanitized and lacks the #[Locked] attribute, so any team member can tamper with it over the Livewire wire protocol. There is no public exploit identified at time of analysis and the CVE is not in CISA KEV, but the low authentication barrier and full CIA impact make it high priority for any multi-tenant Coolify deployment.
OS command injection in Coolify (self-hosted server/app/database management platform) versions 4.0.0-beta.471 through 4.0.0-beta.473 lets an authenticated team member run arbitrary shell commands on the underlying host. A regression weakened the SHELL_SAFE_COMMAND_PATTERN allowlist so that ampersands were permitted in custom Docker Compose build, start, and pre/post-deployment command fields, enabling command chaining. The issue is fixed in 4.0.0-beta.474; no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Remote code execution in Crawl4AI's Docker API server (versions prior to 0.9.0) lets unauthenticated attackers run arbitrary commands as the container runtime user. The server passes request-supplied browser_config.extra_args directly into Chromium's launch arguments, enabling argument injection (CWE-88) of a malicious child-process launcher combined with --no-zygote. Because the Docker API is unauthenticated by default and CVSS is scored 10.0, a single crafted HTTP request achieves full container compromise; no public exploit identified at time of analysis and it is not listed in CISA KEV.
Server-side request forgery in Crawl4AI's Docker API server (versions prior to 0.9.0) lets a remote unauthenticated client coerce the server into fetching attacker-chosen internal, private, or link-local URLs and streaming the response body back. The SSRF destination allowlist check was enforced on the non-streaming /crawl path but omitted from the streaming code path, so requests to POST /crawl/stream - or POST /crawl with crawler_config.stream=true - bypass validation entirely. No public exploit identified at time of analysis, but the fix is public in commit 60886d1 and the root cause (a guard applied to one path but not its sibling) is trivial to reproduce.
Path traversal in JFrog Artifactory (CWE-22) enables an authenticated low-privilege user to write data outside the intended Docker cache directory when specific remote-repository conditions are present. The CVSS 3.1 vector scores 5.3 Medium, reflecting a real but constrained integrity risk - arbitrary filesystem writes are possible, but high attack complexity and required authentication limit opportunistic abuse. No active exploitation or public exploit code has been identified at time of analysis.
Sandbox escape in Cursor IDE for macOS (versions prior to 3.0.0) allows a malicious or prompt-injected AI agent operating in Auto-Run Sandbox mode to break container isolation by invoking the Dev Containers CLI to launch a privileged Docker container that mounts the host's virtiofs0 virtual filesystem. This grants the agent unrestricted read and write access to the user's entire home directory and enables arbitrary command execution at the user's privilege level - all without any additional permission prompt to the user. No public exploit code has been identified at time of analysis; a vendor-released patch is available as version 3.0.0.
Path traversal in XAgent's ToolServerNode workspace file endpoint allows any network-accessible user to read arbitrary files on the host by exploiting missing path containment validation in the `/workspace/file` handler. Because XAgent permits self-registration without email verification, an attacker requires no prior credentials - trivial account creation is sufficient to reach the vulnerable endpoint. Sensitive targets include application secrets, database credentials, and system configuration files that may be reachable through Docker volume mounts, with no public exploit identified at time of analysis but the fix commit publicly available.
Portainer CE through 2.44.0 exposes root-level Docker host access to any authenticated low-privileged user via a URL path normalization flaw in the Docker proxy endpoint. The authorization middleware evaluates a non-canonical request path (e.g., percent-encoded slashes, double slashes, or traversal sequences) differently from the proxy layer that ultimately forwards it to the Docker daemon - allowing crafted requests to bypass all access controls while executing with full Docker API privileges. No active exploitation has been confirmed (no CISA KEV listing) and no public exploit code has been identified at time of analysis; EPSS data was not provided in the source intelligence.
Command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated low-privilege member run arbitrary OS commands on the control-plane host. The volumeName field in the volumeBackup.create and volumeBackup.runManually tRPC endpoints is interpolated unquoted into a shell string passed to child_process.exec; because the process holds Docker socket access, injected commands run with host/root-equivalent privileges. No public exploit is identified at time of analysis, but the fix is a one-character-class change and the vulnerable code path is well documented in the published PR and advisory.
Shell command injection in Dokploy exposes the underlying host OS to arbitrary command execution by any authenticated user with Compose service edit permissions. The flaw is in the sanitizeCommand function within packages/server/src/utils/builders/compose.ts, which stripped only whitespace and surrounding quotes before interpolating user-supplied compose.command values into live shell invocations such as docker ${command} - leaving semicolons, pipe operators, backticks, and subshell substitutions entirely intact. Working exploit payloads (semicolons, $(subshell), pipes, backtick substitution) are publicly available in the fix PR test suite at https://github.com/Dokploy/dokploy/pull/4863; no CISA KEV listing exists at time of analysis, and the vendor-confirmed patch is available in v0.29.13.
Incomplete authorization in Dokploy's WebSocket handlers prior to v0.29.13 allows any authenticated organization member to obtain root terminal access to servers and read logs or statistics for services they were explicitly denied access to. The four affected handlers (terminal.ts, docker-container-terminal.ts, docker-container-logs.ts, docker-stats.ts) verify organization membership but never call checkServiceAccess, getAccessibleServerIds, or accessedServices, nullifying all fine-grained role-based access controls. No public exploit or CISA KEV listing exists; however, the attack requires only a valid low-privilege organization account, making this a meaningful privilege escalation risk in any multi-tenant Dokploy deployment.
OS command injection in Dokploy self-hosted PaaS before 0.29.8 allows an authenticated user with project access to run arbitrary commands on the Dokploy host. The getRegistryCommands() function in packages/server/src/utils/cluster/upload.ts builds a `docker login` shell string by interpolating the attacker-controlled registry password and URL without escaping, so malicious credentials are executed when a swarm deployment runs. No public exploit identified at time of analysis, but the root cause and fix are fully disclosed in the vendor advisory (GHSA-prwq-2mcm-mvhr), PR #4579, and the v0.29.8 release.
OS command injection in Dokploy self-hostable PaaS versions prior to 0.29.13 lets an authenticated user with application create or update permission achieve arbitrary command execution on the build host. The dockerImage field is interpolated unquoted into shell commands in buildRemoteDocker() (packages/server/src/utils/providers/docker.ts) and validated only as an optional string, so shell command substitution such as $(...) or backticks runs on the local build host or a remote SSH build target. The upstream fix and its regression test publicly demonstrate working injection payloads, so publicly available exploit code exists, though there is no public exploit identified as weaponized and no CISA KEV listing; EPSS was not provided.
Cross-tenant remote command execution in Dokploy (self-hosted PaaS) before 0.29.13 lets any authenticated user holding only the server:read permission run arbitrary OS commands on servers belonging to other organizations. The swarm tRPC endpoints never verified that the supplied serverId belonged to the caller's active organization, and getNodeInfo interpolated an attacker-controlled nodeId straight into a remote shell command, chaining a broken multi-tenant authorization flaw with OS command injection. No public exploit or CISA KEV listing has been identified, though the vendor security advisory and a fix-verification test are public.
OS command injection in Dokploy prior to version 0.29.13 allows any authenticated user with project write access to execute arbitrary commands as the Dokploy server process. The buildRemoteDocker() function in packages/server/src/utils/providers/docker.ts interpolates the user-controlled dockerImage field directly into a shell command passed to execAsync() without sanitization. The same unsanitized interpolation pattern was present across three separate build pipeline files, indicating a systemic rather than isolated flaw. No public exploit has been identified at time of analysis, and the vulnerability is not listed in CISA KEV.
OS command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated user with the backup:restore permission run arbitrary commands on the Docker-privileged host. The backup.restoreBackupWithLogs tRPC subscription forwards an attacker-controlled databaseName into shell strings that Node.js exec passes to /bin/sh before docker exec, so the outer host shell expands injected metacharacters. Rated CVSS 9.9 with a scope change to the host; no public exploit identified at time of analysis, though the upstream fix PR ships regression tests containing working injection payloads.
Command injection in Dokploy self-hosted PaaS before 0.29.13 lets a low-privileged organization member run arbitrary OS commands inside the root Dokploy container, which holds the host Docker socket, effectively yielding host takeover. The destination.testConnection mutation interpolates unsanitized S3 fields (accessKey, secretAccessKey, region, endpoint, provider, bucket) into an rclone shell command run via child_process.exec. No public exploit is identified at time of analysis, but the fix is confirmed in v0.29.13 and the root cause is clearly documented in the upstream patch (PR #4873).
OS command injection in Dokploy self-hosted PaaS prior to 0.29.13 lets an authenticated project member with compose write and deploy permissions execute arbitrary commands on the Docker-privileged host. The compose.update operation persists an unvalidated composePath that is later interpolated verbatim into `docker compose -f`, `docker stack deploy -c`, and `touch` commands run via `/bin/sh -c`, so a crafted path fires shell metacharacters when the compose is deployed. No public exploit identified at time of analysis and the issue is not listed in CISA KEV, but the upstream regression test suite demonstrates working injection payloads, making the path to exploitation well-understood.
Privilege escalation via missing authorization in Dokploy, a self-hostable Platform-as-a-Service, lets any authenticated organization member open a root shell inside arbitrary containers on a self-hosted instance. The /docker-container-terminal WebSocket handler authenticated the caller but never checked the attacker-supplied containerId against the caller's role, organization, or service scope before invoking docker exec. Fixed in 0.29.13; no public exploit identified at time of analysis, though the upstream fix commit is public.
Privilege escalation to host root in Dokploy self-hosted PaaS versions prior to 0.29.13 allows any authenticated organization member to hijack WebSocket terminal and log-streaming handlers that authenticate the session but never check the role/permission model enforced elsewhere. Because these handlers can open an interactive shell into any container - including the Dokploy container that mounts the Docker socket - a low-privileged tenant can obtain root on the host and cross every tenant boundary. No public exploit identified at time of analysis, though the upstream fix commit and a regression test are public. The CVSS is 9.9 driven by scope change and full CIA impact.
Command injection in Dokploy self-hosted PaaS versions prior to 0.29.13 lets an authenticated user with database-service provisioning rights run arbitrary shell commands on managed remote servers. The user-controlled dockerImage field for PostgreSQL, MySQL, MariaDB, MongoDB, Redis, and libSQL services is interpolated unquoted into a 'docker pull ${dockerImage}' command executed over the remote-server code path (execAsyncRemote), enabling shell metacharacter injection. Rated CVSS 9.9 with a scope change; no public exploit or CISA KEV listing is identified, though the patch ships a regression test demonstrating the injection.
Remote command injection in Dokploy self-hosted PaaS before 0.29.13 allows an authenticated dashboard user to execute arbitrary shell commands on managed remote nodes. The registry credential-testing and Docker Swarm cluster-management endpoints interpolate user-controlled values (nodeId, imagePrefix/username driving the registry tag) into unquoted shell strings that run over SSH via execAsyncRemote. Rated CVSS 9.9 with scope change; no public standalone exploit is identified, though the public fix commit df2779e and advisory GHSA-4mfc-grxw-6858 disclose the exact vulnerable code paths and injection payloads.
REST API connection exhaustion in Klever-Go versions 1.7.14 through 1.7.17 allows unauthenticated remote attackers to render node API services unavailable by holding slow-header connections open until server file descriptors are exhausted. The root cause is Gin's Engine.Run convenience method, which delegates to Go's default http.ListenAndServe without any ReadHeaderTimeout, ReadTimeout, or MaxHeaderBytes configured, leaving incoming connections open indefinitely if the client never completes request headers. A proof-of-concept documented in GHSA-w4c6-7r69-w7j9 confirmed that 120 such connections caused all 20 of 20 legitimate API probes to fail with 'accept: too many open files' on v1.7.17; no CISA KEV listing was found, and no public exploit beyond the researcher's PoC is identified at time of analysis.
Unauthenticated arbitrary file write in Dinky v1.2.5 and its byte-identical development branch lets anyone who can reach the HTTP port (8888 by default) overwrite files as the Dinky service account, because the POST /download/uploadFromRsByLocal handler feeds a caller-supplied path straight into new File(path) and transferTo(dest) with no validation. The route is exempt from Sa-Token auth and guarded only by a header check against a dinkyToken whose default value is hardcoded in source and shipped to every install, so the guard is effectively no guard. The researcher (VulnCheck) demonstrated full remote code execution by shadowing Dinky.class on the writable, chmod-777 classpath and by planting attacker JavaScript in the served index.html; there is no public exploit identified at time of analysis and it is not in CISA KEV, but the disclosure describes a working demonstration.
Credential exfiltration via the tenant API in OpenReception appointment-booking-software prior to v1.0.2 allows any authenticated TENANT_ADMIN to retrieve the full PostgreSQL connection string - including plaintext password - for the shared database instance. In default docker-compose.prod.yml deployments, those credentials belong to the postgres superuser (rolsuper=true), granting the attacker read-write access to every tenant's database, all GLOBAL_ADMIN password hashes and session records, and superuser-level PostgreSQL functions (pg_read_server_files, COPY FROM PROGRAM) usable for container-level escalation. No public exploit code or CISA KEV entry exists at time of analysis; EPSS data was not provided, but the CVSS S:C scope change and the cross-tenant blast radius make this a high-priority patch target for any operator running the affected version.
Cross-user HTTP response poisoning in Traefik's default reverse proxy allows an unauthenticated remote attacker using HTTP/2 or HTTP/3 to smuggle responses into other clients' backend connections, potentially delivering authenticated or private content from one user to another. All supported Traefik branches through v2.11.52, v3.6.23, and v3.7.8 are affected in default configuration when fronting Go net/http or gunicorn/Flask backends, which are confirmed 'armed' (respond to CONNECT with keep-alive non-2xx without draining the body). A proof-of-concept is publicly available demonstrating reliable cross-user poisoning including a cascade scenario where 8 of 8 sequential victims read responses that were not their own; no CISA KEV listing was present at time of analysis.
Unauthenticated denial-of-service in sgoudelis/Ground Station prior to 0.6.0 allows any network peer to forcibly terminate the application process by emitting a single Socket.IO event requiring no credentials. Authentication enforcement is disabled and a wildcard CORS policy is in place, exposing the service_control handler - which triggers process shutdown via a restart_service command - to any host with TCP access to port 7000. In Docker deployments, the attack can be repeated in a loop to sustain a persistent outage of all satellite-tracking sessions, SDR recording pipelines, demodulators, decoders, and rotator controllers. No public exploit or CISA KEV listing is identified at time of analysis.
Unauthenticated remote code execution in OpenChamber 1.11.7 lets remote attackers run arbitrary OS commands by POSTing to the /api/fs/exec endpoint, which hands input directly to Node.js spawn() with no allowlist, blocklist, or argument sanitization. Because the authentication middleware silently no-ops when UI_PASSWORD is unset - the state of the default Docker deployment - the endpoint is reachable without credentials and returns full stdout, stderr, and exit code to the attacker. Reported by VulnCheck; there is no public exploit identified at time of analysis and it is not listed in CISA KEV, though the flaw is trivially exploitable.
Host filesystem read and write access in IBM Langflow OSS 1.0.0 through 1.10.3 is achievable by any authenticated low-privilege user via insufficient filtering of Docker volume-mount and device-mapping arguments passed to Docker-based MCP servers. By injecting unsanitized flags such as --volume into MCP server configuration, an attacker can bind-mount arbitrary host directories into a spawned container, exposing or tampering with sensitive files outside the intended Docker isolation boundary. No public exploit code has been identified at time of analysis and no CISA KEV listing exists, but the network-exploitable, low-complexity attack path and full CIA impact score (CVSS 8.8) make this a high-priority patch target for any organization running Langflow in Docker environments with externally accessible or multi-tenant access.
Missing authentication in the NASA-AMMOS ANMS reference implementation exposes the amp-manager REST API (CivetWeb, port 8089) directly on the host network, allowing any network-reachable client to command DTNMA agents without credentials. Because the shipped docker-compose.yml publishes the port and bypasses the CAM authentication gateway, unauthenticated remote attackers can enumerate agents, submit arbitrary EXECSET command sets to them, and clear stored reports. No public exploit identified at time of analysis; the flaw affects the reference/testbed implementation rather than onboard spacecraft flight software, though managed agents may represent real ground or space nodes depending on deployment.
Unauthenticated OAuth2 access-token theft in Flowise (npm/flowise <= 3.1.2) stems from the token-refresh endpoint POST /api/v1/oauth2-credential/refresh/:credentialId being listed in WHITELIST_URLS, so it bypasses authentication entirely. Any remote party who knows or guesses a credential ID can force the server to decrypt the stored OAuth2 credential, refresh it against the provider using the victim's client secret, and receive the fresh access_token directly in the response body. No public exploit code has been identified, but the researcher (Shinobi Security) validated the missing-auth behavior in Docker, and a vendor-released patch is available in 3.1.3.
Remote code execution in FlowiseAI Flowise 3.1.2 lets an authenticated user abuse the 'SQLite Record Manager' node's `additionalConfig` input to override the target database path and write an attacker-shaped SQLite file to any location on disk. Because the official Docker image runs as root, the file can be planted at /etc/chromium/exploit.conf, and a second Upsert operation that launches Puppeteer/Chromium sources that .conf file and executes an embedded reverse-shell payload, yielding full application compromise as root. No public exploit is identified at time of analysis beyond the detailed reproduction steps in the elttam advisory; the issue is patched in 3.1.3.
Remote code execution as root in Flowise (npm packages flowise and flowise-components, versions 3.0.5 through 3.1.2) lets any authenticated user with a valid API key escape the NodeVM sandbox used by the custom-function feature and run arbitrary OS commands. The flaw stems from executeJavaScriptCode() merging caller-supplied nodeVMOptions over its secure defaults with a JavaScript spread, so an attacker can re-enable blocked builtins (child_process, fs) via require.builtin:["*"]. A detailed working exploit is published in the vendor's GHSA advisory, so publicly available exploit code exists; there is no CISA KEV listing, meaning no confirmed active exploitation at time of analysis.
Authenticated remote code execution in FlowiseAI Flowise (versions ≤ 3.1.2, npm packages flowise and flowise-components) arises from a vm2 JavaScript sandbox escape reachable through the AgentAsTool, ChatflowTool, and ExecuteFlow nodes, which still run untrusted code in the deprecated in-process vm2 sandbox (useSandbox: false). An attacker who can edit a chatflow injects code via an unvalidated baseURL URL-hash fragment and abuses moment's CVE-2022-24785 path-traversal (whose fix is bypassable inside the sandbox) to break out of vm2 and run arbitrary commands as the Flowise service account, fully compromising the host. A complete working exploit is published in the elttam/GitHub advisory, but the flaw is not in CISA KEV.
Authenticated remote code execution in FlowiseAI Flowise 3.1.2 and earlier lets any logged-in user escape the vm2 sandbox and run arbitrary OS commands on the host. The MySQL/Postgres/SQLite Record Manager and MySQL/Agent Memory nodes expose an unfiltered additionalConfig input passed directly into the TypeORM DataSource constructor, whose entities/subscribers/migrations options can load attacker-supplied JavaScript files. A full public reproduction (including a root reverse-shell payload) was published in the elttam advisory, and the vendor fixed it in 3.1.3.
OS command injection in OpenWrt's luci-app-dockerman grants any authenticated user holding only the read ACL full root-level code execution on the affected router. The vulnerable run_ttyd handler in the ucode docker_rpc.uc backend constructs a shell command from attacker-controlled request fields (id, cmd, uid) and passes them unsanitized to system() within the rpcd root context, reachable via a simple HTTP POST to /ubus. Only LuCI master and openwrt-25.12 snapshots after the JS-to-ucode backend conversion are affected; upstream patch commits exist but no released patched snapshot version was confirmed as of the advisory, and no public exploit is identified at time of analysis.
Sensitive-credential disclosure leading to full node compromise in Pterodactyl Wings before v1.12.3 lets a low-privileged, authenticated panel user (a server owner or a subuser holding startup.update) smuggle a {{config.*}} placeholder through a user-editable egg variable, causing Wings to resolve it against its entire daemon configuration and write secrets - including the node daemon token, token_id, and Docker registry credentials - into a file the user can read via the file manager or SFTP. Because the daemon token is both the Panel⇆Wings API bearer and the HMAC signing key for every JWT the node issues, an attacker can then forge tokens and act against every server on the node. No public exploit identified at time of analysis and it is not listed in CISA KEV, but the CVSS is 9.9 and the affected templating pattern is common across stock and community eggs.
Exposure of a default-credentialed PostgreSQL database in the VPS.org one-click Supabase template allows remote attackers to connect directly to the database on 0.0.0.0:5432 using the well-known default password 'postgres', gaining full read/write access. The flaw stems from insecure default initialization combined with Docker's iptables rules overriding host UFW firewall policy, so operators who believe UFW protects the port are silently exposed. No public exploit has been identified at time of analysis, and EPSS is low (0.14%, 4th percentile), but SSVC rates the technical impact as total and exploitation as automatable.
Remote code execution in Somta Juggle through version 1.6.0 lets unauthenticated network attackers run arbitrary OS commands by reaching the bundled H2 database web console, which ships exposed at /h2-console with default credentials. Because the stock Docker image runs as root, successful exploitation via the classic H2 CREATE ALIAS Runtime.exec() technique yields root-level code execution on the host container. No public exploit identified at time of analysis, though the VulnCheck advisory provides a detailed exploitation path.
Predictable shared-secret generation in Spring Tools for Eclipse (5.2.0 and earlier) weakens the authentication protecting Spring Boot DevTools remote-restart uploads to remotely deployed targets such as Docker containers or Cloud Foundry apps. Because the secret is derived from a non-cryptographic PRNG rather than a secure random source, an attacker able to reach the deployed application's DevTools remote endpoint may predict the secret, authenticate restart uploads, and push arbitrary code, yielding remote code execution (CVSS 8.3, scope-changed). There is no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Network exposure of Docker container control ports in Spring Tools for Eclipse (versions 5.2.0 and earlier) occurs because the Boot Dashboard Docker integration binds these ports to 0.0.0.0 (all interfaces) instead of loopback. Any attacker on the same network segment as a developer running the integration can reach the container control interface without authentication, yielding high confidentiality, integrity, and availability impact. There is no public exploit identified at time of analysis and the issue is not in CISA KEV, but the flaw is trivially triggered once a developer starts the affected feature.
Arbitrary host file write in termux/proot-distro before 5.1.5 lets a malicious rootfs tarball or Docker layer plant an absolute-path symlink during `proot-distro install`, so a follow-up file member is written through that symlink onto the host filesystem - outside the container, before it is ever run. The install/reset paths (_extract_plain_tar) and the Docker layer path (_apply_layer) validated member names for '..' traversal but never validated symlink targets in member.linkname. No public exploit identified at time of analysis and it is not in CISA KEV, but the flaw is confirmed and fully described by the vendor GHSA advisory with vulnerable source shown.
Authentication bypass in pytonapi 2.2.0 allows unauthenticated remote attackers to trigger webhook handlers when a custom path is configured via the documented `path=` argument. The TonapiWebhookDispatcher fails to store bearer tokens for custom paths, causing the token check to be skipped entirely. Publicly available exploit code exists but no active exploitation in the wild has been confirmed.
Server-side template injection in Tugtainer (self-hosted Docker container auto-update tool) versions before 1.30.2 lets any authenticated user achieve root-level OS command execution by injecting Jinja2 expressions into notification templates. The title_template and body_template fields are rendered by an unsandboxed jinja2.Environment, so template payloads escape into arbitrary code running as root inside the container. Rated CVSS 9.9 with a scope change; no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Denial of service in PhpSpreadsheet (PHPOffice) versions 2.0.0 through 5.8.0 lets remote unauthenticated attackers crash a PHP worker with a ~1 KiB malformed XLS/OLE file. The library's OLERead::read() follows attacker-controlled OLE sector chains without cycle detection, so a sector that points back to itself makes the small-block depot loop append the same data until memory is exhausted. It is triggered during automatic format detection via Reader\Xls::canRead(), so any app that probes untrusted spreadsheet uploads is affected; a working proof of concept is published in the vendor advisory, though the flaw is not in CISA KEV.
Denial-of-service in PhpSpreadsheet's Gnumeric reader lets remote attackers crash PHP worker processes by uploading a tiny gzip-compressed .gnumeric file that decompresses to hundreds of megabytes. The reader's Gnumeric::canRead() calls gzdecode() with no decompressed-size cap during routine file-type detection, so a ~98 KB payload expanding to ~96 MiB exhausts a 64M memory limit and triggers a fatal error before validation. No public exploit is identified at time of analysis, but a working proof-of-concept is described in the advisory and the CVSS score is 7.5 (High) with A:H impact.
Server-side request forgery in Gitea before 1.27.0 lets attackers coerce the server into HTTP requests against internal hosts because its outbound IP allow-list classifier (IsGlobalUnicast && !IsPrivate) fails to block CGNAT (100.64.0.0/10) and nine IPv6 transition prefixes. An authenticated user can point a webhook or repo migration at an internal CGNAT service and read the full response (status, headers, and up to 1 MB body) rendered back on the hook detail page; separately, when OpenID sign-in is enabled the unauthenticated /user/login/openid discovery fetch uses http.DefaultClient with no IP filtering, giving anonymous internet callers a blind SSRF primitive. Publicly available exploit code exists (bundled run_poc.sh reproduces all three primitives), but no active exploitation is confirmed.
Unauthenticated denial of service in Gitea's Locale middleware allows any remote attacker to consume ~2 seconds of server CPU per HTTP request by crafting a ~1 MiB Accept-Language header composed of underscore separators, bypassing the existing CVE-2022-32149 guard in golang.org/x/text which only counts dash characters. All Gitea releases from 1.22.x through 1.26.x are affected because the middleware at modules/web/middleware/locale.go:38 passes the raw, unfiltered header directly to the quadratic-time ParseAcceptLanguage parser; ten concurrent attackers consuming ~10 MiB/s of upstream bandwidth can saturate all cores of a ten-core host indefinitely. Publicly available exploit code exists in the GHSA advisory; no active exploitation has been confirmed by CISA KEV at time of analysis.
Authorization bypass in Gitea before 1.27.0 lets a public-only Personal Access Token read internal content owned by Limited-visibility users and organizations, exceeding the reach the scope is meant to grant. The Repository and Package scope categories only test repo.IsPrivate / Owner.Visibility.IsPrivate(), which return false for VisibleTypeLimited, so an authenticated attacker with a public-only PAT can fetch READMEs, repo content, packages from all 24 registries, and even perform full git-upload-pack clones of instance-internal projects. A vendor-verified end-to-end Docker PoC exists (publicly available exploit code exists); it is not in CISA KEV and EPSS is low at 0.17% (6th percentile). This is the residual gap left after CVE-2026-25714 / PR #37118 fixed the sibling User/Org/ActivityPub cases.
Path-traversal to remote code execution in Home Assistant Core before 2026.6.0 lets an authenticated user who can supply a backup archive overwrite arbitrary files on the host. The backup-restore routine trusts a tar SYMTYPE (symlink) entry whose linkname is an absolute path outside the extraction directory, then writes a following regular-file entry through that unvalidated symlink; because the official Docker image runs the process as root, an attacker can drop code into auto-imported Python paths (e.g. site-packages/sitecustomize.py) and gain code execution. Reported by VulnCheck with a vendor patch available (2026.6.0); no public exploit identified at time of analysis and it is not listed in CISA KEV.
Unauthenticated loopback API access and path traversal in WhatsApp MCP Server (whatsapp-mcp) prior to v0.2.1 allow any same-user local process - including sibling MCP servers and IDE extensions - to send WhatsApp messages from the paired account and exfiltrate arbitrary user-readable files (SSH private keys, browser session data, dotfiles) as WhatsApp document attachments. The whatsapp-bridge HTTP service on 127.0.0.1:8080 requires no authentication and validates no Host header, enabling a DNS rebinding attack whereby a malicious webpage visited by the user can trigger identical file exfiltration remotely without any credentials. No public exploit identified at time of analysis; vendor-released patch v0.2.1 is available.
Local denial-of-service in the Linux kernel's IPv4 raw socket path allows a caller holding CAP_NET_RAW to crash the host by sending an IP_HDRINCL packet whose self-reported header length (ihl) is below the RFC 791 minimum of 5. raw_send_hdrinc() checks that the header fits within the message but never rejects ihl < 5, so the malformed header is injected into the output path where downstream consumers such as ah_output() compute a negative header size, cast it to size_t, and perform an OOB memcpy of nearly SIZE_MAX bytes, panicking the kernel. It affects all maintained kernel branches and is reachable from an unprivileged process inside a user+net namespace (CONFIG_USER_NS=y) or a rootless Docker container with NET_ADMIN; no public exploit identified at time of analysis and EPSS risk is low (0.18%).
Authentication bypass in meta-ads-mcp (< 1.0.115) lets an unauthenticated network caller send an arbitrary X-Pipeboard-Token header to slip past AuthInjectionMiddleware and execute every MCP tool using the server operator's Meta Ads credentials. The guard only rejects requests when BOTH an auth token and a pipeboard token are absent, but X-Pipeboard-Token satisfies the pipeboard branch without setting any auth context, causing the token getter to fall back to the operator's META_ACCESS_TOKEN environment variable. A publicly available exploit code exists (detailed PoC with Dockerfile and poc.py), enabling full read and write access to the operator's Meta Ads data; it affects only streamable-http deployments with META_ACCESS_TOKEN configured.
Unauthenticated Server-Side Request Forgery in the meta-ads-mcp Python package (versions <= 1.0.114) lets remote attackers coerce the server into fetching arbitrary attacker-chosen URLs via the upload_ad_image MCP tool's image_url parameter. The flaw is reachable when the server runs with the officially supported --transport streamable-http mode, because the pre-fetch authorization check only requires a non-empty Bearer token while real Meta credential validation happens after the outbound fetch. Publicly available exploit code exists (a working Docker PoC); this is not in CISA KEV and no EPSS score was provided, so real-world exploitation is unconfirmed, but the vulnerability enables reaching localhost services, RFC 1918 hosts, and cloud metadata endpoints such as 169.254.169.254.
Privilege escalation via incomplete privilege drop in the Python 'sh' subprocess library (versions < 2.2.4): when a root/privileged process launches a command with the _uid option, the child changes UID and primary GID but fails to clear the parent's supplementary groups via setgroups(). Any subprocess expected to run unprivileged can therefore retain sensitive parent groups (root, docker, disk, shadow, sudo), reading or writing resources those groups grant. No public exploit identified at time of analysis and it is not in CISA KEV; the fix is confirmed in release 2.2.4.
Denial of service in Wazuh's analysis engine (wazuh-analysisd) lets an unauthenticated remote attacker permanently halt SIEM alert processing on Wazuh manager versions 1.0.0 through 4.14.4. Because the official wazuh/wazuh-docker deployment ships with password-less agent enrollment enabled by default, an attacker can register as an agent and send a crafted rootcheck event that overflows a fixed 30-byte heap buffer, crashing the daemon while the dashboard and API keep showing stale data - silently blinding the SIEM. There is no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Sensitive configuration file disclosure in Grav CMS before 2.0.4 lets unauthenticated remote attackers bypass the bundled .htaccess protections by requesting blocked file types with uppercase or mixed-case extensions (e.g., .YAML, .PHP). The shipped rules omit the Apache [NC] flag, so extension matching is case-sensitive and fails to block case variants on case-insensitive filesystems (Windows/NTFS, macOS/HFS+, Docker volume mounts), exposing files that may hold API keys and credentials. There is no public exploit identified at time of analysis, and the issue is not listed in CISA KEV.
Authenticated command-injection in Pheditor 2.0.4 lets any user holding the 'terminal' permission bypass the TERMINAL_COMMANDS allowlist and run arbitrary OS commands as the web server user. The terminal handler only blocks '&', ';', and '||' and validates commands with a prefix check before handing the full string to shell_exec(), so shell substitution like ls$(...) satisfies the allowlist while executing attacker-controlled code. A working PoC is published in the GitHub advisory, though there is no public exploit identified as a standalone weaponized tool and no active exploitation reported.
Build-time remote code execution in Nuclio (serverless/FaaS platform) versions <= 1.15.27 lets remote attackers run arbitrary OS commands as root inside the function-builder container. The Java runtime renders user-supplied runtimeAttributes.repositories values into a Groovy build.gradle file via Go's text/template using the non-escaping {{ . }} action, so an attacker can inject a closing brace to break out of the repositories {} block and append Groovy that Gradle executes during its configuration phase. Because the Dashboard API defaults to NOP (no) authentication, exploitation needs no credentials; a dynamically-verified proof-of-concept is published in the vendor advisory, though there is no public exploit identified as being used in active attacks.
Missing authentication in @andrea9293/mcp-documentation-server v1.13.0 exposes its document-management Web UI/API on all network interfaces (0.0.0.0:3080) instead of localhost, letting any adjacent-network client read, add, search, and delete documents in the MCP knowledge base without credentials. Rated CVSS 8.8 (CWE-306), the flaw is exploitable by unauthenticated attackers reachable over the same LAN, VM network, Docker bridge, or VPN. A detailed proof-of-concept exists in the reporter's advisory, though there is no public exploit identified as being used in active attacks and it is not listed in CISA KEV; the vendor fixed it in v1.13.1.
Full-read SSRF in Koel v9.6.0 allows any authenticated user to bypass URL validation via the Subsonic API, creating radio stations pointing to internal HTTP services and reading the full response body. A publicly available proof-of-concept exists; exploitation requires only standard user credentials and no elevated privileges.
GitHub Actions artifact-poisoning (pwn request) in labring/FastGPT allows an external attacker who opens a pull request to smuggle attacker-controlled Docker images into privileged CI/CD pipelines. At commit 22ebfacbb43311e9b73294040ae0eb87390c6bba and earlier, artifacts built from untrusted PR code in the preview-docs-build and preview-fastgpt-build workflows are consumed by privileged workflow_run jobs, letting a malicious image be pushed to GHCR and, for documentation previews, deployed to a Kubernetes cluster using the secrets.KUBE_CONFIG_CN credential. There is no public exploit identified at time of analysis and it is not in CISA KEV, but the flaw is trivially reachable by any contributor.
Unauthenticated abuse of the operator's NetLicensing credential affects Labs64 netlicensing-mcp (FastMCP server) versions <= 0.1.5 when run in HTTP transport mode. The ApiKeyMiddleware forwards requests that carry no client API key straight to the tool handlers, and the downstream client falls back to the server-side NETLICENSING_API_KEY environment variable, so any network-reachable attacker can invoke every MCP tool (list/create/update/delete of products, licenses, licensees, tokens) under the operator's identity and account quota. Publicly available exploit code exists (a self-contained Docker/Python PoC in the advisory), no public active exploitation is confirmed, and the issue is fixed in 0.1.6.
Arbitrary file write in yutu, a Go-based YouTube CLI and MCP server, lets any caller of the built-in `caption-download` MCP tool place attacker-controlled bytes at any filesystem path the yutu process can write to. The vulnerable `Caption.Download()` calls `os.Create()` on the caller-supplied `file` parameter, bypassing the `YUTU_ROOT` (`pkg.Root`/`os.OpenRoot`) confinement that every other caption write path enforces. Publicly available exploit code exists (a self-contained Docker PoC ships with the advisory); the flaw is not in CISA KEV and no active exploitation is reported, and the vendor has released a fixed version (0.10.9-dev1).
Cross-tenant data exposure in n8n-mcp (npm package, <= 2.56.0) lets an authenticated tenant on a shared multi-tenant HTTP instance read, delete, and destroy the automatic workflow version backups belonging to other tenants. Because each snapshot embeds full node definitions, the leaked data can include credential references and authorization headers, making this both a confidentiality and an integrity/availability failure. Rated CVSS 9.9 due to the scope change across tenant trust boundaries; no public exploit is identified at time of analysis, and it is not listed in CISA KEV.
Unauthenticated remote denial of service in StacklokLabs MKP (Model Context Protocol for Kubernetes) server versions before 0.4.1 lets a single crafted `tools/call` request against the default `:8080` endpoint exhaust process memory. The `get_resource` tool accepts attacker-controlled `limitBytes`/`tailLines` values with no upper bound and streams the entire Kubernetes pod-log response into an in-memory `bytes.Buffer`, driving an OOM kill (dynamic reproduction grew RSS from 25.8 MB to 1,179.3 MB on one request). Publicly available exploit code exists in the GitHub Security Advisory; there is no public evidence of active exploitation.
Credential leakage in sigstore-js (specifically the @sigstore/oci package) before 0.7.1 allows Docker registry credentials to be transmitted to the wrong registry because getRegistryCredentials() matched configured auth keys against the target registry using a substring check instead of an exact host match. An attacker who can induce a victim to push or pull signatures/attestations against an attacker-named registry whose hostname has a substring relationship with a legitimately configured registry (e.g. 'cr.io' vs 'ghcr.io', or 'victim.127.0.0.1:5000' vs '127.0.0.1:5000') can capture the victim's stored registry credentials. There is no public exploit identified at time of analysis, and this is not listed in CISA KEV; the underlying weakness (CWE-522) is confirmed and fixed by the vendor in @sigstore/oci 0.7.1.
Improper API key generation in Sonatype Nexus Repository Manager lets a remote attacker impersonate a targeted user and perform repository operations on their behalf. The flaw stems from insufficient entropy (CWE-331) in format-specific API key realms, so an attacker who can predict or reconstruct a victim's key gains their access without credentials. The vendor (Sonatype) reported and patched the issue in release 3.93.0; there is no public exploit identified at time of analysis and it is not listed in CISA KEV.
Account takeover in Kimai time-tracking software (versions <= 2.57.0) stems from the official Docker image shipping a publicly-known default APP_SECRET ('change_this_to_something_unique') that is used as Symfony's kernel.secret. Any internet-reachable instance deployed from the image without overriding APP_SECRET lets an unauthenticated attacker forge HMAC-signed remember-me cookies, login links, and password-reset URLs to log in as any account, including the super_admin. Publicly available exploit code exists (a Nuclei template), though EPSS remains low at 0.38%.
Arbitrary file write in Crawl4AI's Docker API server (versions before 0.8.7) lets remote unauthenticated attackers overwrite any file writable by the service account by abusing the unvalidated output_path parameter on the /screenshot and /pdf endpoints. Reported by VulnCheck and disclosed in GitHub advisory GHSA-365w-hqf6-vxfg, the flaw enables path traversal or absolute-path writes that corrupt server files and cause denial of service. There is no public exploit identified at time of analysis and it is not listed in CISA KEV, but the network-reachable, no-privileges attack surface makes it a straightforward target once a Crawl4AI Docker server is exposed.
Credential exfiltration in Crawl4AI's Docker API server (all versions before 0.8.8) lets remote unauthenticated attackers steal secrets from the host. By abusing the exposed /md, /llm, and /llm/job endpoints, an attacker supplies a malicious base_url to redirect outbound LLM API calls and sets api_token to the special form env:VARIABLE_NAME, causing the server to resolve and leak arbitrary environment variables - including provider API keys and the JWT SECRET_KEY, which in turn enables full authentication bypass. No public exploit identified at time of analysis, but the flaw is trivially exploitable and reported by VulnCheck with an assigned CVSS 4.0 score of 8.8.
Arbitrary Python code execution in BabelDOC (funstory-ai, pip package `babeldoc`) prior to 0.6.3 allows an attacker to run code in the context of the translation process by having a victim process a crafted PDF. The vendored pdfminer CMap loader (`cmapdb.py::_load_data`) strips only NUL bytes from a PDF-controlled CMap/Encoding name and passes it to `pickle.loads()`, so a hex-encoded absolute path in the PDF's `/Encoding` name redirects deserialization to an attacker-planted `.pickle.gz` file. A detailed, working proof-of-concept exists (publicly available exploit code exists); there is no CISA KEV listing and no public evidence of active exploitation at time of analysis.
Server-side request forgery in Crawl4AI's Docker API server (versions before 0.8.7) allows remote unauthenticated attackers to coerce the server into making arbitrary internal requests. The /crawl/job and /llm/job endpoints accept caller-supplied webhook URLs without validating the destination, so an attacker can target private IP ranges, Docker network internals, or the cloud metadata endpoint (169.254.169.254) to reach otherwise unreachable services and harvest credentials. CVSS 4.0 rates it 9.2 (critical); no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Boolean-based blind SQL injection in YesWiki's public Bazar entry-listing API allows unauthenticated attackers to read arbitrary database contents by abusing numeric query/queries filters. Because numeric field values are escaped with mysqli_real_escape_string but inserted into the SQL statement without quotes or numeric validation, injected boolean expressions (e.g. '100 OR (SELECT COUNT(*) FROM yeswiki_users)>0') are evaluated by the database, turning the public endpoints into a data-exfiltration oracle. A detailed, self-contained proof-of-concept is published in the advisory; a vendor patch (commit f3b0dd0) is available, though the issue is not listed in CISA KEV.
Signature-verification bypass in YesWiki (v4.6.5 and earlier, ActivityPub-federated Bazar forms) lets an unauthenticated remote attacker forge a valid ActivityPub actor and have Create/Update/Delete activities processed as if properly signed. The flaw stems from HttpSignatureService::verifySignature() using a loose boolean check (!openssl_verify(...)) that treats openssl_verify()'s -1 internal-error return as success. A detailed proof-of-concept exists (publicly available exploit code exists) demonstrating full CRUD on Bazar entries; the issue is not in CISA KEV and no EPSS score was provided.
Stored Server-Side Template Injection in YesWiki's Bazar module allows an authenticated administrator to plant arbitrary Twig expressions into form semantic template fields (`bn_sem_template`, `bn_sem_reverse_template`), which are persistently stored and later executed server-side when unauthenticated requests reach the public JSON-LD semantic endpoint. Published proof-of-concept in the GHSA advisory confirms full escalation from harmless template evaluation (`{{ 7 * 7 }}` → `49`) to interactive OS-level reverse shell. The fix is confirmed in YesWiki v4.6.6, a dedicated security release addressing 12 CVEs; no CISA KEV listing at time of analysis, but publicly available exploit code exists.
Unauthenticated remote code execution in Ruflo (an agent meta-harness for Claude Code and Codex) before 3.16.3 arises because the default docker-compose deployment exposes the MCP bridge's POST /mcp and POST /mcp/:group endpoints with no authentication. A network attacker can send a JSON-RPC tools/call to the terminal_execute tool to gain an interactive shell inside the bridge container, exfiltrate provider API keys, and tamper with AgentDB learning-store patterns. Rated CVSS 10.0 with a scope change; no public exploit identified at time of analysis, and it is not in CISA KEV.
Server-side request forgery in the Ruby css_parser gem (< 3.0.0) lets a remote unauthenticated attacker force the parsing server to issue arbitrary HTTP/HTTPS GET requests, and via an attacker-controlled 3xx redirect to a file:// URI, escalate to arbitrary local file disclosure. The flaw sits in CssParser::Parser#read_remote_file, reachable through load_uri! and any add_block! call that supplies base_uri: - Premailer being the canonical consumer - so a single attacker-planted @import url(...) in parsed CSS reaches the sink. Publicly available exploit code exists (author-supplied PoC); there is no public exploit identified as being used in active campaigns, and it is not listed in CISA KEV.
Path traversal in Note Mark's migrate export CLI commands enables a low-privilege authenticated attacker to write files at arbitrary host filesystem locations outside the configured export directory, leading to root-level code execution in typical Docker deployments. The flaw exists in versions up to and including v0.19.4: book and note slugs are validated with huma's `pattern:"[a-z0-9-]+"` struct tag, but huma applies the regex unanchored via `MatchString`, so a traversal slug like `../../../../../../etc/cron.d/backdoor` passes validation because it contains a matching substring. When an administrator later executes `note-mark migrate export` (commonly as root in Docker), the raw slug is passed directly into `path.Join`/`os.MkdirAll`/`os.Create`, resolving the traversal and writing attacker-controlled content outside the export root. No public exploitation is confirmed (not in CISA KEV); a self-contained Go proof-of-concept is included in the GHSA advisory and demonstrates both the validation bypass and out-of-bounds file write.
Memory-exhaustion denial of service in soupsieve, the CSS selector engine bundled with Beautiful Soup 4 (beautifulsoup4), lets remote unauthenticated attackers crash Python services by submitting a large comma-separated CSS selector to soupsieve.compile() or Beautiful Soup's .select()/.select_one(). Each comma-delimited item is parsed into a ~976-byte object graph with no cap on list length, so a ~500 KB selector string of 'a,a,a,...' expands to roughly 244 MB of heap (a ~488x amplification), triggering OOM kills or MemoryError. A working proof-of-concept is published in the advisory; no CISA KEV listing or in-the-wild exploitation is reported.
Remote code execution in Nuclio's Kubernetes cron-trigger implementation allows an attacker who can submit a NuclioFunction specification to inject arbitrary shell commands that execute inside CronJob pods running as root. Two unsanitized paths exist: header keys are interpolated verbatim inside double-quoted shell arguments (breaking quoting context), and event bodies processed with Go's strconv.Quote survive as unescaped `$()` command substitution sequences. Both paths were dynamically verified on the latest release (1.15.27), and the resulting CronJobs persist as orphaned resources even after function deletion because they carry no ownerReferences. A publicly available PoC with full reproduction steps exists per the GHSA advisory. No KEV listing at time of analysis.
Container-to-host sandbox escape in HashiCorp Nomad and Nomad Enterprise lets an authenticated job submitter using the Docker task driver bind-mount an arbitrary host path into their container even when volume bind mounts are administratively disabled, enabling read and write access to files on the underlying host. The scope-changing flaw (CVSS 3.1 8.7) affects the Community and Enterprise editions and is fixed in Nomad 2.0.4 (CE), and Enterprise 2.0.4, 1.11.8, and 1.10.14. There is no public exploit identified at time of analysis and it is not on CISA KEV.
Host namespace escape in HashiCorp Nomad and Nomad Enterprise lets an authenticated job submitter bypass the allow_privileged control for the Docker task driver, launching containers in host PID/network/IPC namespaces to read data from the host or co-located workloads on the same client node. The flaw stems from missing authorization enforcement (CWE-862) and carries a CVSS 7.7 with a changed scope, reflecting cross-tenant impact. There is no public exploit identified at time of analysis and it is not listed in CISA KEV.
Authentication bypass in Portainer Community Edition (2.39.0-2.39.3 and 2.40.0 through 2.42.x) lets an unauthenticated network attacker seize full administrative control of a freshly deployed, uninitialized instance. During the five-minute post-deployment setup window the /api/restore and /api/users/admin/init endpoints stay reachable without credentials, so an attacker who wins the race can create the first admin account or restore a crafted backup and take over the platform along with every Docker, Swarm, Kubernetes and ACI environment it manages. No public exploit identified at time of analysis and it is not on CISA KEV, but the fix is available in 2.39.4 and 2.43.0.
Path traversal in Goploy's `/deploy/fileDiff` endpoint (versions <=1.17.5) enables any authenticated low-privilege member to read arbitrary files on both the Goploy host and every SFTP-managed remote server registered in the system. The dual file read returns local content in the `srcText` response field and remote server content in `distText`, multiplying the blast radius across all managed deployment targets. Publicly available exploit code exists per the GitHub Security Advisory; this is not listed in CISA KEV, but exploitation conditions are trivially met under default Goploy configuration.
Cross-namespace privilege escalation in goploy (zhenorzz/goploy through 1.17.5 and develop HEAD) lets any authenticated user holding the low-privilege `manager` role in their own namespace read, overwrite, plant, or delete project files in ANY other tenant's project, and rewrite any project's git remote URL, because the `/project/addFile`, `/project/editFile`, `/project/removeFile`, and `/project/edit` handlers act on body-supplied project/file row ids without verifying the target belongs to the caller's namespace. The rewritten git remote escalates to remote code execution on the next deploy, when goploy runs `git remote set-url origin <attacker-url>` and pulls attacker-controlled code under the goploy service account. A detailed proof-of-concept exists demonstrating all four primitives against the published Docker image, though no active exploitation has been reported.
Authenticated OS command injection in EGroupware lets an admin-level user escalate from web access to arbitrary shell command execution as the web server user (typically www-data). By uploading a crafted eTemplate .xet file to the admin-only /etemplates VFS mount, an attacker abuses Widget::expand_name(), which feeds widget attribute values into a PHP eval() while escaping only double quotes and leaving backtick shell operators intact. Publicly available exploit code exists and a vendor patch is available; there is no CISA KEV listing, so this is not confirmed as actively exploited.
Path traversal in XWiki running on Jetty 12+ lets remote users read arbitrary files the Jetty process can access by sending doubly URL-encoded '../' sequences to the skin resource endpoint (e.g. /xwiki/bin/skin/..%252f/..). Depending on how deep the webapp sits below root, this exposes both in-webapp secrets such as WEB-INF/xwiki.cfg and Hibernate configuration, and out-of-webapp OS files like /etc/passwd. No public exploit or active exploitation is tracked, but the vendor advisory (GHSA-qj4x-9g63-25g6) itself publishes working request URLs, so weaponization is trivial.
OS command injection in Coolify, the open-source self-hostable server/application/database management PaaS, allows an authenticated user with permission to edit application settings (versions prior to 4.0.0-beta.469) to run arbitrary commands on the managed host. The flaw lives in the executeInDocker() helper, which wraps user-controlled values in single quotes without escaping embedded quotes, letting an attacker break out of the quoted shell context during deployments and escape the intended Docker container confinement. No public exploit identified at time of analysis; this is not listed in CISA KEV.
OS command injection in Coolify (self-hosted server/app management platform) before 4.0.0-beta.471 lets an authenticated user embed shell metacharacters in a LocalPersistentVolume storage name, which is interpolated unescaped into docker volume shell commands and executed on managed servers when the associated resource is deleted. Rated CVSS 8.8 (CWE-78), it yields arbitrary command execution on downstream hosts controlled by the Coolify instance. There is no public exploit identified at time of analysis and it is not listed in CISA KEV, but the fix is confirmed in release 4.0.0-beta.471.
Privilege escalation to root command execution in Coolify (self-hosted PaaS) prior to 4.0.0-beta.471 lets any authenticated user holding the lowest-privilege team 'member' role run arbitrary OS commands as root on every server Coolify manages. The flaw lives in the GetLogs Livewire component, whose $container public property is unsanitized and lacks the #[Locked] attribute, so any team member can tamper with it over the Livewire wire protocol. There is no public exploit identified at time of analysis and the CVE is not in CISA KEV, but the low authentication barrier and full CIA impact make it high priority for any multi-tenant Coolify deployment.
OS command injection in Coolify (self-hosted server/app/database management platform) versions 4.0.0-beta.471 through 4.0.0-beta.473 lets an authenticated team member run arbitrary shell commands on the underlying host. A regression weakened the SHELL_SAFE_COMMAND_PATTERN allowlist so that ampersands were permitted in custom Docker Compose build, start, and pre/post-deployment command fields, enabling command chaining. The issue is fixed in 4.0.0-beta.474; no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Remote code execution in Crawl4AI's Docker API server (versions prior to 0.9.0) lets unauthenticated attackers run arbitrary commands as the container runtime user. The server passes request-supplied browser_config.extra_args directly into Chromium's launch arguments, enabling argument injection (CWE-88) of a malicious child-process launcher combined with --no-zygote. Because the Docker API is unauthenticated by default and CVSS is scored 10.0, a single crafted HTTP request achieves full container compromise; no public exploit identified at time of analysis and it is not listed in CISA KEV.
Server-side request forgery in Crawl4AI's Docker API server (versions prior to 0.9.0) lets a remote unauthenticated client coerce the server into fetching attacker-chosen internal, private, or link-local URLs and streaming the response body back. The SSRF destination allowlist check was enforced on the non-streaming /crawl path but omitted from the streaming code path, so requests to POST /crawl/stream - or POST /crawl with crawler_config.stream=true - bypass validation entirely. No public exploit identified at time of analysis, but the fix is public in commit 60886d1 and the root cause (a guard applied to one path but not its sibling) is trivial to reproduce.