<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>The Security Diff</title><link>https://tsd.report</link><description>Security engineering, without the noise.</description><item><title>GeoNode vector-upload layer names can trigger server-side command injection</title><link>https://github.com/GeoNode/geonode/security/advisories/GHSA-9fpx-fr6j-2vh6</link><guid>https://tsd.report/article/geonode-vector-layer-command-injection-2026</guid><description>GeoNode’s maintainer reports command execution through crafted vector-upload layer names. Its advisory lists versions through 5.0.1 as affected. GitHub’s reviewed database lists 5.1.0 as fixed, while the maintainer’s patched-version field remains unset.</description></item><item><title>kaniko lookalike registry hosts can receive a build’s Azure access token</title><link>https://github.com/chainguard-forks/kaniko/security/advisories/GHSA-5q7h-w9jf-cx97</link><guid>https://tsd.report/article/kaniko-azure-registry-token-leak-2026</guid><description>The Chainguard kaniko fork’s advisory describes Azure access-token exposure when untrusted Dockerfiles or build arguments reference lookalike registry hosts and an Azure identity is available. Its bundled credential helper can send a token to an attacker-controlled registry.</description></item><item><title>cPGuard update-channel breach exposes root-level server secrets</title><link>https://opsshield.com/notice/security-incident-disclosure-servermanage.html</link><guid>https://tsd.report/article/cpguard-update-channel-compromise-2026</guid><description>OPSSHIELD says attackers used its cPGuard update channel to send a malicious update on November 2. Its later disclosure describes roughly 70 minutes of malicious distribution and exposure of root-level secrets, superseding the vendor’s earlier account.</description></item><item><title>NIKKE PC launcher compromise exposes a trusted CDN delivery path</title><link>https://gist.github.com/MotherSphere/d6c049a09ba8ac3085c51ee9df24a4e5</link><guid>https://tsd.report/article/nikke-pc-launcher-cdn-compromise-2026</guid><description>MotherSphere’s NIKKE investigation describes tampered scripts on Level Infinite’s CDN loading a remote-control agent. Follow-up reporting describes credential-stealing capabilities and warns that updated launcher cleanup can erase evidence of an earlier infection.</description></item><item><title>Rails Active Storage uploads can expose server files through ImageMagick</title><link>https://github.com/rails/rails/security/advisories/GHSA-f3w6-w445-fwh9</link><guid>https://tsd.report/article/rails-active-storage-imagemagick-file-access-2026</guid><description>Rails’ November 4 advisory describes arbitrary file writes during attachment analysis when Active Storage uses ImageMagick, accepts untrusted uploads, and lacks a restrictive coder policy. Disk-backed storage can also expose files readable by the app.</description></item><item><title>Malicious strutil-core gem steals secrets and plants AI tool hooks</title><link>https://socket.dev/blog/shai-hulud-descendant-malicious-ruby-gem</link><guid>https://tsd.report/article/strutil-core-rubygems-malware</guid><description>Socket’s November 6 analysis links strutil-core 1.0.1, published November 1, to an install-time credential stealer and AI tool persistence. It was a standalone malicious gem; victims and successful downstream infections remain unconfirmed.</description></item><item><title>Linux TCP flaw puts exposed hosts on the kernel patch list</title><link>https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/98xxx/CVE-2026-98432.json</link><guid>https://tsd.report/article/linux-ipv4-tcp-use-after-free</guid><description>CVE-2026-98432 affects Linux IPv4 TCP connection handling. Aikido reports a demonstrated remote-root exploit against an MPTCP listener; that condition should guide urgent exposure checks without being treated as the full boundary of the flaw.</description></item><item><title>Cloudflare observes forged eMudhra certificates while client trust updates lag</title><link>https://tsd.report/article/emudhra-weak-intermediate-ca-keys-2026</link><guid>https://tsd.report/article/emudhra-weak-intermediate-ca-keys-2026</guid><description>Cloudflare now reports certificates apparently forged with eMudhra’s weak intermediate keys and about 22,000 attempted handshakes in its telemetry. It has not seen interception of its own connections. Its challenge probes suggest some embedded browsers still accept affected chains, with a skewed traffic sample.</description></item><item><title>Malicious Claude Code extension in Cursor marketplace attempted an SSH backdoor</title><link>https://www.microsoft.com/en-us/security/blog/2026/10/30/inside-malicious-claude-code-branded-cursor-extension-persistent-ssh-backdoor/</link><guid>https://tsd.report/article/cursor-claude-code-extension-marketplace-compromise-2026</guid><description>Cursor reported that tampered Claude Code extension builds were served from its marketplace on October 29. Microsoft found an injected loader that attempted SSH access and persistence. The evidence is specific to Cursor distribution; successful remote access depends on host conditions.</description></item><item><title>LiteLLM investigation traces stolen CI access eleven days before poisoned release</title><link>https://tsd.report/article/litellm-october-2026-release-compromise</link><guid>https://tsd.report/article/litellm-october-2026-release-compromise</guid><description>LiteLLM’s investigation connects an October 10 secret-stealing workflow to the October 21 publication of compromised litellm==1.107.0 artifacts. Socket independently found traces of the earlier workflow. The maintainer says token hashes link a stolen maintainer credential to approval of the later release.</description></item><item><title>GhostAction workflow injection extends from CI secrets to repository history</title><link>https://tsd.report/article/ghostaction-october-2026-workflow-injection</link><guid>https://tsd.report/article/ghostaction-october-2026-workflow-injection</guid><description>Socket’s October investigation found malicious GitHub Actions workflows added through compromised maintainer accounts. Its initial case study covered 346 repositories; a later update identified a wider set of accounts and repositories. The workflow sought both CI secrets and credentials exposed in source or git history.</description></item><item><title>MemTensor package releases carried a cross-platform credential collector</title><link>https://tsd.report/article/memtensor-npm-pypi-package-compromise-2026</link><guid>https://tsd.report/article/memtensor-npm-pypi-package-compromise-2026</guid><description>Socket’s package analysis identifies malicious releases in both the MemTensor npm plugin and the MemoryOS package on PyPI. The packages included a Go binary that searched developer environments for secrets. This is one distribution compromise spanning two registries, not two unrelated stories.</description></item><item><title>PHP2Shell exposes a PHP engine boundary across web applications</title><link>https://tsd.report/article/php2shell-php-engine-rce-2026</link><guid>https://tsd.report/article/php2shell-php-engine-rce-2026</guid><description>The PHP project released security updates for two engine flaws tracked as CVE-2026-109618 and CVE-2026-109619. Under the conditions described by the PHP Foundation, an unauthenticated request can reach code execution. This is a major runtime vulnerability, not a compromise of PHP packages or its release process.</description></item><item><title>Node2Shell: Brotli decoder bug reaches Node.js process memory</title><link>https://tsd.report/article/node2shell-brotli-decoder-rce-2026</link><guid>https://tsd.report/article/node2shell-brotli-decoder-rce-2026</guid><description>The Node.js project rates CVE-2026-111497 high severity. Malformed Brotli data can drive an out-of-bounds write when an application decompresses attacker-supplied input through node:zlib. The affected supported release lines are 22.x, 24.x and 26.x. This is a runtime vulnerability, not evidence that Node.js distribution was compromised.</description></item></channel></rss>