Security Review #269

August 11, 2025

To be a programmer is to develop a carefully managed relationship with error.

— Ellen Ullman

Starred Articles

Exploiting Retbleed in the real world

Retbleed CPU vulnerability involves speculative execution, where CPUs predict and execute instructions before confirming the validity of the prediction, which leaks data from an address selected by the attacker. In this post, we're sharing details of exploiting Retbleed in a realistic, well-secured setting.

Lateral Movement

We detail a lateral movement technique that involves the remote manipulation of BitLocker registry keys via Windows Management Instrumentation (WMI), to hijack specific COM objects of BitLocker. The purpose is to execute code under the context of the interactive user on a target host.

HTTP/1.1 must die: the desync endgame

This article introduces several novel classes of HTTP desynchronization attack capable of mass compromise of user credentials. These techniques are demonstrated through detailed case studies, including critical vulnerabilities which exposed tens of millions of websites by subverting core infrastructure.

New Articles

ReVault! When your SoC turns against you..

This technical deep dive explores vulnerabilities in Dell's ControlVault3 (CV3), a hardware-based security solution embedded in many Dell laptops. We uncover how CV3 can be exploited due to architectural weaknesses, and detail 5 vulnerabilities affecting both the ControlVault3 Firmware and its associated Windows APIs that we are calling "ReVault".

Hells Hollow: A new SSDT Hooking technique

Hells Hollow is a new SSDT-style hooking technique leveraging Windows 11 Alt Syscalls. Whilst in this post we focus on ETW, it can be used in any number of creative ways, essentially a SSDT bypass for rootkits that Microsoft managed to defeat via PatchGuard, for Windows 11.

Living in the Namespace

We detail a persistence technique that uses Linux namespaces especially PID namespaces to create isolated environments like lightweight containers. By using the unshare a process can separate itself from shared system resources and run independently. This means any malware running outside the container stays hidden from the normal OS view inside the container.

Oops Safari, I think You Spilled Something!

We examine the technical details of a vulnerability in Data Flow Graph (DFG) compiler of WebKit (CVE-2024-44308) and walk through exploiting it. We cover some concepts, show the root cause, and demonstrate how to achieve stable object corruption and ultimately gain arbitrary read/write.

Hacking Veeam: Several CVEs

We investigate 5 vulnerabilities in Veeam: Authentication Bypass (CVE-2024-29849), Remote Code Execution (CVE-2024-42024), NTLM Relay to Account Takeover (CVE-2024-29850), Local Privilege Escalation (CVE-2024-29853) and Broken Access Control & IDORs (CVE-2024-29852).

Breaking NVIDIA Triton: CVE-2025-23319

We discovered a chain of critical vulnerabilities (CVE-2025-23319) in NVIDIA's Triton Inference Server, a popular open-source platform for running AI models at scale. When chained together, these flaws can potentially allow a remote, unauthenticated attacker to gain complete control of the server, achieving remote code execution (RCE).

MCPoison - Cursor IDE's MCP Vulnerability (CVE-2025-54136)

Cursor is a developer-focused AI IDE that combines local code editing with large language model (LLM) and MCP tools integration. We demonstrate that once approved, an MCP tool can be seamlessly replaced by a malicious code that will be executed everytime a project is opened.

Uncovering memory corruption in NVIDIA Triton

I found two remotely accessible memory corruption bugs (CVE-2025-23310 and CVE-2025-23311) in NVIDIA's Triton Inference Server during a routine onboarding practice. The bugs result from the way HTTP requests are handled by a number of the API routes, including the inference endpoint.

CrushFTP RCE Explained

The core of CVE-2025-54309, an RCE in CrushFTP, is a breakdown in security checks within CrushFTP's DMZ proxy. In this article, we provide technical details on the vulnerability and its exploitation.

Exfiltrating Your ChatGPT Chat History and Memories With Prompt Injection

In this post we demonstrate how a bypass in OpenAI's "safe URL" rendering feature allows ChatGPT to send personal information to a third-party server. This can be exploited by an adversary via a prompt injection via untrusted data.

Should you trust your zero trust? Bypassing Zscaler posture checks

In this blogpost, we present a vulnerability that allowed us to bypass Zscaler's posture verification mechanism. We detail the configuration of the Zscaler client, the weaknesses in its posture check implementation, and how we leveraged them to access internal networks without satisfying the required security conditions.

Flashing Your Lights: CVE-2025-7202

A CSRF vulnerability in Elgato Key Lights let websites flash your lights remotely. Here's how CVE-2025-7202 was discovered and fixed.

Getting RCE in an AWS service (Amazon MWAA)

Amazon Managed Workflows for Apache Airflow (MWAA) is a managed service to run Apache Airflow on AWS without managing infrastructure. However, most installations are affected by CVE-2024-39877, an SSTI vulnerability which allows remote code execution.

FileJacking - Initial Access with File System API

The File System API is a browser API that allows web apps to do some local file system operations such as direct file editing, saving, and directory access. In this article, we will detail FileJacking, a malware initial access technique that relies on the File System API to backdoor files, and read / write folders directly from the browser without downloads.

Entra Connect Attacker Tradecraft - Part 3

Attackers can exploit Entra Connect sync accounts to hijack device userCertificate properties, enabling device impersonation and bypassing conditional access policies. By leveraging this access, they can retrieve Intune-issued MDM and PKCS certificates, potentially compromising on-premises domains and sensitive credentials.

Detection Engineering: Practicing Detection-as-Code - Part 3: Validation

In this part, we focus on implementing validation checks to improve consistency and ensure a minimum level of quality within the detection repository. We'll break the validation process into several smaller scripts and pipelines that you can refer to when building your own validation workflows.

Disguises Zip Past Path Traversal

In this article, we explain how to create a ZIP slip attack (path traversal) by leveraging the schizophrenic ZIP technique.

Salesforce Penetration Testing Fundamentals

This blog walks you through using our script to audit a Salesforce environment, uncovering excessive permissions and platform-specific risks like SOQL injection.

Exploiting a full chain of trust flaws: how we went from unauthenticated to arbitrary remote code execution (RCE) in CyberArk Conjur

Through a series of logic flaws, we demonstrate how to achieve RCE on a CyberArk Conjur deployment using the default AWS integration setup. It requires no credentials, no tokens, not even a real AWS account. Just a carefully crafted series of requests that moved from zero access to full control, all by exploiting default behavior.

Physical ATM Backdoor & Linux Forensic Evasion Evasion

This blog uncovers a unique, stealthy approach used by a threat actor group to compromise critical banking infrastructure. It reveals a previously undocumented anti-forensics technique (now recognized in MITRE ATT&CK), backdoor presence invisible to process listings, and a rare instance of physical network compromise using embedded hardware.

Debugging the Pixel 8 kernel via KGDB

This article shows how to use GDB over a serial connection for debugging the kernel on a Pixel 8. The instructions cover building and flashing a custom Pixel 8 kernel to enable KGDB, breaking into KGDB either via ADB by relying on /proc/sysrq-trigger or purely over a serial connection by sending the SysRq-G sequence, and attaching GDB to the Pixel 8 kernel.

ThrottleStop driver abused to terminate AV processes

We spotted intriguing new antivirus (AV) killer software that abuses the ThrottleStop.sys driver, delivered together with the malware, to terminate numerous antivirus processes and lower the system’s defenses as part of a technique known as BYOVD (Bring Your Own Vulnerable Driver).

Tracking Updates to Raspberry Robin

In this blog, we outline the latest updates to Raspberry Robin, including improved obfuscation methods, a shift from AES-CTR to ChaCha-20 for network encryption, a new local privilege escalation exploit (CVE-2024-38196), and the use of invalid TOR onion domains to complicate the process of extracting Indicators of Compromise (IOCs).

Adversary Tactics and Exploitation Paths in SharePoint Online

In modern Microsoft 365 ecosystems, SharePoint Online is no longer just a file repository, it's a sprawling attack surface. This post explores a step-by-step attack scenario based on the SharePoint Online Attack Matrix and walks you through actionable red tactics.

Amp Code: Arbitrary Command Execution via Prompt Injection Fixed

Sandbox-escape-style attacks can happen when an AI is able to modify its own configuration settings, such as by writing to configuration files. In this article, I demonstrate this type of attack against Amp, an agentic coding tool built by Sourcegraph.

A Full-Chain Exploit of an Unfused Qualcomm Device

I detail how I managed to execute a full, BootROM-level code execution attack on the Qualcomm boot chain, following the sequence BootROM (PBL) - SBL1 - Trustzone & Aboot - Kernel - Android, patching TrustZone and the Kernel, and ultimately gaining root access post-boot.

Extending AD CS attack surface to the cloud with Intune certificates

In hybrid environments I have observed certificate settings in Intune being misconfigured in a way that would allow regular users to perform ESC1 over Intune certificates. This blog explores the scenarios where this is possible and provides exploitation and remediation guidance.

Turning ChatGPT Codex Into A ZombAI Agent

ChatGPT Codex is a cloud-based software engineering agent that answers codebase questions, executes code, and drafts pull requests. This post will demonstrate how Codex is vulnerable to prompt injection, and how the use of the "Common Dependencies Allowlist" for Internet access enables an attacker to recruit ChatGPT Codex into a malware botnet.

Exploit development for vulnerabilities in Windows over MS-RPC

To showcase some different ways to craft exploits for vulnerabilities over MS-RPC, this post will cover three ways on how to make a working exploit for the same vulnerability. We will go over PowerShell, .NET (executable) and Python for remote exploits.

Still Recent

Weaponizing LNK Files in Offensive Operations

In their core, LNK files are files with a set of instructions for the OS to execute: where the shortcut icon is stored, where the actual program executable is located, if there are any arguments to pass on etc. Although created for benign use and UX ease, those features can be abused.

Detection Engineering: Practicing Detection-as-Code - Part 2: Repository

In this second part, we will cover some basic elements of designing a repository to develop, store, and deploy detections from. We’ll go through several different aspects of the setup like the Git platform, branch strategy, repository structure, detections structure, taxonomies, and content packs.

The Good, the Bad, and the Encoding: An SS7 Bypass Attack

The majority of SS7 bypass attacks involve the TCAP layer, which is part of the SS7 protocol stack. This layer has turned into an attractive area for attackers to exploit due to its history, nature and specifically. In this article we detail a variant of these TCAP manipulation structures, which fits into this trend of exploitation by the attackers.

Oldies but Goodies

State Of Linux Snapshot Fuzzing

We delve into snapshot fuzzing, a technique for enhancing application security testing on Linux, offering significant advantages in testing efficiency and depth, especially for complex and stateful applications. By enabling the rapid restoration of system states, snapshot fuzzing allows for extensive exploration of program behavior and the discovery of vulnerabilities.

Entra Connect Attacker Tradecraft - Part 2

In this second part, we will learn some more fundamentals of the Entra sync engine and how the rules work to understand how, given access to a sync account in Domain A, we can add credentials to a user in another domain within the same Entra tenant.

Entra Connect Attacker Tradecraft - Part 1

This is the first part of a series regarding attacker tradecraft around the syncing mechanics between Active Directory and Entra. In this blog, we demonstrate how complete control of an Entra user is equal to compromise of the on-premises user.

Update: Dumping Entra Connect Sync Credentials

Microsoft changed the way the Entra Connect Connect Sync agent authenticates to Entra ID. These changes affect attacker tradecraft, as we can no longer export the sync account credentials; however, attackers can still take advantage of an Entra Connect sync account compromise and gain new opportunities that arise from the changes.