Back to dashboard

Tech News

Curated security, hosting and development news with vulnerability warnings from fixed trusted sources.

CISA KEVGHSACERT.atHosting

Updated

About these news

Articles are collected periodically from a fixed source list. D4rC Tools stores the headline, source summary and source link only; linked articles are not fetched on page view.

Security

Australia Gets Into Amadey Malware Backend, Cuts Off Access to 180,000 Infected Computers

The Hacker News

A criminal using the Amadey malware can no longer access or steal data from 180,000 infected computers around the world, including some in Australia, the Australian Signals Directorate (ASD) says. The agency's operators gained access to the criminal's operation's backend and cut it off from those computers. "The next steps that we took were to disconnect that Amadey controller from all those

Security

OpenAI Compaction Flaw Let Researchers Bypass Hidden Reasoning Protections

The Hacker News

OpenAI's compaction feature, which shrinks a long conversation to save space, could be turned into a way to copy a model's hidden reasoning out in plain text, security firm Xint has shown. OpenAI's reasoning models work through a problem before answering, and the service normally returns only the raw reasoning as an encrypted item the user cannot read. The method got past

Security

Attackers Hijack Dahua IP Cameras in Ukraine Using P2P Access and Auth Weaknesses

The Hacker News

The Computer Emergency Response Team of Ukraine (CERT-UA) has issued an alert warning of unauthorized remote access to video surveillance systems manufactured by Dahua. "Cases of compromising IP cameras and DVRs with access to the video stream, changing the device configuration and creating third-party accounts have been recorded," the State Special Communications Service of Ukraine (SSSCIP)

Security

CISA Confirms Active Exploitation of Two PHP2Shell Flaws Enabling Remote Code Execution

The Hacker News

The U.S. Cybersecurity and Infrastructure Security Agency (CISA) on Monday confirmed active exploitation of the recently patched PHP2Shell flaws by adding them to its Known Exploited Vulnerabilities (KEV) catalog. The PHP vulnerabilities, both rated 9.2 on the CVSS scoring system, facilitate unauthenticated remote code execution on affected deployments - CVE-2026-109618 - An out-of-memory

Hosting & Network

Cross-request KV cache exposure in the GLM-5.3 Workers AI model, and our remediation with SGLang

Cloudflare

A configuration mismatch in GLM 5.3 on Workers AI triggered an SGLang bug that exposed KV cache pages across requests. Here is how we addressed the issue.

Security

Hackers Infect 953 Online Stores With Scanner-Evading JavaScript, Mostly on Magento

The Hacker News

An unknown threat actor has infected 953 online stores, most of them running Magento, as part of a long-running campaign active since July 2025. According to Dutch e-commerce security company Sansec, the activity is designed to add a small piece of code to the store's pages that, when visited by unsuspecting users, serves malicious JavaScript loader code through Magento CMS blocks. "When you

Security

PHP Issues Second Windows Security Update in Five Days to Fix Brotli Code Execution Flaw

The Hacker News

PHP has rebuilt its official Windows packages for PHP 8.2 through 8.5 to fix CVE-2026-111497, a flaw in the Brotli compression library that the packages include. The flaw can let an attacker corrupt memory and potentially run code. PHP says the flaw can be reached through the cURL extension when the extension decompresses HTTP responses automatically. cURL leaves that off by default, but

Security

Attackers Use Microsoft Teams IT Support Scams to Deploy Malware and Ransomware

The Hacker News

Cybersecurity researchers are calling attention to what they say is a "recurring social engineering pattern" across hundreds of cases in which threat actors use Microsoft Teams' external chat creation feature to conduct impersonation scams or to deliver malware. "A consistent pattern of attacker behavior has emerged across these incidents: the use of the same throwaway tenants, the same 'IT

Security

⚡ Weekly Recap: This2Shell, That2Shell, Everything's an RCE? Rogue AI, Supply Chain Chaos and More

The Hacker News

This2Shell, That2Shell, Everything2Shell. That's pretty much how the last week went. Critical bugs that let attackers run code remotely are showing up everywhere. Hackers are scanning for targets, some flaws are already being used in attacks, and security teams have more urgent patches than they can keep up with. And that's not even the full story. A leaked key led to a software supply-chain

Security

Two Critical Wasmtime Flaws Could Let Malicious WebAssembly Modules Escape Sandboxes

The Hacker News

Two critical flaws in Wasmtime, a WebAssembly runtime that can be built into other software, could allow a malicious WebAssembly module to escape the sandbox intended to contain it, the project's maintainers say. An attacker would first need a vulnerable Wasmtime build to compile a module they control, and one of the flaws affects only ARM64 systems. Fixed versions were released on

Security

Between alerts: What Attackers Do in the Spaces Ordinary Detection Misses

The Hacker News

Every SOC struggles with a pile of alerts. Very few of those alerts explain how an attack started or how it progressed. Network data, like that from a network detection and response (NDR) platform, connects individual alerts into one timeline, and it feeds the defensive systems that can tie all events together into one coordinated view. SOC teams often first see the shape of an intrusion

Security

uCreator Android Spyware Can Steal Telegram 2FA Passwords and Clone WeChat Accounts

The Hacker News

A rentable Android spyware kit called uCreator takes over Telegram and WeChat accounts by hiding its code inside working copies of the two apps, researcher Ovi found. It only reaches people who install one of these tampered copies, spread outside the official app stores, or who run WeChat inside the kit makers' own container app. The kit's Telegram part matches Baohuo, a backdoor that Doctor

Security

Microsoft 365 Token-Replay Attacks Compromise 97 Accounts at 79 Organizations

The Hacker News

Cybersecurity researchers have disclosed a Microsoft 365 campaign that has been observed leveraging an adversary-in-the-middle (AitM) relay to capture sign-in sessions and then replay the stolen tokens to break into email accounts at 79 organizations. Huntress, which observed the activity between July 14 and September 22, 2026, said it detected 497 successful Microsoft 365 sign-in events across

Security

Gheist Uses Stolen GitHub Tokens to Steal Private Repository Secrets via Actions Logs

The Hacker News

An automated campaign is using stolen GitHub tokens to plant workflows that print a repository's secrets into its GitHub Actions logs, which the attackers then download before deleting the runs. The attacks have succeeded in private repositories and GitHub Enterprise environments, according to an analysis by cloud security company Wiz. A GitHub safeguard that pauses

Security

Malicious File in Downloads Folder Tries to Trick AI Coding Agent Into Installing Malware

The Hacker News

A malicious instruction file sitting in a developer's Downloads folder tried to make their AI coding agent install a known-malicious npm package, security firm Forever Security said in a report published last week. The company caught the attempt on a real customer's machine and stopped the agent before any code ran. It could not determine how the file got into the folder. The file

Security Known exploited CVE-2026-109618

PHP Group PHP: PHP Memory Corruption Vulnerability

CISA KEV

PHP contains an out-of-memory corruption vulnerability that allows for unauthenticated remote code execution.

Required action: Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.

CISA due date: 2026-10-29

Security Known exploited CVE-2026-109619

PHP Group PHP: PHP Stale Internal Request-State Vulnerability

CISA KEV

PHP contains a stale internal request-state vulnerability that allows for unauthenticated remote code execution.

Required action: Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.

CISA due date: 2026-10-29

Security

Unpatched Tailscale SSH Flaws Could Let a Hacked Device Reach Root on Other Servers

The Hacker News

A single hacked device on a Tailscale network can be used to gain root access to other servers it can reach, according to a security researcher who published the findings this week. The attack requires two things: Tailscale SSH set up to allow port forwarding, and an attacker who already controls one device that the network's access rules permit to connect to the target. The findings were

Security

PHP2Shell Exploitation Attempts Continue Amid Suspected N. Korea Global Scanning Activity

The Hacker News

In an update, Palo Alto Networks Unit 42 said it's retracting its earlier assessment that the post-compromise activity targeting the European government agency involved the exploitation of the PHP2Shell flaws. "What researchers saw was an attack against a European government agency executed in the context of a vulnerable PHP application," a spokesperson for the company told The Hacker News via

Security

OpenAI AI Agents Demonstrate VM Escapes and Secret Cross-Sandbox Communication

The Hacker News

OpenAI has announced plans to conduct frontier model training with no live internet access, as it resumes reinforcement learning (RL) training and internal inference of its most advanced AI models. "Based on the current state of alignment research, monitoring systems, and the security of internet infrastructure, we believe the responsible approach is to conduct frontier model training with no

Security

Brotli Decoder Flaw Behind Node.js RCE Also Affects Bun, Python and Other Widely Used Software

The Hacker News

A memory-corruption flaw in Google's Brotli decoder sits in many programs that unpack Brotli-compressed data, among them Bun, Microsoft's .NET, the Python Brotli and brotlicffi packages, and Envoy proxies set up to decompress Brotli. Tracked as CVE-2026-111497, the flaw allows crafted compressed data to overwrite past the end of a buffer and corrupt a program's memory,

Security

Leaked LiteLLM Master Key Let Attackers Steal GitHub Tokens and Hijack Release Pipeline

The Hacker News

LiteLLM on Friday revealed that an Agent Platform master key accidentally published to a public GitHub repository in late May 2026 ultimately allowed the threat actor to push a malicious version of the popular Python package. "On May 27, 2026, a configuration file was committed to the public LiteLLM-Labs/lite-harness repository which inadvertently contained the master key to a deployment of

Security

Google Says Gmail and Photos Data Shared With AI Search Could Be Used for Targeted Ads

The Hacker News

Google has updated its privacy policy to spell out that using personalized artificial intelligence (AI) features in Search or Gemini could allow the company to serve targeted ads to users based on their activity on other connected Google services. "You may choose to allow certain Google services, including services like Search or Gemini Apps, to access data from other Google services you use,

Security

Researchers Push Over 2 Million Updates to Remotely Disable Popcorn Time Updater That Could Fuel a Botnet

The Hacker News

Between November 2025 and March 2026, the Dutch security firm Eye Security pushed more than 2 million updates to computers it did not own to switch off a background updater that it said could have allowed an outsider to take over the machine. The updater belongs to Time4Popcorn, an abandoned copy of Popcorn Time, a free app that streamed pirated films and TV over BitTorrent. Popcorn Time was

Security

CISA Flags Two Actively Exploited Critical Flaws in Collabora Online and Arista VeloCloud

The Hacker News

The U.S. Cybersecurity and Infrastructure Security Agency (CISA) on Friday added two vulnerabilities impacting Collabora Online Built-in CODE Server and Arista VeloCloud Orchestrator (VCO) to its Known Exploited Vulnerabilities (KEV), citing reports of active exploitation in the wild. The critical-severity vulnerabilities are listed below - CVE-2026-110447 (CVSS score: 9.2) - An operating

Security Severity: Medium CVE-2026-112937 GHSA-JQC4-5CVW-7W85

filelock: ReadWriteLock on the hard-link route deletes any directory another user renames onto its .filelock-* link directory name

GitHub Advisories

ReadWriteLock and AsyncReadWriteLock (the SQLite-backed reader/writer lock) remove their private .filelock-* link directories with shutil.rmtree (a recursive delete) on a remembered path. They do not check that the path still names the directory they created. This happens on the hard-link route (a hard link is a second name for the same file). That route is every connection on macOS since 4.1.1 and any POSIX process without a usable /proc/self/fd (a Linux path that names the process's own open files), such as a chroot or container that does not mount /proc. Another local user who can rename entries in the directory that holds the lock database can rename one of the directories of the user running the lock (below: the lock user) onto the link directory's name, or onto a forged…

Security Severity: Low CVE-2026-112913 GHSA-9VHV-JXWW-XFM5

filelock: ReadWriteLock on Windows acts on SQLite side files another local user places beside its database

GitHub Advisories

On Windows, ReadWriteLock and AsyncReadWriteLock (the SQLite-backed reader/writer lock) connect SQLite to the lock database by its path, in every directory. SQLite derives three side files from that path: -journal, the rollback journal (pages saved to undo an interrupted write); -wal, the write-ahead log (changes kept outside the main file); and -shm, the shared-memory index of the WAL. SQLite acts on whichever of these it finds beside the database before the lock runs any statement. Another local account that can create files in the database's directory, but not delete files of other accounts there, places such a side file beside the database and denies everyone DELETE on it, which a file's creator may do. C:\Windows\Temp (the temporary directory of services, granting `BUIL…

Security Severity: Low CVE-2026-112907 GHSA-567Q-5QVW-PF92

filelock: On Windows an oplock on a soft lock's marker holds SoftFileLock.acquire() past its timeout and blocks the stale break

GitHub Advisories

On Windows the soft locks (SoftFileLock, MarkerSoftFileLock, SoftFileLease, their async forms, and a FileLock that fell back to a soft lock) read their marker by path. The marker is the lock file whose presence says a process holds the lock. Each acquire() attempt that finds a marker opens it with os.open to read the holder's process id, and the lock renames and deletes a marker it judges stale, by path. On Windows each of these calls waits for an oplock. An oplock (opportunistic lock) is a request by a process that holds a handle on a file to be told before another process opens, renames or deletes that file; the other process waits until the holder answers the break or closes its handle. Another local account that can open the marker for reading can take a Level 1 oplock on…

Security Severity: Medium CVE-2026-113713 GHSA-4F8H-VR72-P32C

virtualenv: Temporary app-data can leave dangling seed package links

GitHub Advisories

## Summary The app-data seeder can leave an environment linked to temporary package files that virtualenv deletes when creation finishes. The environment-variable and configuration-file forms of symlink_app_data can enable this state even though the command-line flag is disabled for temporary app-data. The resulting environment depends on a cache pathname that its owner no longer controls. Anthropic's OSS Scanner reported this as ANT-2026-ZOE2GEPC in virtualenv-20261015-005, received on 15 October 2026. This draft records source review and functional remediation checks. The reporter's cross-account code-execution claim has not been independently reproduced. ## Affected area Integrity of app-data references after temporary cache cleanup. ## Attacker-controlled input Symlink seeding m…

Security Severity: Low CVE-2026-113717 GHSA-CX28-75Q4-X26Q

virtualenv: Pip seeding with download omits wheel digest verification

GitHub Advisories

## Summary The pip seeder acquires bundled wheels with download=False and lets pip access the index when --download is selected. Index candidates on that path do not pass through virtualenv's wheel digest verification. Anthropic's OSS Scanner reported this as ANT-2026-74ALJBUF in virtualenv-20261015-005, received on 15 October 2026. ## Affected area Wheel selection by the pip seeder when downloads are enabled. ## Attacker-controlled input The pip seeder and download option must be selected. The finding concerns the default-index digest-verification policy. Explicit custom-index settings already opt out of comparison against PyPI metadata; this patch retains that policy. ## Affected code The relevant 21.14.8 source is in [pip seeder](https://github.com/pypa/virtualenv/blob/a795ab116356…

Security Severity: Low CVE-2026-113714 GHSA-494P-63J8-28P3

virtualenv: Downloaded wheel selection and caching precede verification

GitHub Advisories

## Summary Wheel downloads go directly into the reusable wheelhouse, while the verification target is selected from pip's textual output. A verification failure does not remove the downloaded file from that cache. Anthropic's OSS Scanner reported this as ANT-2026-ST00DRO3 in virtualenv-20261015-005, received on 15 October 2026. ## Affected area Download selection and promotion into the reusable wheel cache. ## Attacker-controlled input A download must fail verification, or the archive selected from pip output must differ from the file later reused. Default-index digest verification must be enabled. Existing custom-index exceptions are outside the promised PyPI comparison. ## Affected code The relevant 21.14.8 source is in [wheel download and digest check](https://github.com/pypa/virtu…

Security Severity: High CVE-2026-113718 GHSA-394H-QWMC-48PF

virtualenv: Xonsh activation literals depend on the script decoding codec

GitHub Advisories

## Summary Caller-supplied prompt text can become executable syntax in the xonsh activation script. An attacker must influence the value passed to virtualenv, and a user must subsequently activate the environment. ## Affected area Xonsh reads a UTF-8 activation script using a legacy multibyte encoding such as GBK. Printable non-ASCII bytes can change how the reader recognizes an adjacent quote. The report concerns POSIX activation. It does not establish exposure through unrelated activators. ## Attacker-controlled input The attacker controls prompt or destination data passed as a virtualenv argument. The user later sources the generated activation script. ## Affected code The relevant 21.14.8 source is in [xonsh quote()](https://github.com/pypa/virtualenv/blob/a795ab116356afde11039cf2763d…

Security Severity: Medium CVE-2026-113720 GHSA-FC2G-4W5P-6WHM

virtualenv: Seeded files retain permissions from an older cache

GitHub Advisories

## Summary The app-data copy seeder uses shutil.copy, which preserves cached file modes independently of the current umask. A cache populated under permissive permissions can therefore produce files with wider access in later environments. Anthropic's OSS Scanner reported this as ANT-2026-487MH6OW in virtualenv-20261015-005, received on 15 October 2026. ## Affected area Permissions of files copied from app-data into a new environment. ## Attacker-controlled input The cache must contain files created with broader permissions than the current environment creator intends. Another account must also be able to traverse the new environment and reach those files. A private parent directory prevents that access. No control of a private live cache is assumed. ## Affected code The relevant 21.1…

Security Severity: High CVE-2026-113723 GHSA-6W3R-XR62-4XCP

virtualenv: Bash prompt values can change meaning under older compatibility modes

GitHub Advisories

## Summary Caller-supplied prompt text can become executable syntax in the bash activation prompt. An attacker must influence the value passed to virtualenv, and a user must subsequently activate the environment and draw the prompt. ## Affected area Bash runs with compatibility level 4.2 and draws the environment prompt. Its replacement-string behavior differs from newer compatibility modes, leaving prompt text subject to a second interpretation. The report concerns POSIX activation. It does not establish exposure through unrelated activators. ## Attacker-controlled input The attacker controls prompt or destination data passed as a virtualenv argument. The user later sources the generated activation script. ## Affected code The relevant 21.14.8 source is in [bash prompt assembly](https://…

Security Severity: Low CVE-2026-113715 GHSA-QMX5-4P3X-WVQF

virtualenv: Venv configuration readback can reinterpret path boundaries

GitHub Advisories

## Summary The venv creator reads the standard library's generated pyvenv.cfg with splitlines() and merges all resulting keys over virtualenv's configuration. Line-boundary characters from destination data can therefore become configuration structure before output sanitization. Anthropic's OSS Scanner reported this as ANT-2026-6ZQHJ6VI in virtualenv-20261015-005, received on 15 October 2026. ## Affected area Configuration readback by the stdlib venv creator. ## Attacker-controlled input An untrusted caller must influence the destination pathname passed to the venv creator. That pathname must contain a character that Python treats as a line boundary. The builtin creator follows a different configuration-writing path. ## Affected code The relevant 21.14.8 source is in [venv readback](ht…

Security Severity: Medium CVE-2026-113719 GHSA-HHXQ-47XX-J5XX

virtualenv: Seed replacement does not contain metadata deletion paths

GitHub Advisories

## Summary The app-data seeder joins paths from existing distribution metadata to site-packages and deletes the resulting paths without checking containment within the environment. Anthropic's OSS Scanner reported this as ANT-2026-SXOEHWP7 in virtualenv-20261015-005, received on 15 October 2026. ## Affected area Removal of a previously installed seed package. ## Attacker-controlled input An environment being reused must contain distribution metadata influenced by another account. The invoking user must have deletion rights over the paths named by that metadata. Installing a new environment without existing package metadata does not enter this cleanup path. ## Affected code The relevant 21.14.8 source is in [seed uninstall](https://github.com/pypa/virtualenv/blob/a795ab116356afde11039c…

Security Severity: High CVE-2026-109461 GHSA-XCX6-JX8P-X3H5

MSAL Node authorization code flow may disclose parameters to an attacker-controlled endpoint

GitHub Advisories

### Impact Origin validation error in Microsoft Authentication Library (MSAL) for Node.js allows an unauthorized attacker to disclose information over a network. This affects the auth_code flow. ### Patches Version 7.1.0 and higher are patched. ### Workarounds Ensure you pass in only the auth_code to to acquireTokenByCode

Security Severity: High CVE-2026-109869 GHSA-XJJ6-F33Q-929C

undici vulnerable to Denial of Service via unhandled error on excessive content-encodings

GitHub Advisories

### Impact undici's fetch() crashes the Node.js process when a malicious server returns a response with more than five content codings and closes the connection before sending the body. undici rejects such responses (a content-encoding limit), but it created the internal response stream before that check and returned without attaching an error listener or aborting the request. The early close then surfaces a content-length mismatch on that orphaned internal stream, which Node.js treats as an unhandled error and terminates the process. A remote, unauthenticated server can trigger this with a single response, even when the application correctly catches the fetch() rejection. undici 6.x, 7.x, and 8.x are affected. ### Patches Upgrade to 6.29.1, 7.30.1, or 8.12.2. undici now valid…

Security Severity: Medium CVE-2026-109924 GHSA-4QV8-2P9J-2685

undici vulnerable to Denial of Service via unbounded memory in the EventSource parser

GitHub Advisories

### Impact undici's EventSource client can be driven to exhaust process memory by a malicious or compromised Server-Sent Events peer. By sending millions of tiny completed data: fields with no blank event separator, or a single unfinished line split across many chunks, the parser retains a growing amount of per-field and per-chunk state. The byte-based maxEventSize and maxResponseSize limits do not bound that retained state, and maxResponseSize is enforced on the compressed body before decompression, so a small compressed response can expand into enough retained memory to terminate the process. The application only needs to maintain an EventSource connection to an untrusted peer, which controls only the response. Availability is the only impact. ### Patches Upgrade to 6.29.1…

Security Severity: Medium CVE-2026-109841 GHSA-F72V-6W45-Q472

undici vulnerable to Subresource Integrity bypass via non-lowercase algorithm tokens

GitHub Advisories

### Impact undici's fetch() verifies Subresource Integrity (SRI) metadata by looking up the algorithm token in a lowercase-only set, but the SRI specification defines a valid token by its ASCII-lowercase form. A correct but non-lowercase token such as SHA256-... or Sha256-... is therefore treated as unknown and skipped. When no recognized algorithm remains, undici treats the integrity list as empty and accepts the response, so a server that returns a body different from the pinned digest passes the check. An application that pins a response with a valid uppercase or mixed-case SRI token receives attacker-controlled bytes with no integrity error. The attacker needs only to control the response body, not the application's integrity metadata. The issue affects response integrity only.…

Security Severity: Low CVE-2026-115897 GHSA-M5MM-P8H7-M29V

Serialize JavaScript: Cross-site scripting (XSS) via unescaped

GitHub Advisories

### Impact serialize-javascript escapes its output so it is safe to embed inside a `` element. Before 7.1.3 that guarantee did not hold for a **function value whose source ends in a bare 'function f(){ return 1 }// '; serialize({ a: { f }, g }, { space: 2 }); // { // "a": { // "f": function f(){ return 1 }// // } `` Embedded in a `` element, the script ends at the injected tag and the `` becomes a live element in the page. Exploitation requires an attacker to control the **source text** of a serialized function, in practice through a spoofed toString(). Real functions always end in }, so ordinary function values are not affected, and non-function values (including strings containing `

Security Severity: High CVE-2026-113872 GHSA-Q7QP-RJG7-Q26M

multer vulnerable to Denial of Service via a pending asynchronous fileFilter after request teardown

GitHub Advisories

### Impact When multer is configured with an asynchronous fileFilter, a single request can crash the Node.js process. If a request is aborted (for example when one file is rejected) while another file's async fileFilter is still pending, the pending callback later resumes a parsing stream that multer has already torn down. busboy then emits an error on a stream that no longer has an error listener, which Node raises as an unhandled 'error' event, and the process exits. A single unauthenticated request is enough, so any application using multer with an asynchronous fileFilter is affected, regardless of storage engine. Uploads using a synchronous fileFilter are not affected. ### Patches Users should upgrade to multer 2.5.0 or later. ### Workarounds Use a synchronous `fileF…

Security Severity: Medium CVE-2026-115886 GHSA-2WQP-Q3C6-CCJ5

MLflow: SSRF on unauthenticated MLflow servers via third-party scorer kwargs in the scorer invoke, register, and GenAI evaluate endpoints

GitHub Advisories

### Summary MLflow's tracking server exposes POST /ajax-api/3.0/mlflow/scorer/invoke with **no authentication**, and the handler reflectively instantiates an attacker-named class from attacker-supplied JSON with unconstrained constructor kwargs. With the optional trulens + trulens-providers-litellm packages installed, an unauthenticated attacker can force the server to make an outbound HTTP request to an arbitrary host of their choosing, carrying attacker-controlled headers (SSRF). ### Details Scorer.model_validate_json() reflects a class name from a JSON payload behind an import-path allowlist that never constrains the reflected attribute or its kwargs, in mlflow/genai/scorers/base.py:549-604: ```python data = serialized.third_party_scorer_data # attacker JSON module_path = dat…

Security Severity: Medium CVE-2026-115883 GHSA-6HMW-9432-67QQ

LangGraph: Namespace labels containing `.` reach other namespaces in Postgres and SQLite stores

GitHub Advisories

### Summary The Postgres and SQLite stores save a namespace as its labels joined with ., so ("tenant", "bob") and ("tenant.bob",) map to the same stored namespace. put rejected labels containing ., but get, search, delete, list_namespaces, their async versions, and ops passed directly to batch/abatch did not. A caller that could pass such a label could read, overwrite or delete items in another namespace. ### Details BaseStore checked namespace labels only in put/aput. The other methods passed the namespace on unchecked, and batch/abatch checked nothing, including the PutOp items inside them. PostgresStore, AsyncPostgresStore, SqliteStore and AsyncSqliteStore turn a namespace into text with ".".join(namespace), so a label containing . resolved…

Security Severity: High CVE-2026-115895 GHSA-834V-8H66-3H79

Happy DOM: Incomplete fix for CVE-2026-33943: unsanitized import alias leads to host code execution

GitHub Advisories

## Summary The ESM compiler in [email protected] does not validate imported local binding aliases before interpolating them into generated JavaScript. As a result, an invalid ESM import alias can be transformed into a valid JavaScript destructuring default initializer and executed. This appears to be an alternate injection path and incomplete remediation of GHSA-6q6h-j7hj-3r64 / CVE-2026-33943. The previous fix validates importName in the local export { ... } handler, but the named import handler still places an unvalidated alias directly into code context. These issues were confirmed through the public Window and `` APIs using the published happy-dom npm package. The PoC reaches the Node.js host process, obtains node:fs, and creates a proof directory on the host filesyste…

Security Severity: Medium CVE-2026-115892 GHSA-9PVW-HWFG-92H5

Wasmtime: Panic lowering a host-created component model stream into a guest that expects a different payload type

GitHub Advisories

### Summary Wasmtime may panic when the host lowers a component model stream or future into a guest, if the host created that stream or future with one payload type and the guest expects a different one. This can happen when an embedder creates a stream or future, passes it through a guest, receives it back under a type-erased type such as StreamAny or FutureAny, and then passes it to a guest function with a different payload type. GHSA-63h4-6cx9-pjfj is a related advisory also fixing issues within this area, and this advisory is being issued for portions of Wasmtime that were not fixed as part of that advisory. ### Impact This affects embedders that do all of the following: 1. Create streams or futures on the host with StreamReader::new or FutureReader::new 2. Pass them to gu…

Security Severity: Critical CVE-2026-115889 GHSA-897F-G5GM-FMXM

Wasmtime: Bit-packing in Cranelift compiler causes silent overflow and miscompilation

GitHub Advisories

## Summary In Wasmtime prior to v43, the Cranelift compiler backend bit-packs its SSA value indices in a way that can result in silent overflow in release builds, and result in incorrect value references in the IR resulting in arbitrary miscompilation. A very large Wasm function body, or one that is specially crafted to use many SSA values, can use this to force type-confusion or other arbitrary side-effects and escape the sandbox. Cranelift was changed in Wasmtime v43 to use a full u32 index, with checks if that limit is exceeded, and so is no longer susceptible to this bug. ## Impact A Wasmtime engine with default settings (using the Cranelift backend) on any architecture/platform could experience a sandbox escape from a specially-crafted Wasm module. ## Patches Wasmtime v36.0.19 has…

Security Severity: Medium CVE-2026-112906 GHSA-2G95-WG33-C5X2

filelock: SoftFileLock evicts a fresh lock file whose watched age another local user's pre-dated file passed on through inode reuse

GitHub Advisories

SoftFileLock and MarkerSoftFileLock evict an unparsable marker (the lock file at ``, whose presence says a process holds the lock) once a waiting contender has watched it unchanged for two seconds. SoftFileLease expires a lease the same way. The watch tells two looks apart by the marker's modification time (mtime) and inode number (the kernel's identity for a file, independent of its name) alone. Another local user (the other user below) who can create files in the lock's directory, a sticky /tmp included (the sticky bit is a directory flag that lets only a file's owner remove it), parks an empty file of its own at the lock path. It dates that file to a future tick of the kernel's coarse clock (a clock that advances in steps of 4 ms), lets the waiters of the user running the lock…

Security Severity: Medium CVE-2026-112914 GHSA-CRV4-6MHJ-J5JH

filelock: SoftFileLock stale-break restore follows a swapped-in symbolic link and hard-links a file of the user running the lock into the lock directory

GitHub Advisories

When a soft-lock stale break finds that the marker (the lock file at ``) it renamed aside was a live one recreated by a successor, the restore branch of break_lock_file() checks the break name with lstat (a check that reads a name without following a symbolic link) and then calls os.link(break_path, lock_file) by name. On CPython 3.12 and later on Linux (and on macOS) that call follows a symbolic link (a file that redirects to another path). A local user (the other user below) who can write a shared lock directory without the sticky bit (a directory flag that lets only a file's owner rename or remove it) replaces the break name with a symbolic link between those two calls. The SoftFileLock, MarkerSoftFileLock, SoftFileLease or lifetime break of the user running the lock (the…

Security Severity: High CVE-2026-112940 GHSA-V4X8-3WR5-3WQ8

filelock ReadWriteLock: SQLite reopens the lock database by name, so a planted symlink or journal file makes the lock user's process overwrite or unlink its own files

GitHub Advisories

ReadWriteLock and AsyncReadWriteLock (the SQLite-backed reader/writer lock) hand SQLite a name they do not control. On Linux the lock validates its database through a descriptor (the number the kernel gives a process for an open file). It then connects SQLite to /proc/self/fd/, a Linux path that names the process's own open file n. SQLite turns that path back into a plain path and reopens it by name, following symlinks (a symlink is a file that points at another path). On every POSIX route SQLite also acts on -journal, -wal and -shm files it finds beside that name. Those are SQLite's side files: the rollback journal (pages saved to undo an interrupted write), the write-ahead log or WAL (changes kept outside the main file), and the shared-memory index for the WAL. Another loc…

Security Severity: Low GHSA-H4FR-CMH5-QR62

Fallow: A `.*` glob segment let an analyzed repository make Fallow test paths in the parent of the project root

GitHub Advisories

### Impact Fallow expands some globs from the analyzed repository on disk. Before 3.34.0, a segment such as .*, .? or ..* in such a glob also matched the special .. entry. The glob crate tests .. against a segment that starts with a literal .. Fallow validates plugin glob patterns and refuses absolute paths and .. segments, but these segments passed that validation. The attacker controls the repository content. The attacker must also be able to read the Fallow output, for example a CI log or a pull request comment. Then the attacker can learn if a file or directory exists in the parent of the project root: - A plugin fileExists detection pattern such as .*/marker.json made the plugin active when marker.json existed in the parent directory. - An external plugin `confi…

Security Severity: Low CVE-2026-115569 GHSA-JFWM-3P3C-6HX5

Fallow: Jest and Vitest `projects` entries let an analyzed repository make Fallow read files outside the project root

GitHub Advisories

### Impact Fallow reads the Jest and Vitest configs of the repository that it analyzes. A Jest projects entry or a Vitest test.projects entry can name a path. Fallow followed such an entry to a config file and read that file, also when the file was outside the project root. These forms reached outside the root: - an absolute path or glob, for example /etc/*; - a path with .. segments, for example ../*; - a glob with a .* segment, because the glob crate also tests .. against a segment that starts with a literal .; - a symlink in the project root to a directory above it; - the extends path of a Vitest inline project; - a script --config path that is a symlink to a file outside the project root. Fallow parsed each of these files as a test runner config. Fallow used the…

Security Severity: Critical CVE-2026-112398 GHSA-5X8W-8JJ5-Q52H

Pillow: Heap buffer overflow in FlashPix (FPX) JPEG decoding leads to code execution

GitHub Advisories

### Credits **Researcher**: Alex Bouffard ([email protected]) ### Summary A heap buffer overflow in Pillow's FlashPix (FPX) JPEG-tile decoder lets an attacker achieve arbitrary code execution by getting an application to open a single crafted file with Image.open(). The file is recognized by content (the OLE2 magic), not by extension, so any service that opens or thumbnails untrusted uploads with the optional olefile dependency installed is reachable with no user interaction. In the PoC below, opening one crafted file executes an attacker-chosen command on stock Pillow 12.2.0 (x86_64 Ubuntu 24.04, glibc 2.39). ### Details FpxImagePlugin decodes FlashPix (FPX) files, which are OLE2/CFBF compound documents. Image.open() auto-detects them from the OLE2 magic D0CF11E0... whenever…

Security Severity: High GHSA-F2HQ-32VH-53CC

postal-mime: Quadratic CPU consumption when decoding a header of many joinable RFC 2047 base64 encoded words

GitHub Advisories

### Impact Decoding a header that holds a long run of joinable RFC 2047 base64 encoded words, such as =?utf-8?B?QUJD?= repeated tens of thousands of times in a Subject, From, To, a filename or a description, took time quadratic in the number of words. The join check ran a regex over the text joined so far for every word, which flattens the accumulated string each time. A single well formed message of about 1.6 MB blocked the event loop for one to twenty seconds depending on the host, and inline message/rfc822 parts multiplied the cost, since each nested message carried its own header budget. Any application that parses untrusted mail with postal-mime 3.0.0 through 4.0.7, including the exported decodeWords() helper, is affected. There is no confidentiality or integrity impact.…

Security Severity: Medium CVE-2026-114501 GHSA-654X-CWWV-5J9C

Pillow: Arrow export leaks stale heap memory when PILLOW_ALIGNMENT > 1

GitHub Advisories

### Summary When [PILLOW_ALIGNMENT](https://pillow.readthedocs.io/en/stable/reference/block_allocator.html#memory-pools) is set above 1, exporting an image to Arrow returns uninitialized heap memory mixed in with the pixel data. That memory can include pixels from images the process freed earlier. ### Details With an alignment above 1, the default allocator pads each row up to aligned_linesize and starts the first row at an aligned offset into the block. It then exports im->blocks[0].ptr as xsize * ysize tightly packed pixels, so exported data includes the padding bytes, and can include a few bytes from before the first row. Tested vulnerable on 11.2.1, 12.3.0, 4c1ed27a5. ### PoC Whether things leak may depend on allocator configuration. This does show a leak on my Mac. ```python…

Security Severity: Medium GHSA-8C8M-P3M8-CJG8

Nodemailer: A nested comment ends early in addressparser, releasing the rest of the comment as a recipient

GitHub Advisories

### Vulnerability summary RFC 5322 comments nest. addressparser ended a comment at the first ), including the one that closes a nested comment, and parsed the rest of the outer comment as header text. Victim (x(y) ) names [email protected] with x(y) as a comment, and Nodemailer read it as the address [email protected]. This is the same shape as the escaped parenthesis fixed in 10.1.2, reached through nesting instead of a quoted-pair. Affected: 3.0.0 through 10.1.3. ### Attacker capabilities The attacker controls the text of an address that an application passes to Nodemailer, or the From or To header of an inbound message parsed with mailparser. No access to the application, its configuration or its credentials is needed. The value is a syntactically valid RFC 5322 address that conform…

Security Severity: Medium GHSA-M943-M63M-W62W

Nodemailer: A ";" inside a quoted string or comment ends an address group early in addressparser, turning display text into a recipient

GitHub Advisories

### Vulnerability summary addressparser ends an RFC 5322 group at the first ;, including one inside a quoted display name or a comment. The text after it is parsed again as top level recipients with the quoting flipped, so text that every conformant parser reads as a display name or comment becomes a live address. G: (a; ) ; names only [email protected], and Nodemailer read it as the single recipient [email protected]. Affected: 3.0.0 through 10.1.3. ### Attacker capabilities The attacker controls the text of an address field that an application passes to Nodemailer, or the header of an inbound message parsed with mailparser. No access to the application, its configuration or its credentials is needed. The value is a syntactically valid RFC 5322 group that conformant parsers accept without…

Security Severity: Medium GHSA-85X2-Q946-CP5H

Nodemailer: A ">" inside a quoted local part ends an angle-addr early in addressparser, delivering to a domain the header does not name

GitHub Advisories

### Vulnerability summary addressparser ends an angle-addr at the first > it sees, including one inside a quoted local part, a comment or a domain literal. The domain is then read off the text in front of that >. `` is the mailbox "[email protected]>"@good.com under RFC 5322, and Nodemailer read it as an address at evil.com. The unbracketed spelling of the same value was already read correctly. Affected: 3.0.0 through 10.1.3. ### Attacker capabilities The attacker controls the text of a recipient or sender address that an application passes to Nodemailer, for example a To value entered in a contact or invite form, or the header of an inbound message parsed with mailparser. No access to the application, its configuration or its credentials is needed. The value is a syntactically valid RFC…

Security Severity: Critical CVE-2026-114509 GHSA-F9X3-7VQ9-CPH6

Laravel TokenGuard authentication bypass through non-string API credentials

GitHub Advisories

Laravel's built-in TokenGuard, **when configured with a standard token-based API guard**, may be bypassed to authenticate as an arbitrary existing user without knowledge of their valid API token. **Under certain database configurations (MySQL/MariaDB)** an attacker can submit a specially crafted, non-string credential value that is mishandled during the authentication lookup, causing the underlying query to match an unintended user record rather than failing authentication as expected. ### Impact An unauthenticated attacker may authenticate as another user without possessing that user's API token, leading to authentication bypass and account takeover on any route protected by the affected guard.

Security Severity: Medium CVE-2026-114508 GHSA-5WCM-3V2W-8362

Laravel relationship inclusion can trigger unauthorized data destruction

GitHub Advisories

A vulnerability in how relationship inclusion is processed on certain read endpoints. Under specific conditions, a request to a read-only endpoint can be crafted to trigger a destructive database operation on a related table, rather than simply retrieving data. ### Impact A user with only read access could cause irreversible data loss (e.g., a related table being emptied), without needing any write permissions. This could result in denial of service and loss of data integrity for affected applications.

Security Severity: Low GHSA-XMJ3-9GF7-H52W

setuptools: Windows path escape via namespace_packages.txt during legacy wheel installation Description

GitHub Advisories

### Summary On Windows, attacker-controlled content in a wheel's .dist-info/namespace_packages.txt can cause setuptools' legacy wheel installation path to create an __init__.py outside the requested destination_eggdir. The attacker can influence the destination path, but not the contents of the created file. ### Details Tested setuptools commit: 6ead555c5fb29bc57fe6105b1bffc163f56fd558 Relevant source: setuptools/wheel.py SHA-256: 359b7e0d5dd8c3135653abe08a8ed5dc0352eadfd7df22cb5e2b5303b7c3cafd The relevant call path is: Wheel(wheel_path).install_as_egg(destination) → _install_as_egg → _convert_metadata → _fix_namespace_packages A wheel can provide attacker-controlled content in: .dist-info/namespace_packages.txt The namespace value is eventually used approximately a…

Security Severity: Medium CVE-2026-110306 GHSA-W74X-V6F9-J3XG

fast-uri vulnerable to URI scheme spoofing via percent-encoded scheme decoding

GitHub Advisories

### Impact fast-uri percent-decodes the scheme component with the legacy global unescape() before validating it, so an input whose decoded scheme is a valid but dangerous token is emitted as a live scheme. RFC 3986 section 3.1 does not allow percent-encoding in a scheme, so no RFC or WHATWG parser treats such input as having that scheme, but fast-uri does. For example, normalize('%6Aavascript:alert(1)') returns javascript:alert(1), resolve('https://a.example/', '%6Aavascript:alert(1)') returns javascript:alert(1), and parse('%6Aavascript:alert(1)').scheme returns javascript. The %uXXXX form (%u006Aavascript:) produces the same result, and equal('%68ttp://a/', 'http://a/') returns true. An application that screens dangerous schemes on the raw input and then stores…

Security Severity: Low CVE-2026-110095 GHSA-XHQ7-XMQJ-769H

fast-uri vulnerable to improper path equivalence in relative reference normalization

GitHub Advisories

### Impact fast-uri's normalize() and serialize() apply RFC 3986 dot-segment removal (remove_dot_segments) to the path of a relative-path reference. RFC 3986 section 5.2.4 defines that algorithm only for the merged target path during resolution, not for the reference itself, so applied to the reference it drops leading .. segments and can turn a document-relative reference into a root-relative one. For example, normalize('a/../b') returns /b and normalize('../x') returns x, so resolve(base, normalize(ref)) points at a different resource than resolve(base, ref), and equal() treats distinct references as the same. Applications that normalize attacker-supplied or user-supplied relative references and then resolve them, or use them as cache, deduplication, or authoriza…

Security Severity: Medium CVE-2026-110180 GHSA-WJR9-J795-JXCR

fast-uri vulnerable to host confusion via unchecked WHATWG host canonicalization

GitHub Advisories

### Impact fast-uri versions `>= 2.4.2, = 3.1.3, = 4.0.1,

Security Severity: Low CVE-2026-110725 GHSA-333X-W4R6-6CRP

fast-uri vulnerable to scheme injection via an unescaped first-segment colon in suffix references

GitHub Advisories

### Impact fast-uri's serialize(), normalize(), and resolve(), when called with the non-default option reference: 'suffix' on a reference that has no authority, emit a relative reference whose first path segment contains a bare colon without escaping it. RFC 3986 section 3.3 requires the first segment of a path-noscheme reference not to contain a colon, precisely because a bare colon makes the string reparse as an absolute URI with a scheme. fast-uri's default serialization escapes that colon, but the suffix path does not. For example, normalize('javascript:alert(1)', { reference: 'suffix' }) returns javascript:alert(1), which reparses as a live javascript: scheme; data: and vbscript: behave the same. Applications that serialize or normalize a relative reference wi…

Security Severity: Medium GHSA-7XGJ-8392-5Q4R

FastMCP: Post-transform component authorization is skipped on direct calls

GitHub Advisories

## Maintainer assessment and remediation This report is accepted as a FastMCP authorization vulnerability. In supported configurations, a server transform can change the metadata used by a component's authorization policy. Direct lookups previously checked the original component but returned the transformed component without rechecking its policy. A client that knows the component identifier can invoke a tool or retrieve a resource or prompt that the configured policy denies. The fixes authorize the final transformed tools, resources, templates, and prompts. A denied concrete resource also shadows a matching resource template at its URI, preventing proxy templates from retrieving the same protected resource upstream. Authorized callers, authorized component versions, and templates for gen…

Security Severity: Medium GHSA-VQQP-X5QM-5QP4

FastMCP MCP client wrappers construct M2M OAuth providers without issuer binding — client secret redirectable to attacker-advertised authorization server

GitHub Advisories

## Maintainer assessment and remediation This report is accepted as a FastMCP credential-binding vulnerability. Affected versions of the OAuth client credentials providers do not expose the authorization-server issuer that owns pre-registered credentials. An untrusted or compromised MCP server can therefore advertise a different authorization server and receive the client secret or a signed assertion. Signing keys themselves remain local; assertion replayability depends on the assertion source and audience policy. Affected stable versions are 4.0.0–4.1.1 of fastmcp and fastmcp-slim. The wrappers were introduced in 4.0.0a1; 3.x does not include them. The 4.1.2 fix adds issuer to ClientCredentialsOAuthProvider and PrivateKeyJWTOAuthProvider and requires MCP SDK 2.2.0. It also disc…

Security Severity: High CVE-2026-114055 GHSA-GX7P-2J49-HFQ4

vLLM : DoS via unvalidated mm_processor_kwargs in multimodal image processors (Isaac, InternVL, H2OVL, etc.)

GitHub Advisories

## Summary API clients can supply arbitrary mm_processor_kwargs per request. vLLM forwards these values through the multimodal rendering and processing pipeline to Hugging Face and custom image/video processor constructors and calls. Resource-sensitive values such as image size, patch size, patch count, crop count, or frame count can therefore be controlled by a remote client. For processors that upscale inputs, a single request can force an allocation large enough to terminate the API server or worker with an out-of-memory condition. ## Affected Components The per-request field was introduced in commit 041e29471671a3d43afedb6a749421d56ef4d3e7 and first shipped in v0.7.3. The generic forwarding path remains present in current main. The Isaac path is a concrete high-amplification exa…

Security Severity: Low CVE-2026-114060 GHSA-PFHG-Q3QV-9Q6R

SvelteKit: URL redirection to untrusted site via enhanced form submission

GitHub Advisories

### Impact Applications using enhanced form actions (use:enhance) on routes that accept paths beginning with //, such as catch-all routes, may be vulnerable to an open redirect. ### Patches A fix has been prepared for @sveltejs/kit 3.0.0. Users should upgrade to 3.0.0 or later. The fix preserves leading double slashes in action paths without generating protocol-relative URLs, restricts non-redirect action navigation to the current origin, and includes the origin when comparing action locations with the current page. ### Workarounds Reject requests whose parsed URL pathname begins with // before route resolution, for example in a reverse proxy or a SvelteKit handle hook. Alternatively, disable navigation for non-redirect enhanced form results by supplying a custom submission call…

Security Severity: Medium CVE-2026-114437 GHSA-J6QF-3M9C-VWJ3

chi: Client IP spoofing in ClientIPFromXFF via X-Forwarded-For

GitHub Advisories

### Summary ClientIPFromXFF skips any X-Forwarded-For entry in a configured trusted CIDR but never verifies that the direct TCP peer in http.Request.RemoteAddr belongs to that CIDR. A client that can reach the Go server directly can therefore append a trusted-looking proxy address and choose the client IP returned by middleware.GetClientIP. The attack is remote and requires one unauthenticated HTTP request with no user interaction (AV:N/AC:L/PR:N/UI:N). It changes security decisions and exposes one protected handler within the same application (S:U/C:L/I:L); no availability loss was observed (A:N). **Preconditions:** The application uses ClientIPFromXFF and makes the origin server reachable by an anonymous client outside the configured trusted-proxy CIDRs. No victim interaction…

Security Severity: Medium GHSA-2RQM-H6HV-G79V

odf-kit has HTML injection leading to XSS in odsToHtml() via unescaped style attribute values

GitHub Advisories

### Summary ODF style values are interpolated into style="..." attributes without HTML-escaping in odf-kit's ODS to-HTML renderer (odsToHtml()). A double-quote character inside an attacker-controlled style value breaks out of the attribute, allowing arbitrary HTML/attribute injection — and therefore script execution (XSS) — from a crafted .ods file wherever the rendered output is inserted as HTML, which is the documented purpose of the function. ### Details Two emission sites in src/ods/to-html/html-renderer.ts (before 0.14.0, src/ods-reader/html-renderer.ts) write document-controlled values into a style attribute without escaping: - **Cell style.** buildInlineStyle() assembles a CSS string from the cell's formatting properties (fo:color, fo:font-size, fo:font-family,…

Security Severity: High CVE-2026-115572 GHSA-6C7F-9265-G8FW

pypdf: Possible long runtimes for repeated references to the same missing object

GitHub Advisories

### Impact An attacker who uses this vulnerability can craft a PDF which leads to long runtimes. This requires loading relevant parts of a file (like their pages) where the same, but non-existent indirect object is referenced multiple times. ### Patches This has been fixed in [pypdf==6.21.2](https://github.com/py-pdf/pypdf/releases/tag/6.21.2). ### Workarounds If you cannot upgrade yet, consider applying the changes from PR [#4240](https://github.com/py-pdf/pypdf/pull/4240).

Security Severity: High CVE-2026-115585 GHSA-JR96-GVGH-J3R4

pypdf: Possible long runtimes for repeated malformed cross-reference entries (Follow-up)

GitHub Advisories

### Impact An attacker who uses this vulnerability can craft a PDF which leads to long runtimes. This requires cross-reference streams with repeated malformed cross-reference streams. ### Patches This has been fixed in [pypdf==6.21.2](https://github.com/py-pdf/pypdf/releases/tag/6.21.2). ### Workarounds If you cannot upgrade yet, consider applying the changes from PR [#4240](https://github.com/py-pdf/pypdf/pull/4240). ### Notes This is a follow-up to https://github.com/py-pdf/pypdf/security/advisories/GHSA-55h5-xmcq-c37v, which had the side-effect of still loading the whole stream again despite the cache being present.

Security Severity: High CVE-2026-115580 GHSA-GMH7-3G9R-MJH5

pypdf: Possible long runtimes for large xref table header limits

GitHub Advisories

### Impact An attacker who uses this vulnerability can craft a PDF which leads to long runtimes. This requires opening a file with large/wrong upper limits in the xref table. ### Patches This has been fixed in [pypdf==6.21.2](https://github.com/py-pdf/pypdf/releases/tag/6.21.2). ### Workarounds If you cannot upgrade yet, consider applying the changes from PR [#4239](https://github.com/py-pdf/pypdf/pull/4239).

Security Severity: Medium CVE-2026-115567 GHSA-5WJR-9356-4WC8

Tokio: Race condition in `tokio::time::Interval`

GitHub Advisories

### Summary On the multi-threaded runtime, there is a race condition between Interval::poll_tick and the runtime's time driver. This affects Interval only. Sleep and Timeout are **not** affected. ### Details In Tokio v1.54.0, a race condition between tokio::time::Interval::poll_tick (including .tick().await) and the runtime time driver can drop an internal timer entry without synchronizing with the driver thread that is firing it. This causes a data race and use-after-free on the timer's waker and task state in safe Rust, leading to assertion panics, task reference-count corruption, or heap memory corruption. This bug was introduced by https://github.com/tokio-rs/tokio/pull/8458, and it was fixed by https://github.com/tokio-rs/tokio/pull/8692. ### Impact This may lead to crash…

Security Severity: High CVE-2026-115570 GHSA-JR5W-W6X2-84P9

Electron: Mitigation for compromised eMudhra intermediate certificates

GitHub Advisories

### Impact A set of eMudhra intermediate certificates were compromised and are being blocked by browsers and other TLS clients. This Electron update adds the same block to both Chromium networking and Node.js tls, https and fetch. On earlier versions, an attacker holding a certificate issued through these intermediates and able to intercept network traffic could impersonate a TLS server to an app. Apps are only affected if they make TLS connections over a network an attacker can intercept. Apps that make no network connections are not affected. Other software has shipped the same mitigation, including Go (CVE-2026-111943) and Firefox (CVE-2026-113470). ### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ### Fixed Versions * `45.0.0-be…

Security Severity: High CVE-2026-111181 GHSA-27R3-JXMH-P828

body-parser vulnerable to Denial of Service via trailing bytes after a compressed request body

GitHub Advisories

### Impact A single request can crash any application using body-parser with default options. When a request carries a Content-Encoding (for example gzip), body-parser pipes it into a decompression stream and, after reading the body, leaves that stream piped with no error listener. A payload of one valid compressed frame followed by trailing bytes decodes and the application responds normally, but the trailing bytes then reach the already-finished decoder, which emits an error that is re-thrown as an uncaught exception and terminates the process. No authentication or matching route is required, since parsing runs before routing. ### Patches Fixed in body-parser 2.4.0 and 1.20.9. Upgrade to one of these versions. ### Workarounds Pass inflate: false to the body-parser middleware i…

Security Severity: High GHSA-Q54R-JF2P-RFR2

gitoxide gix: untrusted .git/config disables filesystem .git-protection path checks via unfiltered protect_options()

GitHub Advisories

## Summary In the gix crate, Cache::protect_options() in gix/src/config/cache/access.rs reads the three filesystem path-protection settings (core.protectHFS, core.protectNTFS, and gitoxide.core.protectWindows) with the unfiltered gix_config::File::boolean() accessor instead of the trust-aware boolean_filter() accessor used by every other security-critical config read in the same file. When a repository is opened with reduced trust (an ownership mismatch, which maps .git/config sections to Trust::Reduced), these protection settings should not be honored from the untrusted repository-local config. Because the trust filter is skipped, an attacker who controls a repository's .git/config on a shared filesystem can set core.protectNTFS = false and/or `core.protectHFS = f…

Security Severity: Medium GHSA-MHF7-XP6R-6QRC

Livewire: Authorization bypass in #[Authorize] via reordered parameter keys and #[Json] execution order

GitHub Advisories

### Impact Three issues allowed actions protected by the #[Authorize] attribute to run against records the current user is not authorized for: 1. **Out-of-order parameter keys on actions.** #[Authorize] resolved a model parameter by its array key, while the action itself received parameters positionally. A request sending params as an object with reordered integer keys (e.g. {"1": 2, "0": 1}) could pass authorization with a record the user owns while the action received a different record. With #[Authorize('delete', 'comment')] on deleteComment(Comment $comment), a user could delete another user's comment. 2. **The same issue on event listeners.** Methods using both #[On] and #[Authorize] with a model parameter were affected in the same way through the __dispatch call. 3.…

Security Severity: Medium GHSA-H53F-RM2W-W7RG

Echo: X-Real-IP extractor trusts the header value instead of the sending peer

GitHub Advisories

## Impact In Echo v5, ExtractIPFromRealIPHeader checked whether the address supplied in X-Real-IP belonged to a trusted range instead of checking the address of the direct network peer. An untrusted client could therefore supply a loopback or private address and have it returned by c.RealIP() with the extractor's default trust options. Applications using this extractor for IP allowlists, IP-based rate limiting, audit logs or forwarding headers could accept a spoofed client identity. Exploitation requires that the attacker can reach Echo directly or that an intervening proxy passes through the attacker's X-Real-IP value. Applications using the default direct IP extractor are unaffected. Echo v4 is unaffected by this v5 regression. ## Affected versions and patch All v5 releases from…

Security Severity: High GHSA-9969-6676-49H5

Echo: WebSocket proxy can retain connections and handlers after client disconnect

GitHub Advisories

## Impact Echo's Proxy middleware could retain a handler, copy goroutines and network connections after a WebSocket client disconnected if the upstream kept its connection open. The raw proxy waited for both copy directions to finish without reliably closing the other connection when one direction ended. Rejected upgrade responses with HTTP keep-alive were one way to trigger this behavior. Repeated connections can accumulate resources and cause denial of service. The impact depends on the proxy route's accessibility, upstream behavior and configured connection deadlines. This is a medium-severity resource-retention issue; no confidentiality or integrity impact is claimed. ## Affected versions and patch Affected versions are v4.15.0 through v4.16.0 and v5.0.0 through v5.4.0. The regression…

Security Severity: High GHSA-H7WR-284F-5QVC

Echo: Decompress permits unbounded gzip expansion in v4

GitHub Advisories

## Impact Echo v4's opt-in Decompress middleware exposed a gzip-decoded request stream without limiting its expanded size. A small compressed request could therefore produce a very large decoded body. Handlers that read or bind that body could consume excessive memory or CPU, and repeated or concurrent requests could cause denial of service. The middleware is not enabled by default. A limit on the compressed request size alone does not bound the decompressed size. Applications that already apply an effective body limit after decompression have reduced exposure. ## Affected versions and patch Echo v4 versions through v4.16.0 are affected. Upgrade to [v4.16.1](https://github.com/labstack/echo/releases/tag/v4.16.1). The patch adds DecompressConfig.MaxDecompressedSize, defaulting to 100 MiB…

Security Severity: Critical GHSA-CXF3-9H37-7RR8

Echo: Rejected WebSocket upgrades can bypass Echo route-level access controls

GitHub Advisories

## Impact Echo's Proxy middleware selected a raw tunnel when the client requested a WebSocket upgrade, before validating whether the configured upstream accepted it. If the upstream returned an ordinary HTTP response and kept the connection alive, subsequent HTTP requests on that connection were forwarded directly to the same upstream without passing through Echo's router or route-specific middleware. This can bypass authentication or authorization enforced only at Echo's routes. Exploitation requires an accessible proxy route, an upstream that rejects the upgrade without closing the connection, and a target resource on that upstream without independent authorization. The issue does not provide arbitrary-host proxying or bypass the upstream's own authentication. ## Affected versions and p…

Security Severity: Medium GHSA-X9FF-22GV-65F4

Echo: BodyDump can discard BodyLimit overflow errors for unknown-length requests

GitHub Advisories

## Impact Echo v5's BodyDump middleware captured a bounded prefix, drained the remaining request body while ignoring read errors, and then replaced the body with the captured prefix. With an outer BodyLimit, an unknown-length request such as an HTTP/1.1 chunked request, and a BodyDump capture limit below the BodyLimit threshold, an overflow detected during that drain could be discarded. The handler could consequently process a truncated request and return success even though the original body exceeded the configured limit. This is a conditional size-policy bypass; no general authentication bypass, production data modification or denial of service is claimed. Known-length requests rejected before BodyDump runs are unaffected by this path. ## Affected versions and patch All v5 releases from…

Security Severity: High GHSA-F48P-C9V4-H7XV

Echo: BodyDump captures request and response bodies without size limits in v4

GitHub Advisories

## Impact Echo v4's opt-in BodyDump middleware read complete request bodies into memory and retained complete response bodies without a capture limit. A client able to submit large requests to a route using BodyDump could cause large allocations before the application handler ran. Large responses, including responses whose size can be influenced by a client, also caused an additional unbounded capture allocation. Repeated or concurrent requests can exhaust process memory and cause denial of service. BodyDump is not enabled by default. Deployments with effective request limits may reduce the request-side exposure; response capture requires separate consideration. ## Affected versions and patch Echo v4 versions through v4.16.0 are affected. Upgrade to [v4.16.1](https://github.com/labstack/e…

Security Severity: High CVE-2026-115419 GHSA-4V6F-7VJH-6X4M

Strands Agents SDK: Exposure of data element to wrong session in the A2A Server

GitHub Advisories

**Summary** Strands Agents SDK is an open-source SDK, available for Python (strands-agents) and TypeScript (@strands-agents/sdk), for building and running AI agents. An issue exists where, under certain circumstances, the Agent2Agent (A2A) server shares conversation history across callers with different context\_id values, allowing one caller to read and influence another caller's session. **Impact** The A2A server did not properly isolate conversation state between callers. In multi-tenant deployments, an authenticated remote user could access another caller's conversation history or influence model behavior for other callers (CWE-488: Unintended Disclosure of Data Element to Wrong Session). This affects any deployment where an A2A server is reachable by more than one user or tenant. **I…

Security Severity: High CVE-2026-115586 GHSA-CX6F-VJHG-G3CC

virtualenv: Bash activator leaves the --prompt value unescaped in PS1 when promptvars is off, so prompt expansion later executes it (regression in 21.14.9)

GitHub Advisories

## Summary The bash activator puts the caller-supplied prompt value into PS1 unescaped whenever promptvars is off at activation time, and assumes prompt expansion can never run afterwards. promptvars and posix mode are runtime shell state, not a property of the activation moment: re-enabling prompt expansion in the same shell (shopt -s promptvars, set -o posix) or starting an interactive child bash that inherits the exported PS1 makes bash expand the stored value and run the command substitution in it. An attacker who controls the prompt value gets command execution as the user who sources bin/activate. This is a regression. 21.14.8 escaped $ and the backtick unconditionally and stays inert under the same sequence. The 21.14.9 fix for GHSA-6w3r-xr62-4xcp (#3418) rewrote th…

Security Severity: High CVE-2026-115355 GHSA-H7WW-273W-6CM8

Mistune: Path Traversal and XSS in Include directive

GitHub Advisories

The Include directive in src/mistune/directives/include.py does not validate that the resolved file path stays within the source directory, allowing path traversal via ../ sequences to read arbitrary files. Additionally, error messages and included file contents are rendered without HTML escaping, leading to XSS even when escape=True. Affected functions: - Path resolution (lines 27-31) - block_error() in html.py (line 140) - render_html_include() (line 72) The Include plugin must be explicitly enabled via the plugins parameter.

Security Severity: Medium CVE-2026-115774 GHSA-2QRF-PQGX-QH9V

Twisted: Denial of Service in the Twisted IMAP4 Server via a Negative Literal Size in SEARCH

GitHub Advisories

## Summary An infinite-loop vulnerability (CWE-835) in the Twisted IMAP4 server lets an authenticated client freeze the whole process with one small command. twisted.mail.imap4.parseNestedParens reads an IMAP literal size with int() and never rejects a negative value. A negative size such as {-100} drives the parser cursor negative, and because a negative Python index wraps around the end of the string instead of raising, the scanning loop never terminates. It runs synchronously on the single-threaded reactor, so one SEARCH command holds the reactor at full CPU forever and every other connection stops being served. ## Details Meeting an inline literal, parseNestedParens reads the size between the braces and advances the cursor past the body: ```python # twisted/mail/imap4.py par…

Security Severity: High CVE-2026-115776 GHSA-53XC-49M8-P798

Twisted: Unauthenticated Remote Denial of Service in the Twisted IRC Server via an Unbounded Line Buffer

GitHub Advisories

## Summary An unbounded-buffer vulnerability (CWE-770) in the Twisted words IRC server lets any unauthenticated remote client exhaust server memory. twisted.words.protocols.irc.IRC.dataReceived appends every received byte to a per-connection buffer and only removes data at a line feed, with no maximum length. Because IRC is a plain Protocol and not a LineReceiver, one connection that streams bytes without a line feed grows the buffer without bound and drives the whole single-threaded process to out-of-memory, dropping every user at once. The twistd words server inherits the method unchanged through IRCUser, and the data is buffered before any authentication. ## Details IRC.dataReceived keeps everything up to the last line feed in self.buffer: ```python # twisted/words/prot…

Security Severity: High CVE-2026-115778 GHSA-CWM5-JH59-MWXR

Twisted: Unauthenticated Remote Denial of Service in the Twisted conch Telnet Transport via an Unbounded Subnegotiation Buffer

GitHub Advisories

## Summary An allocation-without-limits vulnerability (CWE-770) in the Twisted conch telnet transport lets any unauthenticated remote peer exhaust server memory over a single connection. When the peer opens a telnet subnegotiation with IAC SB and then streams bytes without ever sending the IAC SE terminator, every byte is appended to a per-connection buffer that has no maximum length. The buffer persists across reads and is released only on the terminator the attacker withholds, so it grows without bound until the process is killed. ## Details The option-negotiation state machine in Telnet.dataReceived enters the subnegotiation state on IAC SB and sets an empty command list. In that state every non-IAC byte is appended to the list with no length check: ```python # src/twisted/…

Security Severity: High CVE-2026-115775 GHSA-3476-C5C2-FR73

Twisted: Unauthenticated Remote Denial of Service in the Twisted words domish XML Element Stream via an Unbounded Element Tree

GitHub Advisories

## Summary An allocation-without-limits vulnerability in the Twisted XML element stream lets any unauthenticated remote peer exhaust server memory over a single stream. When the peer opens a container element and streams child elements without ever closing the container, every element is materialised into an in-memory tree with no limit on depth or child count. An element is released only when its end tag arrives, so a container the attacker never closes retains everything beneath it until the process is killed. ## Details In ExpatElementStream._onStartElement, each start tag appends a new element to the current element's children and descends into it, with no depth or child-count check: ```python # src/twisted/words/xish/domish.py (ExpatElementStream._onStartElement) if self.documentSt…

Security Severity: Medium CVE-2026-115877 GHSA-Q7QQ-6MHP-9RC4

Twisted: HTTP Request Smuggling in twisted.web via a Bare CR or LF in a Header Value

GitHub Advisories

## Summary An incomplete header-value validation (CWE-444) in the Twisted HTTP server lets a bare carriage return or line feed in a header value hide a following header from the parser. twisted.web.http.HTTPChannel.headerReceived rejects a NUL byte in a header value but not a bare CR or LF, even though RFC 9110 section 5.5 requires a recipient to reject all three. Because the channel splits requests only on CRLF, a value carrying a bare LF and a second header arrives as one line, so the second header is folded into the value and the request is framed with no body. A front-end that treats the bare LF as a line terminator frames the request differently, and the disagreement lets an attacker smuggle a request past it. This is an incomplete fix of the earlier Twisted request-smuggling advis…

Security Severity: Medium CVE-2026-114050 GHSA-P92P-RXJ5-7P2X

vLLM: Forged multimodal UUID + P0/P1 processor-cache eviction drift: unauthenticated remote crash of the whole vLLM engine

GitHub Advisories

## Summary Multimodal content parts (image_url, video_url, input_audio, ...) accept a user-supplied uuid field that vLLM uses **verbatim as the item's cache identity** (mm_hash). The two frontend/engine processor caches (P0 "sender" cache in the API process, P1 "receiver" cache in the EngineCore process) are independent LRU caches whose evictions are **not synchronized**, and the P1 hit path performs **zero consistency validation** — it silently substitutes the cached item's tensor data for whatever the current request actually contains. A single unauthenticated client can exploit this to kill the entire engine, deterministically, with default server flags: 1. **Seed**: send a small image with uuid="U". Both caches now map U to an item with **N_A** visual tokens (e.g. 4). 2.…

Security Severity: Low CVE-2026-114061 GHSA-27MW-82G8-PHJJ

SvelteKit : XSS via untrusted cache-control header in prerendered page

GitHub Advisories

### Impact Applications that prerender pages and use setHeaders to set a cache-control header from an untrusted source are vulnerable to cross-site scripting (XSS). SvelteKit inserts the header value into a `` tag without escaping it. An attacker who can influence this value at prerender time can break out of the content attribute and inject HTML or JavaScript into the generated page. The injected code can then execute when users visit the page. ### Patches The fix escapes the header value before inserting it into the generated HTML. Upgrade to @sveltejs/kit version 3.0.0 or later. ### Workarounds Avoid forwarding untrusted cache-control header values with setHeaders on prerendered pages. Use a fixed, trusted cache policy instead.

Security

BlackX UEFI Bootkit Bypasses Secure Boot on Patched Windows Systems Missing Revocations

The Hacker News

Diplomatic organizations in Central Asia have been targeted by a sophisticated new Unified Extensible Firmware Interface (UEFI) bootkit called BlackX. The activity, which singled out diplomatic entities in Tajikistan, Uzbekistan, and Turkmenistan in early 2026, is suspected to be orchestrated by a China-linked state-sponsored hacking group known as APT41, Kaspersky said in a technical report

Security Severity: High CVE-2026-115478 GHSA-R3G7-R4HR-M258

obsidian-tc: Memory-lifecycle tools overwrite unowned notes or partially commit lifecycle changes

GitHub Advisories

### Summary create_entity, link_entities, rename_entity, unlink_entities and delete_entity regenerate a memory note's body from SQLite at the computed memory//.md path. When a note already existed at that path and was not owned by the entity being written (a hand-authored note, or an orphan left by a different entity whose name sanitized to the same path), its entire body was overwritten on the next write naming that (type, name), keeping only its frontmatter. Separately, several of these tools inserted or removed their SQLite row before the fallible filesystem step, so a refused note write could leave a relation gone, a retired status committed, or the wrong entity deleted. ### Details - create_entity and link_entities inserted the SQL row or relation before materializa…

Security Severity: Medium CVE-2026-62204 GHSA-RPX2-P6HP-X5GJ

SiYuan: Missing consistency check between packageName and repoURL/repoHash in bazaar package install allows overwriting an existing, trusted plugin

GitHub Advisories

## Summary installBazaarPlugin (and the equivalent endpoints for widgets/icons/templates/themes) accept packageName, repoURL, and repoHash as independent request fields with no validation that they refer to the same package. packageName alone determines the install destination; repoURL/repoHash alone determine what content gets downloaded and written there. A request can name an already-installed, already-enabled plugin as packageName while pointing repoURL/ repoHash at different, attacker-influenced content, silently overwriting the existing plugin's files. ## Affected code kernel/api/bazaar.go: ```go util.BindJsonArg("packageName", &packageName, true, true) util.BindJsonArg("repoURL", &repoURL, true, true) util.BindJsonArg("repoHash", &repoHash, true, true) err :=…

Security Severity: High CVE-2026-73054 GHSA-C8W8-3PQP-WR83

SiYuan: A parser differential between the WebSocket keepalive exemption and the session quarantine allows unauthenticated access to the broadcast event stream

GitHub Advisories

### Summary Two checks on the same WebSocket request URI parse it differently. The authentication exemption for keepalive sessions matches raw substrings, while the quarantine introduced to contain those sessions reads a parsed query parameter. Because Go's url.Values.Get returns only the first value for a repeated key, a single URI can satisfy the exemption and still resolve to a non-auth session identity. The result is that an unauthenticated remote caller connects to the kernel WebSocket with a valid access auth code configured, is placed in the general broadcast pool rather than the quarantined pool, and receives the live event stream. ### Details **The exemption matches substrings.** kernel/server/serve.go:1222 on the development branch, :1074 on master: ```go authOk = strings.…

Security Severity: Medium CVE-2026-73630 GHSA-4PJG-X8QJ-33J5

SiYuan: authFilePublishAccess distinguishes hidden and forbidden documents from public and nonexistent ones, and issues a publish-auth cookie for documents it reports as forbidden

GitHub Advisories

### Summary /api/filetree/authFilePublishAccess is registered with CheckAuth only and is reachable anonymously. It never sets a failure code, so its outcome is signalled entirely by the response message and by whether a Set-Cookie header is present. Those two signals differ across access tiers, which lets an anonymous caller determine, for any candidate document identifier, whether that document is public or nonexistent, password-protected, or exists at the hidden or forbidden tier. Separately, hidden and forbidden entries carry an empty password. Submitting password:"" therefore satisfies the equality check for them, and the server responds by issuing Set-Cookie: publish-auth- for a document whose own tier is forbidden. ### Details **Route,** identical on both refs: ```go ginSe…

Security Severity: Medium CVE-2026-73049 GHSA-P4QW-VX5P-G984

SiYuan: The publish filter for database backlinks consults the forbidden list instead of the visibility list, disclosing hidden-tier documents to anonymous readers

GitHub Advisories

### Summary /api/av/getAttributeViewBacklinks filters its results for reader roles through FilterAttributeViewBacklinksByPublishAccess. That function resolves its ignore list with GetDisablePublishAccess, which covers only the forbidden tier. Documents at the hidden tier are absent from that list, so they pass the check. The result is that an anonymous reader supplying a publicly visible database row receives the database name, row title and document path of rows in hidden documents that reference it. The rest of the function is correct. It takes *gin.Context and calls GetPathPasswordByPublishAccess and CheckPublishAuthCookie at all four decision points, so the password-protected and private tiers are properly enforced. The defect is the choice of list, on one line. ### Detail…

Security Severity: Medium GHSA-XP3Q-R38W-VGQM

SiYuan: The publish filter for local storage returns the administrator's entire storage map with only three keys sanitized

GitHub Advisories

### Relationship to GHSA-hgfg-j9pg-43xw That advisory concerned the administrator's live UI layout, and commit 63c7d5474 resolved it by removing FilterUILayoutByPublishIgnore and nulling Conf.UILayout for readers. That fix is correct and complete for the live layout. This report concerns a different endpoint, a different filter function and a different storage backing. /api/storage/getLocalStorage reads data/storage/local.json rather than Conf.UILayout, and its filter FilterLocalStorageByPublishAccess was not touched by that commit. The consequence is that the same serialized tab objects the earlier fix withheld continue to be served, from the closed-tab history rather than the live layout. ### Summary Three routes, /api/storage/getLocalStorage, getLocalStorageVal and `g…

Security Severity: Critical CVE-2026-77363 GHSA-PQH8-4PJ7-32XX

obsidian-tc HTTP transport lacks Origin/DNS-rebinding protection, enabling drive-by vault access on loopback

GitHub Advisories

### Impact The Streamable HTTP transport was constructed without enableDnsRebindingProtection/allowedHosts/allowedOrigins and performed no Origin-header validation. With the documented auth.mode: "none" loopback default, a **drive-by web page could POST http://127.0.0.1/mcp** and receive caller http-local with scopes ["*"] — full vault read/write — via DNS rebinding / a forged Origin. ### Patches Fixed in **1.3.1**. Upgrade to >= 1.3.1. The transport now enables DNS-rebinding protection and allowed hosts/origins and returns HTTP 403 on an invalid Origin (per MCP 2025-11-25). ### Workarounds Do not expose the HTTP transport with auth.mode: "none"; require JWT auth, or bind to a non-loopback interface behind a proxy that validates Origin.

Security Severity: Medium CVE-2026-77362 GHSA-43R2-C7G8-PRC8

obsidian-tc Bridge tools leak denied-note data via unfiltered sibling fields

GitHub Advisories

### Impact Bridge tool results filtered only the items array against the read ACL and passed sibling fields through unfiltered: tasks_filter emitted groups whose counts reflected denied notes, makemd_query returned ...result siblings, and list_templates enumerated Templater template paths and parsed user-function bodies with no read-whitelist gate. A caller could infer or read data from notes outside its read ACL. ### Patches Fixed in **1.3.1**. Upgrade to >= 1.3.1. All path-attributable fields are now scrubbed or fail-closed, and list_templates is gated on the read whitelist. ### Workarounds Disable the affected bridge tools (tasks_filter, makemd_query, list_templates) via tool visibility.

Hosting & Network

Origin Range Requests: Serving large files without range-request tuning

Cloudflare

Naive byte-range caching can waste gigabytes of origin bandwidth on small requests. We rebuilt our cache architecture in Pingora to coordinate partial fetches automatically, cutting R2 p99 latency in half.

Hosting & Network

Bringing post-quantum cryptography to geographically fenced key management

Cloudflare

Cloudflare's new post-quantum GeoKey Manager protects geographically fenced decryption keys from harvest now, decrypt later attacks. Learn how we redesigned our cryptography stack to support strict data sovereignty in a post-quantum world.

Security

Ruby Fixes Three Regex Engine Bugs Responsible for Four Critical GitLab RCE Flaws

The Hacker News

Ruby has released versions 4.0.9, 3.4.12, and 3.3.13 to fix three bugs in Onigmo, the regular expression engine built into the language. The bugs lie behind four critical security flaws that GitLab patched over the past month. GitLab found that a specially crafted pattern could corrupt memory while Ruby compiles it, potentially leading to code execution on its own servers. Ruby says any

Security

Exposed Infrastructure Reveals How Ransomware Affiliates Used AI Agents to Execute Intrusions

The Hacker News

Cybersecurity researchers have discovered an artificial intelligence (AI)-driven intrusion ecosystem run by affiliates of the INC and The Gentlemen ransomware groups. Central to the operation is an "Autonomous Red Team Kill Chain Framework" referred to as Phantom. The threat actor is assessed to be Russian-speaking and functions both as an intrusion and data-extortion operator, as well as an

Security Severity: High CVE-2026-115477 GHSA-737X-CWFR-5VVC

obsidian-tc: Declined human-in-the-loop confirmations can permit destructive calls over HTTP

GitHub Advisories

### Summary On a Streamable HTTP deployment with auth.jwtSecret configured, serving a 2026-07-28-era client that declared elicitation.form support, a call to a dispatch-gated tool (destructive: true, or a scope with an HITL floor) that was offered an inputRequired confirmation could still complete after the human declined, cancelled, or the elicitation response was omitted or malformed, provided the client echoed the validly bound requestState on resubmission. The server trusted an authentic, call-bound state as proof of approval; the state is minted before the elicitation leg is asked, so it proves only that the resubmission belongs to the same call. ### Details Reproduced directly: a destructive: true tool call, offered inputRequired, answered with {action: "decline"} on…

Security Severity: Critical CVE-2026-77366 GHSA-84C9-QQPQ-2PQ5

obsidian-tc tokens can access arbitrary configured vaults

GitHub Advisories

### Impact Tool dispatch did not check the caller-supplied input.vault against the caller's bound vault (ctx.vaultId); the folder ACL was a single global instance and the JWT carried no vault claim. As a result, **any valid token could read, write, or delete any configured vault** by passing input.vault, defeating multi-tenant isolation across ~90 tool sites. (resources/read was the only surface that already guarded this.) ### Patches Fixed in **1.3.1** (the fix was developed on the v1.3.0 tag, which never published to npm; 1.3.1 is the first published release with the fix). Upgrade to >= 1.3.1. ### Workarounds Run a single vault per server process, or isolate each tenant on a separate process/credential. ### Fix A central input.vault === ctx.vaultId guard was added in dispa…

Security Severity: Medium CVE-2026-77364 GHSA-CVP8-VVGF-69Q4

obsidian-tc: Default folder ACL is fail-open; .obsidian plugin secrets are readable by default

GitHub Advisories

### Impact With a default configuration, an undefined readPaths/writePaths meant allow-all, the strictReadDefault flag was inert, and the .obsidian/.git/.trash control directories were denied only during enumeration — not on the direct request path. A caller could read .obsidian/plugins/*/data.json, exfiltrating **plugin API keys and Obsidian Sync passwords** (live-reproduced), as well as any other in-vault file by path. ### Patches Fixed in **1.3.1**. Upgrade to >= 1.3.1. The default now denies .obsidian/.git/.trash on read/write/delete and honors strictReadDefault on the request path. ### Workarounds Set an explicit readPaths/writePaths whitelist that excludes the control directories.

Security Severity: Medium CVE-2026-77361 GHSA-C5XX-H28H-F682

obsidian-tc : Symlink read-ACL scope bypass via lexical path checks

GitHub Advisories

### Impact ACL checks ran on the lexical vault-relative path while containment used the realpath. An in-vault symlink placed under an allowed glob, whose realpath resolved into a denied folder, passed the read ACL — an intra-vault read-ACL-scope bypass. It requires an out-of-band-planted symlink (no MCP tool creates one) and is not a vault-root escape. ### Patches Fixed in **1.3.1**. Upgrade to >= 1.3.1. ACL enforcement now derives the realpath vault-relative path and feeds a single unified predicate at every site. ### Workarounds Do not permit untrusted symlinks inside the vault.

Security

Hackers Breach Enterprise Firewalls and VPNs, Exposing Over 70,000 Credentials

The Hacker News

Cybersecurity researchers have disclosed details of a large-scale campaign that has targeted exposed network edge devices such as Fortinet FortiGate and Palo Alto Networks GlobalProtect firewalls. "Artifacts from this investigation also indicate that operators in this campaign have obtained access to numerous organizations worldwide, and have attempted to further compromise some victims,

Security

PHP Warns of Another Unpatched RCE Risk Two Days After Emergency PHP2Shell Patches

The Hacker News

PHP has warned of another way an attacker could run code on a web server, two days after it shipped emergency fixes for the critical PHP2Shell flaws. The new issue, assigned CVE-2026-115560, affects only web applications configured in an unusual way, and PHP considers it an unlikely risk.The project is not issuing an emergency fix for it. Instead, it recommends turning off a feature called

Security

Russia-Linked Hackers Used New Mesh Network Backdoor in Destructive Ukraine Attack

The Hacker News

The Russian state-sponsored hacking group Sandworm teamed up with another threat actor to carry out a destructive wiping attack targeting a Ukrainian logistics company last year. According to ESET, the attack involved UAC-0099 (aka Earth Sirrush) obtaining initial access to the target on July 16, 2025, via a spear-phishing email bearing a malware-laced attachment that led to the deployment of

Security

Critical Flaw in Python’s Popular Pillow Image Library Allows Code Execution via a Crafted Image

The Hacker News

Pillow, the most widely used image library for Python, can be made to run operating system commands on a server by specifying the name of a file it is told to open. The flaw, CVE-2026-112900, is in the way Pillow handles EPS images, which it opens by passing the file's name to Ghostscript, a separate program it runs to turn the image into pixels, without checking the name first.

Security

Researchers Demonstrate Node2Shell RCE Exploit on Node.js Build Using Crafted Brotli Data

The Hacker News

Malicious Brotli data can make an application on an official build of Node.js run attacker-supplied code, security researchers at Imperva have demonstrated. Their "Node2Shell" proof of concept ran code on the official Node.js 24.22.0 image for Linux arm64, with no debugger or custom build, by feeding crafted data to the bundled Brotli decoder (CVE-2026-111497). Node.js disclosed the flaw

Security

Critical x402 SDK Flaw Could Let Malicious APIs Drain AI Agents’ Token Balances

The Hacker News

AI agents paying for API calls with the x402 SDKs could sign a payment for their full balance of a supported token if a malicious API asked for it, security firm V12 said on October 22. The cause was the SDKs' default client, which set no spending limit until releases on August 18 added one. The risk was limited to agents who automatically signed payments and whose apps set

Security

PHP2Shell Exploit Attempts Hit Millions as Attackers Try to Deploy Mirai Malware

The Hacker News

Threat actors have been observed unsuccessfully attempting to exploit the newly disclosed PHP2Shell vulnerabilities to rope infected systems into a Mirai botnet variant called Potassium, as it emerges that weaponizing the flaws may be harder than previously thought. The attacks aim to exploit CVE-2026-109618 and CVE-2026-109619 (CVSS scores: 9.2), which can result in unauthenticated remote

Security Known exploited CVE-2026-114625

Arista VeloCloud Orchestrator: Arista VeloCloud Orchestrator SQL Injection Vulnerability

CISA KEV

Arista VeloCloud Orchestrator on-prem contains a SQL injection vulnerability that may allow a remote attacker to access privileged internal functionality and impact the VCO host. Successful exploitation may compromise the confidentiality, integrity, and availability of the orchestrator and data managed by the orchestrator.

Required action: Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.

CISA due date: 2026-10-26

Security Known exploited CVE-2026-110447

Collabora Collabora Online – Built-in CODE Server: Collabora Online – Built-in CODE Server OS Command Injection Vulnerability

CISA KEV

Collabora Collabora Online – Built-in CODE Server when used within the NextCloud platform contains an OS command injection vulnerability that allows for remote code execution when the CODE server isn't running.

Required action: Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.

CISA due date: 2026-10-26

Security Severity: High GHSA-8CQV-VVQ2-6P8C

Duplicate Advisory: Mistune: Path Traversal and XSS in Include directive

GitHub Advisories

## Duplicate Advisory This advisory has been withdrawn because it is a duplicate of GHSA-h7ww-273w-6cm8. This link is maintained to preserve external references. ## Original Description Mistune before 3.3.0 contains a path traversal vulnerability in the Include directive that allows attackers to read arbitrary files by supplying ../ sequences in include paths. Attackers can also inject HTML through unescaped error messages and included file contents to perform cross-site scripting even when escape=True is set.

Security

The AI Agent Nobody Owns: Watch Expert Webinar On Your Newest Insider Threat

The Hacker News

Right now, there is probably an AI agent running on a laptop somewhere in your network. It stores API keys and database passwords, can access your internal systems, and works without anyone watching. Nobody reviewed its access. Nobody owns it. If an employee had that much reach with that little oversight, you would call it an insider risk. So why do we still call the agent a productivity tool?

Security

Arista Warns of Critical VeloCloud SQL Injection Zero-Day Exploited in Attacks

The Hacker News

Attackers are exploiting a zero-day SQL injection flaw in Arista's VeloCloud Orchestrator (VCO), the central management system for VeloCloud SD-WAN networks, the company said in an advisory on October 22. The flaw lets anyone who can log in to the orchestrator, even with a read-only customer account, gain operator privileges, the top level of control over it. For

Security

eMudhra to Exit Global SSL/TLS Business After 8 Intermediate CA Keys Found Easily Guessable

The Hacker News

eMudhra, an Indian certificate authority (CA), will withdraw from its global SSL/TLS certificate business, its board decided on Thursday. The decision came five days after a researcher reported recovering the private keys of eight of its intermediate CA certificates. eMudhra said it will replace affected customers' certificates with free ones from partners, though its

Security

ThreatsDay: AI Secrets Leak, PingCAP Source Theft, Signal Hang-Up Flaw, Laravel Auth Bypass + 21 More

The Hacker News

This week has already been rough for cybersecurity. Critical PHP and GitLab RCE flaws, serious Linux security bugs, compromised eMudhra certificates, a Node.js RCE flaw, a hacked LiteLLM release, and hundreds of hijacked Tor relays. That's a lot to deal with in just a few days. And the week isn't even over yet. But those big headlines are only half the story. Stolen passwords, exposed

Security Severity: Medium CVE-2026-113721 GHSA-558C-9HV2-4PRJ

virtualenv: Generated files can follow existing destination links

GitHub Advisories

## Summary Generated activation files and pyvenv.cfg can follow existing links and write outside the requested environment. The template writer tests exists() before unlinking, which misses dangling symlinks; the configuration writer opens the existing path directly. Anthropic's OSS Scanner reported this as ANT-2026-XBEOCBS1 in virtualenv-20261015-005, received on 15 October 2026. ## Affected area Final file entries written during environment creation and seeding. ## Attacker-controlled input Another account must be able to prepare file links in the destination before creation. The invoking user must have write permission at the linked target. The destination parent must remain controlled during creation; concurrent parent-directory replacement is a separate concern. ## Affected code…

Security

Two CVSS 9.0 Linux KSMBD RCE Flaws Disclosed on Public Mailing Lists Before Kernel Fixes

The Hacker News

Linux servers running KSMBD, the kernel's built-in SMB server, are exposed to two publicly reported remote code execution flaws rated 9.0 by Trend Micro's Zero Day Initiative, with no fix yet in the mainline kernel. One of them, ZDI-CAN-33774, can be triggered before any network authentication. The other, ZDI-CAN-33549, requires the SMB Direct transport and an RDMA-capable network

Security Severity: High GHSA-78G4-XQWV-Q3G8

Pillow: Bundled libopenjp2 2.5.4 in all wheels since 11.1.0 carries OSV-2025-219 heap-buffer-overflow write reachable from Image.open().load()

GitHub Advisories

### Summary Every Pillow wheel from 11.1.0 onward bundles a libopenjp2 containing a heap-buffer-overflow **write** that is fixed upstream on master but has never appeared in an OpenJPEG release. See https://osv.dev/vulnerability/OSV-2025-219 Because the wheel bundles its own copy, a patched host OS does not help. It is reachable from Image.open(fp); im.load() with default settings. I am reporting it here rather than only upstream because Pillow is where the vulnerable binary actually reaches users. Note the inversion that makes this easy to miss: **OpenJPEG 2.5.2 and earlier are safe.** The bug was introduced in 954c6e3c (2024-06-25), so keeping the dependency current is what creates the exposure. ### Details ## Affected wheels From .github/dependencies.json (openjpeg) at each tag…

Security Severity: Medium CVE-2026-114132 GHSA-VJH5-4X84-XRQP

Nuxt: Server-side route rules (`redirect`, `headers`, `proxy`, `ssr`) are skipped for case-variant paths when routing is case-insensitive

GitHub Advisories

## Impact With the default router.options.sensitive: false, Nuxt's page router resolves routes case-insensitively, so /Admin renders the same page as /admin. On the server, however, route rules were resolved with Nitro's route-rule matcher, which matches keys case-sensitively. A request whose path differs from a rule key only in letter case therefore rendered the page with none of that rule applied. Earlier fixes ([GHSA-mm7m-92g8-7m47](https://github.com/nuxt/nuxt/security/advisories/GHSA-mm7m-92g8-7m47), [GHSA-hxvh-4h3w-prp9](https://github.com/nuxt/nuxt/security/advisories/GHSA-hxvh-4h3w-prp9)) case-folded the route rules that the Nuxt app itself reads, such as appMiddleware. This advisory covers the rules applied on the server: - redirect: a rule used to send visitors away fr…

Security Severity: Medium CVE-2026-114133 GHSA-XFQ5-W38Q-PC2X

Nuxt server islands render `useHeadSafe` input without sanitisation

GitHub Advisories

## Impact useHeadSafe restricts head input to an allowlist of safe tags and attributes. For example, bodyAttrs is limited to class and style, event handler attributes are removed, and `` tags are only kept for JSON types. When useHeadSafe is called inside a server island (a .server.vue component or page, or a component rendered with ``), the island renderer serialises the raw input of every head entry into the island response without the option that marks it as safe input. `` then pushes that input into the page's head as a regular entry, both during server rendering and when hydrating or refetching on the client. As a result, input that useHeadSafe would normally strip (such as bodyAttrs.onload or executable `` content) is rendered into the page. If an application passes…

Security Severity: Low CVE-2026-114130 GHSA-JJM6-P2M9-9W4X

Nuxt: Incomplete fix for GHSA-934w-87qh-qr26: a `javascript:` URL prefixed with an ASCII control character executes from `` when `pages` is disabled

GitHub Advisories

## Impact An application that renders `` with a value it does not control can be made to render an anchor whose href executes script in the application's origin when clicked. This is an incomplete fix for [GHSA-934w-87qh-qr26](https://github.com/nuxt/nuxt/security/advisories/GHSA-934w-87qh-qr26) (CVE-2026-53722). It only affects applications running without a pages/ directory, where pages resolves to false and Nuxt registers its own router in place of vue-router. Applications using vue-router are not affected. Prefixing javascript: with an ASCII C0 control character, for example %01, meant the value was not recognised as having a protocol. It was classified as an internal route and so never reached the protocol check added in GHSA-934w-87qh-qr26, and the router used for `pages…

Security Severity: Medium CVE-2026-114131 GHSA-6GQ8-JGMH-3FFP

Nuxt: Route rules are matched against the raw request path, so a percent-encoded segment can bypass `appMiddleware` on dynamic and catch-all routes

GitHub Advisories

### Summary Nuxt compared routeRules keys against the raw request path, without decoding percent-encoding, while the router decodes parameters when it resolves a route. A request whose path is percent-encoded can therefore resolve to a page while failing to match the route rule meant to protect it, so the rule's appMiddleware never runs, including during server rendering. ### Impact For a page served through a dynamic or catch-all route, an attacker can percent-encode a character in the path to skip the rule: ``ts export default defineNuxtConfig({ routeRules: { '/users/admin': { appMiddleware: 'auth' }, }, }) `` Requesting /users/%61dmin still renders app/pages/users/[id].vue with id decoded to admin, but the rule keyed /users/admin does not match, so auth does not run a…

Security Severity: Medium CVE-2026-113789 GHSA-6VVC-X485-93V7

pypdf: Possible long runtimes/large memory usage when retrieving form fields

GitHub Advisories

### Impact An attacker who uses this vulnerability can craft a PDF which leads to large memory usage and/or long runtimes. This requires retrieving the form fields of a document. ### Patches This has been fixed in [pypdf==6.21.0](https://github.com/py-pdf/pypdf/releases/tag/6.21.0). ### Workarounds If you cannot upgrade yet, consider applying the changes from PR [#4219](https://github.com/py-pdf/pypdf/pull/4219).

Security Severity: Medium CVE-2026-113790 GHSA-F54X-CMQ8-QG57

pypdf: Possible large memory usage when parsing arrays and dictionaries

GitHub Advisories

### Impact An attacker who uses this vulnerability can craft a PDF which leads to large memory usage. This requires parsing arrays and/or dictionaries with lots of elements. ### Patches This has been fixed in [pypdf==6.21.0](https://github.com/py-pdf/pypdf/releases/tag/6.21.0). ### Workarounds If you cannot upgrade yet, consider applying the changes from PR [#4218](https://github.com/py-pdf/pypdf/pull/4218).

Security Severity: Medium CVE-2026-113791 GHSA-CGF9-327M-V77C

pypdf: Possible large memory usage when parsing content streams

GitHub Advisories

### Impact An attacker who uses this vulnerability can craft a PDF which leads to large memory usage. This requires parsing content streams with many small operations. ### Patches This has been fixed in [pypdf==6.21.0](https://github.com/py-pdf/pypdf/releases/tag/6.21.0). ### Workarounds If you cannot upgrade yet, consider applying the changes from PR [#4218](https://github.com/py-pdf/pypdf/pull/4218).

Security Severity: Medium CVE-2026-113796 GHSA-2P8C-GR87-2676

Electron: SameSite cookie restrictions are not applied to windows opened from links

GitHub Advisories

### Impact Pages opened into a new window from a link were loaded as if the app itself had navigated there rather than the page that contained the link, so the request was treated as same-site: SameSite=Strict cookies were sent and Sec-Fetch-Site did not identify the initiating page. Content shown in the app could use this to make a credentialed top-level request to another site that relies on SameSite cookies as a CSRF defence. Apps are only affected if they load untrusted content and allow it to open new windows. Apps that deny new windows from untrusted content with setWindowOpenHandler are not affected. ### Workarounds Return { action: 'deny' } from setWindowOpenHandler for windows opened by untrusted content. ### Fixed Versions * 45.0.0-alpha.6 * 44.3.0 * 43.7.0 * `42…

Security Severity: Medium CVE-2026-113798 GHSA-X562-297C-G43G

Electron: Pointer lock permission requests can be attributed to the wrong frame

GitHub Advisories

### Impact For pointerLock permission requests made from some cross-origin iframes, session.setPermissionRequestHandler() was given the top-level frame's requestingUrl and isMainFrame instead of the requesting frame's. Apps that grant pointer lock based on the requesting origin could grant it to embedded content under the top-level page's identity. Apps are only affected if they embed untrusted content in iframes and decide pointerLock requests by origin in setPermissionRequestHandler. Apps that do not embed untrusted content, or that deny pointerLock for it, are not affected. ### Workarounds Deny the pointerLock permission for web contents that embed untrusted frames. ### Fixed Versions * 45.0.0-alpha.13 * 44.5.0 * 43.7.6 * 42.11.9 ### For more information If you…

Security Severity: Low CVE-2026-113797 GHSA-98MX-CJP9-GCHM

Electron: Extension tabs.query returns tab URLs and titles without the tabs permission

GitHub Advisories

### Impact chrome.tabs.query() returned each tab's url and title to extensions that held neither the tabs permission nor matching host permissions, so any loaded extension could read the URL and title of every webContents in its session. Apps are only affected if they load extensions (session.extensions.loadExtension) that they do not fully trust. Apps that load no extensions, or only trusted ones, are not affected. ### Workarounds Do not load untrusted or unvalidated extensions. In general you should only load trusted extensions. ### Fixed Versions * 45.0.0-alpha.4 * 44.1.1 * 43.5.1 * 42.11.1 ### For more information If you have any questions or comments about this advisory, email us at [[email protected]](mailto:[email protected])

Security Severity: Low CVE-2026-114122 GHSA-3QXV-5XGR-Q7W9

Electron: Frame subscription trusts GPU-supplied frame geometry

GitHub Advisories

### Impact Frame data received from the GPU process for webContents.beginFrameSubscription was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing the captured frame images, disclosing memory or crashing the app. Apps are only affected if they use webContents.beginFrameSubscription and an attacker has separately gained code execution in the GPU process. Apps that do not subscribe to captured frames are not affected. ### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ### Fixed Versions * 45.0.0-alpha.9 * 44.4.3 * 43.7.3 * 42.11.6 ### For more information If you have any questions or comments about this advisory, email us at [security@electro…

Security Severity: Low CVE-2026-114124 GHSA-H3V5-H239-PG29

Electron: Off-screen rendering on macOS trusts GPU-supplied frame geometry

GitHub Advisories

### Impact In offscreen rendering mode on macOS, frame data received from the GPU process was not fully validated by the main process. A compromised GPU process could cause the main process to read out-of-bounds memory while producing paint event images, disclosing memory or crashing the app. GHSA-pfmc-3mgc-p6fp covers the same issue on the other capture paths. Apps are only affected if they use offscreen rendering (webPreferences.offscreen) on macOS and an attacker has separately gained code execution in the GPU process. Apps that do not use offscreen rendering are not affected. ### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ### Fixed Versions * 45.0.0-alpha.9 * 44.4.3 * 43.7.3 * 42.11.6 ### For more information If you hav…

Security Severity: Medium CVE-2026-114121 GHSA-997Q-GVVC-JWMX

Electron: openExternal permission requests can be attributed to the wrong origin

GitHub Advisories

### Impact Requests to open external protocol URLs could be attributed to a document other than the one that asked for them, so the requestingUrl passed to session.setPermissionRequestHandler was a trusted origin for a launch untrusted content had requested. An origin-based handler could therefore let untrusted content launch an OS-registered external application. Apps are only affected if they grant openExternal based on the requesting origin and let untrusted content open or navigate windows. Apps whose permission handler denies openExternal for untrusted content are not affected. ### Workarounds Deny the openExternal permission for untrusted content, or deny the windows it opens with setWindowOpenHandler. ### Fixed Versions * 45.0.0-alpha.5 * 44.3.0 * 43.7.0 * `42.11.…

Security Severity: Critical GHSA-673Q-MJM6-R5XR

Next.js: Unauthenticated Remote Code Execution in `use cache` functions returning typed arrays

GitHub Advisories

## Impact A vulnerability in applications using App router with Cache Component can lead to remote code execution. The application needs to have a use cache function that returns multiple typed arrays. ## Workaround There is no known workaround for affected applications with such use cache functions. You should upgrade immediately even if your application does not have similar functions.

Security Severity: High CVE-2026-114145 GHSA-83VG-56QC-22M7

GitPython validates a submodule's ".git" path only after cloning into it (RCE)

GitHub Advisories

### Summary create_submodule(name, path, url) clones a submodule into the repo's own .git directory before it rejects the path. A path of ".git/hooks" is accepted by the pre-clone check, so the submodule is cloned straight into the live hooks directory, and a file named post-checkout in the submodule becomes an executable .git/hooks/post-checkout. On 3.2.0+ the later index check does raise ValueError, but only after the clone already wrote to disk, and it does not remove the planted hook; on 3.1.x there is no such check and the call succeeds silently. Either way the hook runs on the next git operation (e.g. checkout), giving code execution. ### Details The checkout path is validated too late, after the clone has already mutated disk. This breaks the "validate before mutation"…

Security

Meta Ordered to Pay $25 Billion After Court Finds 43 Million Privacy Violations

The Hacker News

Social media giant Meta was ordered to pay 25 billion in penalties by a New Mexico court on Wednesday as part of a data privacy lawsuit that sprang from the company's Cambridge Analytica data scandal, which came to light in 2018. According to multiple reports from the Associated Press, the New York Times, Reuters, and the Wall Street Journal, state District Court Judge Francis J. Mathew called

Security

INTERPOL Arrests 1,462 Suspects, Disrupts 10,909 Cybercrime Networks in Global Crackdown

The Hacker News

INTERPOL on Thursday announced that a coordinated law enforcement action has disrupted 10,909 malicious networks and recovered more than $105 million in illicit funds. In tandem, the effort saw law enforcement agencies from 21 countries arrest 1,462 suspects. Codenamed Operation Serengeti III, the cybercrime crackdown took place between June 29 and August 31, 2026. "Authorities identified

Hosting & Network

Localizing compliance at scale: achieving South Korea’s ISMS certification

Cloudflare

Cloudflare has achieved South Korea's ISMS certification following an audit across 80 controls. Learn how we localized user consent flows, adapted social sign-up paths at the edge, and validated our global security program.

Security

Railway Says Intruder May Have Accessed Customer Secrets, Urges Credential Rotation

The Hacker News

Platform-as-a-Service (PaaS) provider Railway on Wednesday disclosed "anomalous activity" related to systems that store customer environment variables. Upon further investigation, the company found that an unauthorized third party may have gained access to encrypted environment variables, and, in some cases, obtained the decrypted contents. The impact, it said, is limited to a "subset of users,