Security Review #221

August 30, 2024

In programming, if someone tells you "you're overcomplicating it", they're either 10 steps behind you or 10 steps ahead of you.

— Andrew Clark

Starred Articles

OpenSSH Backdoors

This blog post shares the story of the first backdoor in OpenSSH - back in 2002, and what we can learn from an attack that happened over two decades ago.

Financial Forensics in a fragmented ecosystem

In this blog post, I'll examine the differences between traditional SWIFT MT messages, ISO 20022, BESP, and CIPS in anticipation of more technical details about BRICS Pay. This analysis will also serve as a useful reference for tracking current fintech developments and gaining insights into the future of financial forensics and AML.

Quantum readiness - Part 2: Hash-based signatures

This article highlights XMSS and SPHINCS+, two digital signature algorithms which rely on the well-known robustness of hash functions against quantum computers. However, each one comes with its set of precautions and blind spots, which must be kept in mind when incorporating them in your software.

How to manipulate the execution flow of TOCTOU attacks

Manipulating the execution flow of a legitimate process to execute malicious code through a "Time-of-Check to Time-of-Use" (TOCTOU) attack involves exploiting the time gap between when a system checks a condition and when it acts on that condition. This blog post documents some of my workflows to achieve this, along with a sample execution example.

Exploiting a remote heap overflow with a custom TCP stack

We successfully compromised the Western Digital MyCloudHome connected hard drive via a 0-day in the Netatalk daemon. Our exploit was unusual because triggering the vulnerability required to mess with the remote TCP stack, so we wrote our own. This blog post will provide some technical details about it.

New Articles

Streaming vulnerabilities from Windows Kernel - Proxying to Kernel - Part I

This research will discuss an overlooked attack surface that allowed us to find more than ten vulnerabilities within two months. Additionally, we will delve into a proxy-based logical vulnerability type that allows us to bypass most validations, enabling us to successfully exploit Windows 11.

Vulnerabilities in Homepage Dashboard

Homepage is an open-source customizable web application dashboard with integrations for over 100 services. This blog post explains how I could exploit the vulnerabilities I found in Homepage to fully compromise a Jellyfin server achieving remote code execution by deploying a custom plugin, among other vulnerabilities.

LAPSUS$ is dead, long live HexaLocker?

This article will dissect the HexaLocker ransomware sample to uncover its capabilities and help organizations that could be impacted by this new strain.

NTLM Credential Theft in Python Windows Applications

The vulnerabilities disclosed here relate to how these Python frameworks retrieve files. Specifically, in Python, any file system operation performed on insufficiently validated input can lead to the leakage of NTLMv2 hashes. Along the way we'll also cover an interesting Python bug affecting older versions of Python on Windows that could assist in NTLMv2 hash theft.

SMB security hardening in Windows Server 2025 & Windows 11

Windows 11 24H2 and Windows Server 2025 include a dozen new SMB features that make your data, your users, and your organization safer - and most are on by default. In this post, I'll explain their usefulness, share some demos, and point to further details.

File Upload Vulnerabilities

File upload vulnerabilities can lead to severe security breaches if not handled properly. This article provides examples of vulnerable code, how it can be exploited and how to secure it.

Cobalt Strike - CDN / Reverse Proxy Setup

In this blog post I would like to explain in detail how Content Delivery Networks (CDNs) can be used in conjunction with a C2-domain and Nginx as a reverse proxy in the context of Cobalt Strike for C2 communications. We will cover the 'how', 'what' and 'why' of this topic in detail for a better understanding.

SLUBStick risk assessment for embedded systems

SLUBStick is a novel kernel exploitation method that converts a limited kernel heap vulnerability into an arbitrary read-and-write primitive, making privilege escalation easier. This article provides defensive measures specifically targeted towards embedded systems.

Exploring windows artifacts notepad files

On Windows 11, Notepad stores a cache of recently opened files. This cache contains valuable information, such as file paths, file contents, and other useful data. In this article, we will examine the structure of the Notepad cache and provide a custom parser to extract this information for forensic investigations.

PG_MEM: A Malware Hidden in the Postgres Processes

We have uncovered PG_MEM, a new PostgreSQL malware, that brute forces its way into PostgreSQL databases, delivers payloads to hide its operations, and mines cryptocurrency. In this blog, we explain this attack, the techniques used by the threat actor, and how to detect and protect your environments.

Linux Detection Engineering - Part 1: A primer on persistence mechanisms

In this first part of the series, we'll examine Linux persistence mechanisms in detail, starting with common or straightforward methods and moving toward more complex or obscure techniques.

PEAKLIGHT: Decoding the Stealthy Memory-Only Malware

We identified a new memory-only dropper using a complex, multi-stage infection process. This memory-only dropper decrypts and executes a PowerShell-based downloader. This PowerShell-based downloader is being tracked as PEAKLIGHT.

Local Networks Go Global When Domain Names Collide

Many organizations set up their internal Microsoft authentication systems years ago using domain names in TLDs that didn't exist at the time. Meaning, they are continuously sending their Windows usernames and passwords to domain names they do not control and which are freely available for anyone to register.

Shenanigans of Scheduled Tasks

In Windows, the Task Scheduler service manages and executes these automated tasks, similar to cron jobs on Unix systems. Attackers can also abuse scheduled tasks to persist malicious code or execute unauthorized activities on a compromised system.

Exploring Impacket Abuse

In this report, we examine how attackers repurpose Impacket features for malicious uses. While Impacket includes over 50 Python scripts, this report will specifically focus on three - psexec.py, smbexec.py, and wmiexec.py - that are frequently exploited and discussed by threat actors. We also offer practical defensive recommendations.

Service Account Abuse

This report explores the vulnerabilities associated with service accounts, details the growing trends in security breaches involving these accounts, and provides actionable recommendations for security teams and leaders to mitigate these risks effectively.

Fuzzing "netconsd" for fun and profit - Part 1

In this article, I will walk you through the process of writing a fuzz harness for one of Meta's open source projects netconsd, a daemon for receiving and processing logs from the Linux Kernel.

GNU/Linux Sandboxing - A Brief Review

This paper gives an incomplete review of existing sandbox solutions on the GNU/Linux operating system, which only covers the often-used or commonly-studied solutions.

$15k RCE Through Monitoring Debug Mode

In this writeup, I'll guide you through a technique that transformed my black box testing into a semi-white box testing. This approach led to the discovery of multiple vulnerabilities and eventually resulted in achieving remote code execution on the system.

CVE Hunting Made Easy

CVE hunting in WordPress plugins is more accessible than many realise, and the methodology outlined here requires only a bit of coding knowledge.

Taking the Crossroads: The Versa Director Zero-Day Exploitation

We discovered active exploitation of a zero-day vulnerability in Versa Director servers, identified as CVE-2024-39717. A custom-tailored web shell that is tied to this vulnerability. Its primary purpose is to intercept and harvest credentials which would enable access into downstream customers' networks as an authenticated user.

Advanced UEFI Analysis with Binary Ninja

The Unified Extensible Firmware Interface (UEFI) is a specification that defines the architecture of firmware used for booting computers. Let's delve into some firmware samples and demonstrate how Binary Ninja and our official EFI Resolver plugin can automate the analysis of UEFI binaries.

Beware the Unpatchable: Corona Mirai Botnet Spreads via Zero-Day

We observed a botnet campaign that is abusing several previously exploited vulnerabilities, as well as a zero-day vulnerability. This vulnerability (CVE-2024-7029) is a command injection vulnerability found in the brightness function of AVTECH closed-circuit television (CCTV) cameras that allows for remote code execution (RCE).

Analysis of CVE-2024-43044

In this blog post we are going to analyze the advisory for the CVE-2024-43044, an arbitrary file read vulnerability in Jenkins. We will demonstrate how we could escalate this to achieve remote code execution on the Jenkins controller if we manage to hijack a Jenkins agent.

Gobbling Up Forensic Analysis Data Using Velociraptor

If you still want to leverage Velociraptor's collection and post-processing of artifacts, this blog will guide the reader through the steps needed to integrate an already-run "Offline Collector" artifact package into your Velociraptor server, and showcase artifacts that come from a macOS host for quick, preliminary triage.

SeamlessPass: Leveraging Kerberos Tickets to Access the Cloud

We have created SeamlessPass, a tool that utilizes Microsoft's Seamless SSO feature to acquire access tokens for Microsoft 365 services by leveraging on-premises Active Directory Kerberos tickets. These access tokens can be further used with tools like ROADTools and AADInternals for enumeration or offensive exploitation.

Still Recent

Top 10 XSS Payloads

A quick review of the most useful payloads to prove the vast majority of Cross Site Scripting (XSS) vulnerabilities out there.

Log Analytics Contributor Role Enables Cloud to On-Premises Lateral Movement

We discovered that Microsoft Azure enables cloud to on-premises lateral movement via Azure Arc. Due to the nature of Azure Arc, this lateral movement can also allow a threat actor to pivot from an organization's Azure tenant to the organization's on-premises Google Cloud Platform (GCP) or Amazon Web Services (AWS) environments.

A New App Consent Attack: Hidden Consent Grant

An Application Consent attack, also known as an Illicit Consent Grant attack, is a type of phishing attack in which a malicious actor gains access to an application and then exploits permissions that have been granted to that app.

Exploring inner workings of a random free android VPN

I decided to explore a free VPN from android play store in hopes to find something interesting, solve some riddle and just have fun. For this experiment I chose "BD NET VPN", a freely available VPN application for any android phone.

Abusing Exclusions To Evade Detection

In this blog post we'll see how to abuse a common feature in Antivirus and EDRs that's not much talked about. Unlike more aggressive methods of AV/EDR evasion that might trigger alerts or leave obvious traces, abusing exclusions allows malicious activities to fly under the radar.

Oldies but Goodies

Introducing SlackEnum: A User Enumeration Tool for Slack

In this blog post, I'll share my process for developing SlackEnum - a new tool that can enumerate a large quantity of users and collect their names and email addresses for further action, while bypassing Slack's rate-limiting controls intended to prevent this abuse.