36904 matches found
GHSA-2HW9-MC66-JC2Q Wasmtime: Preemption and traps during bulk operations enable breaking internal VM state
Impact Wasmtime's implementation of bulk-data-transfer WebAssembly instructions, such as memory.copy, contains a vulnerability when a preemption via epochs or fuel is combined with altering the store's state or cancelling a computation. To prevent these operations from taking too long Wasmtime...
GHSA-FJ2X-MQQP-3V2W Trigger.dev: Trigger CLI debug deployment logs expose resolved environment secret values
Affected version: trigger.dev 4.5.3 4.5.6 was advertised by the CLI but was not tested. A staging dry-run executed with trigger.dev deploy --env staging --dry-run --log-level debug. The debug output logged the complete build-worker options object. Its envVars property contained unredacted values...
GHSA-8FFR-XGWF-XJ56 aws-smithy-json: Uncontrolled recursion in the aws-smithy-json unknown-key skip path allows unauthenticated remote denial of service in smithy-rs generated servers
Summary Smithy-RS is a Rust code generation and runtime framework that generates HTTP clients and servers from Smithy interface definitions, powering the AWS SDK for Rust and custom service implementations. An issue exists which allows uncontrolled recursion in the unknown-key skip path of the...
GHSA-V2F8-6655-7GRJ Vibe-Trading FastAPI endpoints permit unauthenticated access, file upload, and an RCE chain
Summary: 5 findings — unauthenticated full-API exposure F1, lead Critical, read-side authorization gap that persists even with APIAUTHKEY set F2, unauthenticated file write of .py/.sh/.yaml to a server-returned path F3, default-permissive CORS that combines with a loopback-only check to grant any...
GHSA-5RMQ-CHC7-M22F Vibe-Trading file-read tools expose arbitrary server-readable files
Summary: 2 findings — safeuserpath accepts any path under Path.home or Path.cwd, which inside the shipped root container resolves to /root and /app so all of root's home, including /root/.ssh/idrsa, /root/.aws/credentials, /root/.kube/config, and /app/agent/.env, passes the check F9. readdocument...
GHSA-JQMF-MX4F-HFR6 Vibe-Trading LLM-callable tools permit command execution, code injection, and SSRF
Summary: 5 findings — BashTool shell-injection sink F6, the canonical RCE primitive, BackgroundRunTool async shell-injection sink F7, backtest execmodule runs top-level statements before the SignalEngine class check F8 — independent RCE path that does not match BashTool signatures, readurl outbou...
GHSA-4672-HWV6-GQ62 Trigger.dev: Cross-environment deployment cancel
Summary Trigger.dev isolates each project into multiple environments dev, staging, prod, and per-PR preview branches, each with its own secret API key — the environment is a trust boundary a dev/preview/CI key is lower-trust than a prod key. Most API routes enforce this by scoping resource lookup...
GHSA-9Q4R-4842-93VW Trigger.dev: Cross-tenant SQL injection in the TSQL query compiler (POST /api/v1/query) via unsanitized window-function name
Summary A cross-tenant SQL injection in the TSQL query compiler lets any authenticated trigger.dev customer read every other tenant's analytics data. The customer-facing query endpoint POST /api/v1/query accepts a TSQL/TRQL query that is compiled to ClickHouse SQL by internal-packages/tsql. The...
GHSA-59H8-W5Q6-MFMP Trigger.dev: Unauthenticated Realtime Stream Data Injection via Run FriendlyId
Summary The POST handler for /realtime/v1/streams/:runId/:streamId has no authentication. Any entity that knows or guesses a run friendlyId can inject arbitrary data into its realtime stream. Vulnerability Details File: apps/webapp/app/routes/realtime.v1.streams.$runId.$streamId.ts The action...
GHSA-PQXW-G93W-HJ9X Trigger.dev Self-Hosted Deployment: Default Secrets allow Unauthenticated Infrastructure Compromise
Summary Self-hosted trigger.dev v4 instances deployed using the provided Docker Compose configuration with default secrets from hosting/docker/.env.example are vulnerable to a multi-stage unauthenticated attack chain leading to complete infrastructure compromise. Vulnerability Details The...
GHSA-62CH-8VMQ-8XM7 figlet is vulnerable to denial of service via unbounded loop when whitespaceBreak is used with a small width
Impact A denial-of-service infinite loop can occur in text / textSync when both: - whitespaceBreak: true is set, and - width is set smaller than the rendered width of a single FIGlet character. Under these conditions breakWord could never find a valid break point, so the word-wrapping loop in...
GHSA-GG6R-GP4C-89HP Trigger.dev: V1 coordinator default-secret unauth Socket.IO
TL;DR The /coordinator Socket.IO namespace mounts on every webapp boot and authenticates with a default secret "coordinator-secret" baked into source. The override variable isn't documented in the self-host docs, .env.example, or helm values, so any operator who didn't read source ships with the...
GHSA-MHVH-FQ92-PFMR geopy: Regular Expression Denial of Service (ReDoS) in geopy.Point
Impact geopy.Point and Point.fromstring may take excessive CPU time when parsing long, malformed coordinate strings due to inefficient regular-expression behavior. The numeric Point constructor is not affected. Geocoders' reverse methods called with string inputs exercise the vulnerable path...
GHSA-5WF9-H793-W73C Xray-core: Pinning a CA certificate via pinnedPeerCertSha256 can lead to the success of MITM attacks
Summary Pinning a CA certificate via pinnedPeerCertSha256 can lead to the success of MITM attacks in some cases. Details https://github.com/XTLS/Xray-core/blob/45cf2898ab12e97a55dd8f1f3d78d903340bdc9e/transport/internet/tls/config.goL333-L347 If r.Config.ServerName is empty, DNSName will be empty...
GHSA-Q567-CR4X-96W4 Trigger.dev: Blind SSRF via alert-channel webhook
Summary A WEBHOOK alert channel stores a user-supplied url. When an alert fires deployment/run failure, error groups, the webapp server alertsWorker - DeliverAlertService POSTs the HMAC-signed alert payload to that URL via fetchwebhook.url, .... The URL is never validated against a host allowlist...
GHSA-PP95-GC86-JQ6Q Trigger.dev: Missing Authentication in Run Replay Action Allows Cross-Organization Task Execution (IDOR)
Summary The run replay action function at apps/webapp/app/routes/resources.taskruns.$runParam.replay.ts has no authentication or authorization check. While the loader GET in the same file properly calls requireUserrequest and scopes queries to the user's organizations, the action POST at line 166...
GHSA-XXV7-2VV3-H682 Trigger.dev: Server-side request forgery via unvalidated webhook alert-channel URL
Summary A project member can create a webhook alert channel whose delivery URL points at an internal address, and trigger.dev's control plane will send the alert there with no SSRF protection. The webhook URL is stored as an unvalidated string and is fetched directly from the webapp server, so a...
GHSA-QXPP-QJG8-X4JV Trigger.dev: Run replay injects a task run into an attacker-chosen environment (cross-tenant write)
Summary The dashboard replay action authorizes the source run it must belong to the caller's org, but the target environment for the replayed run is taken verbatim from the request body and is never checked for org or project membership. The environment lookup used by the replay path filters by i...
GHSA-96H3-5X6V-M776 Composer: GHSA-gjfg-22fp-rrxx fix bypass via symlinked package bin path
Summary A malicious or compromised Composer package could, when installed as a dependency, cause Composer to change the permissions of a file outside that package's own directory and to register a runnable vendor/bin command that points at that outside file. This is a path traversal and link...
GHSA-8MCX-5RQC-VHMF Dulwich: Arbitrary File Write (RCE) on Windows via Unvalidated Drive Letters in Tree Paths
Affected files dulwich/index.py Methods: validatepathelementntfs, treetofspath dulwich/porcelain/init.py Method: checkedworktreepath Description / Summary A High-severity Path Traversal vulnerability exists in Dulwich's checkout logic when running on Windows. The functions responsible for...
GHSA-35MR-4567-66VG Dulwich: Infinite Loop Denial of Service (DoS) in Packfile Object Resolution
Affected file dulwich/pack.py Method: Pack.resolveobject Description / Summary A High-severity Denial of Service DoS vulnerability exists in the Pack.resolveobject method. When resolving an OFSDELTA object, the resolver calculates the base offset using baseoffset = objoffset - deltaoffset. If a...
GHSA-8W8G-WQ8H-FQ33 Dulwich: Symlink write-through in checkout(paths=[]) via raw os.open bypasses all symlink protections
Summary Dulwich's porcelain.checkoutpaths=... code path writes files using raw os.openfilepath, OWRONLY|OCREAT|OTRUNC, mode followed by f.writeobj.data. This code path does NOT call buildfilefromblob at all, completely bypassing any symlink protections including the unreleased d09f8af fix. os.ope...
GHSA-5FQC-MRG8-W798 Dulwich: Symlink directory traversal in filter-branch index_filter via cross-commit state persistence
Summary Dulwich's filterbranch.py CommitFilter.applyindexfilter is vulnerable to symlink directory traversal. When processing commit history, materialized tree entries including symlinks persist in the working directory between commits, allowing a symlink from an ancestor commit to redirect file...
GHSA-CM62-GVXX-VMXX Dulwich: Symlink directory traversal in stash pop allows arbitrary file write via intermediate directory symlinks
Summary Dulwich's stash.py:pop function is vulnerable to symlink directory traversal, allowing an attacker to write arbitrary files outside the repository worktree when a victim pops a stash in a malicious repository. Root Cause The pop function at dulwich/stash.py:236 uses os.path.existsparentdi...
GHSA-6G2R-675J-HX59 xxhash-rust: Safe xxh3 custom-secret API accepts too-short secret in release
I have a minimized safe Rust witness for xxhash-rust 0.8.15. Safe public route: xxhashrust::xxh3::xxh364withsecret&0x41, & The caller-side harness contains no unsafe code. Under release execution, the internal minimum custom-secret length predicate is enforced only by debugassert!. Release-Miri...
GHSA-XM28-XVQC-GXXG Copernik XML Factory (stock JDK provider) has Improper restriction of XInclude resource resolution
Copernik XML Factory through 0.1.1, when running on its stock JDK provider, does not block XInclude resource resolution after an application enables XInclude on a factory returned by XmlFactories.newDocumentBuilderFactory or XmlFactories.newSAXParserFactory, or on an XMLReader passed through...
GHSA-6WCG-MQVH-FCVG Anubis: Policy bypass via client controlled X-Original-URI header
Any HTTP client can bypass Anubis bot protection on the default configuration by adding a single request header. No challenge needs to be solved. Affected versions: v1.22.0 through v1.25.0 introduced in commit d1d631a, PR 1015 The root cause is in lib/policy/checker.go, PathChecker.Check: go func...
GHSA-C9XM-49CP-XCR9 rmcp OAuth client fetches server-controlled resource_metadata URLs
Summary The rmcp OAuth client accepts a server-controlled resourcemetadata= URL from the WWW-Authenticate header and fetches it without same-origin or private-network validation. An attacker-controlled MCP server can return a 401 WWW-Authenticate: Bearer resourcemetadata="..." header pointing at ...
GHSA-QQW9-2VJ9-HX7R Duplicate Advisory: Title Authenticated Remote Code Execution in validate_code via Malicious Decorators Description
Duplicate Advisory This advisory has been withdrawn because it is a duplicate of GHSA-w584-2h2r-2hvf. This link is maintained to preserve external references. Original Description langflow-ai langflow v1.9.3 is affected by: Code Injection. The impact is: execute arbitrary code remote. The compone...
GHSA-VG99-7GJ7-2FR5 SiYuan: The reference filter for getRefIDs checks visibility but not the password tier, disclosing that password-protected documents reference a given block
Summary /api/block/getRefIDs filters its results for reader roles through a helper that checks only the visibility tiers. The password tier is not checked, because the helper does not receive the request context and therefore cannot evaluate the publish auth cookie. A reader who has not entered a...
GHSA-9CQF-HHRQ-7V45 SiYuan: getAttributeViewSearchTarget returns database row content to anonymous readers with no publish-access check, reopening the class closed one day earlier at the adjacent route
Scope note This endpoint does not exist in v3.7.3 or on master. It was introduced on the development branch by commit 9b8e8956f on 2026-07-27 and is present on the current development head. No released stable version is affected. Summary /api/av/getAttributeViewSearchTarget is registered with...
GHSA-J4PH-9XWF-WCJ4 SiYuan: getBookmarkLabels returns every bookmark label in the workspace to anonymous readers, with no publish-access filtering
Summary /api/attr/getBookmarkLabels is registered with CheckAuth only and applies no filtering of any kind. It runs a scan of the entire blocks table and returns the distinct set of every bookmark label in the workspace. An anonymous reader in publish mode receives the author's complete bookmark...
GHSA-HF8H-97GM-4X2P SiYuan: getUniqueFilename passes an unvalidated client-supplied path to the filesystem, giving anonymous readers an existence oracle over the entire host filesystem
Summary /api/file/getUniqueFilename takes a path from the request body and passes it to a filesystem existence check with no validation, confinement or authorization. The response distinguishes paths that exist from paths that do not, so an anonymous reader in publish mode can probe arbitrary...
GHSA-53FP-9JMV-227G SiYuan: Outline state for any document, including documents forbidden to readers, is returned by /api/storage/getOutlineStorage with no access check
Summary /api/storage/getOutlineStorage is registered with CheckAuth only and performs no authorization of any kind. Given a document identifier it returns that document's stored outline state, regardless of the document's publish tier. The two write endpoints for the same data, setOutlineStorage...
GHSA-JF8Q-945G-9Q4C vm2: Incomplete nodejs.* symbol filtering lets sandbox override host WebStream state checks
Summary vm2 current head v3.11.5, commit 7a1f5100b96f48d34e0fe104ab37c0acc5944f92 still exposes registered Node.js internal symbols from host WebStream prototypes to sandbox code. The prior nodejs. symbol hardening blocks Symbol.for'nodejs.' at the source, but the extraction filters and bridge...
GHSA-QHWX-74W5-XHXQ vm2: NodeVM builtin allowlist bypass via node:test.run() execArgv allows sandbox escape
Summary On Node.js 24 and newer, vm2 can expose the host node:test module to sandboxed NodeVM code when the embedder explicitly allows the node:test builtin. Sandbox code can reach that module through require'node:node:test' and call run with attacker-controlled execArgv. node:test.run starts a...
GHSA-JXXV-8R27-VM4P vm2 CLI provides no sandbox isolation - host-realm require() is reachable from sandboxed scripts
Summary The vm2 command-line tool installed by npm install -g vm2 and documented in the README's "CLI" section runs the supplied script under NodeVM with require:external:true and no root / context / builtin configured. With these defaults the resolver loads every relative or absolute require...
GHSA-H85J-HV3C-QFGQ vm2 exposes host HTTPS credentials and TLS traffic through globalAgent
Summary vm2 3.11.6 exposes the host process's real https.globalAgent when a NodeVM is explicitly allowed to require https. The module is wrapped as read-only, but calls to methods on the shared agent still mutate the host object. Sandbox code can register a free listener and receive host request...
GHSA-C48M-32M9-VX93 vm2 Custom Module Resolver Can Bypass the External Package Allowlist by Loading a Colliding Host Package
Summary vm2 is a sandbox library for isolating and executing untrusted JavaScript code inside a Node.js process. It can restrict access to built-in modules and external packages. When NodeVM enables an external allowlist together with a custom resolve callback, vm2 checks the requested package na...
GHSA-6RH5-QQ4Q-97XH vm2: NodeVM builtin denylist bypass via fs/promises despite -fs, allowing host filesystem writes
Summary NodeVM's builtin wildcard policy can allow sandboxed code to access fs/promises even when the embedder denies fs. With the following configuration: js require: builtin: '', '-fs', '-childprocess' require'fs' and require'childprocess' are blocked, but require'fs/promises' and...
GHSA-8686-VHFX-7R3J vm2: NodeVM node:-prefixed negative builtin deny bypass exposes child_process
Summary NodeVM normalizes node:-prefixed builtin specifiers during require resolution, but it does not normalize user-provided negative builtin entries in wildcard policy. As a result, this configuration: js new NodeVM require: builtin: '', '-node:childprocess' ; does not deny the canonical...
GHSA-633R-HQ9M-C4FF vm2: vm.freeze()/vm.readonly() bypass via accessor descriptor
Summary Untrusted JavaScript running inside new VM.run / new NodeVM.run can bypass vm.freeze / vm.readonly and mutate a host object the embedder explicitly marked read-only - the documented contract is "prevent sandboxed scripts from adding, changing, or deleting properties". If the frozen host...
GHSA-8HR7-R645-PC6W vm2: NodeVM nesting guard accepts array-shaped require and permits host RCE
Summary The NodeVM constructor computes hasRealRequireConfig using typeof requireOpts === 'object' && requireOpts !== null, so require: bypasses the guard intended to reject nesting without an explicit require configuration. makeResolverFromLegacyOptions then destructures the array to undefined...
GHSA-647F-G98J-QQ25 vm2: GHSA-m283-3h24-438v fix bypass leads to host RCE via call/apply indirection
Summary Untrusted JavaScript run by vm2 can escape the sandbox and execute arbitrary commands in the host Node.js process when an embedder-exposed host Promise rejects. This is an incomplete fix for GHSA-m283-3h24-438v: the advisory's capability-bearing rejection rebuild runs only through this...
GHSA-6W8R-XXW2-G3HX vm2 allows a sandboxed plugin to execute native code through `node:sqlite`
Summary vm2 3.11.6 exposes Node.js's host node:sqlite module to NodeVM code when that builtin is allowed explicitly or through builtin: ''. The module is wrapped as read-only, but callable methods retain host-process authority. A sandboxed plugin can construct an in-memory database with extension...
GHSA-46PR-C5WC-XFFX vm2 crypto builtin loads attacker native code through setEngine
Summary vm2 3.11.6 exposes the host crypto module to a NodeVM when that single builtin is allowed. The module is presented through a read-only bridge, but its functions still execute with host-process authority. crypto.setEngine accepts a filesystem path and asks OpenSSL to dynamically load the...
GHSA-27G9-P43V-CW3V vm2 sandbox escape on Node.js 26 through a stale PromiseThenLookupChain protector
Reporter - Name or handle: YMsora - Report date: 2026-08-14 Summary The latest published vm2 release, 3.11.5, and the current main branch are vulnerable to a sandbox escape when used on Node.js 26. An ordinary fulfilled Promise created by an async function can retain an attacker-controlled...
GHSA-98XX-8MX4-X7CM vm2 NodeVM can replace the host process TLS trust store
Summary vm2 3.11.6 exposes the host tls module to a NodeVM when that builtin is explicitly allowed. Although the module object is wrapped as read-only, its functions still execute against process-wide host state. On Node.js versions that provide tls.setDefaultCACertificates, sandbox code can...
GHSA-7Q3F-WX44-378M vm2: External module allowlist uses a raw prefix test, so a prefix-sharing sibling package is treated as allowlisted
Summary isPathAllowedForModule decides whether a resolved path belongs to an allowlisted external module using a raw string prefix test. nodemodules/foo2 starts with nodemodules/foo, so a package whose name merely shares a prefix with an allowlisted one is treated as being inside it, and a relati...
GHSA-3JQQ-PW4J-PQCJ JupyterLab: Cross-site scripting (XSS) in JupyterLab via crafted language package (jupyterlab.json)
Description A language pack ships a Plural-Forms header saying how the language counts, for example nplurals=2; plural=n != 1;. JupyterLab turns that string into a function with new Function, so the header gets executed. The check that meant to keep it safe was a regular expression. The regex was...