Security Review #225

September 27, 2024

One person's constant is another person's variable.

— Susan Gerhart

Starred Articles

Understanding Tokens in Entra ID: A Comprehensive Guide

There are different types of Entra ID tokens with different utilities. Not all tokens are created equal either; there are more attractive tokens for an attacker to steal causing a world of confusion and pain for blue and red teamers. This blog aims to demystify the primary differences between the most common types of tokens you may encounter and the attacks they are susceptible to.

Using YouTube to steal your files

I detail a one-click clickjacking attack that chains a Google Slides YouTube embed path traversal to three separate redirects to gain editor access on a Drive file/folder.

Hacking Kia: Remotely Controlling Cars With Just a License Plate

We discovered a set of vulnerabilities in Kia vehicles that allowed remote control over key functions using only a license plate. These attacks could be executed remotely on any hardware-equipped vehicle in about 30 seconds, regardless of whether it had an active Kia Connect subscription.

New Articles

CVE Wednesday - CVE-2024-20439

Analysis of a hardcoded static password vulnerability used to access licensing data in Cisco Smart Licensing Utility.

Spyware Injection Into Your ChatGPT's Long-Term Memory (SpAIware)

This post explains an attack chain for the ChatGPT macOS application. Through prompt injection from untrusted data, attackers could insert long-term persistent spyware into ChatGPT's memory. This led to continuous data exfiltration of any information the user typed or responses received by ChatGPT, including any future chat sessions.

(Anti-)Anti-Rootkit Techniques - Part 2: Stomped Drivers and Hidden Threads

In this second post, we will cover some evasions against anti-rootkits relying on malicious drivers mapped to unbacked memory detection. This post is mainly an aggregation of known anti-rootkit/anti-cheat evasion techniques and me coming up with ways to detect them.

Using AI-assisted decompilation of Radare2

We dive into Radare2 AI plugins. Over a (very) simple program, the quality of results are quite useful, but for more complex cases, currently, the AI simply never responds ("infinite" loop) or produces useless results.

Fuzzing "netconsd" for fun and profit - Part 3

In this last part, we will talk about how to generate the test cases that we can use to fuzz netconsd, in addition, we will go through the fuzz commands I used to fuzz the application.

Password Spraying Detection in Active Directory

In the context of Active Directory (AD), password spraying attacks are concerning because any authenticated user in an AD environment can use LDAP to query accounts without triggering account lockout policies. We review different password spraying techniques and provide guidelines for detection from the DC logs.

7 essential artifacts for macOS forensics

We are going to examine the top seven digital forensic artifacts for macOS forensics, detailing their locations, what they reveal, and how to interpret them.

Hunting phishing sites with Shodan

As phishing attacks become more sophisticated, investigators and security professionals need innovative techniques to identify and combat these threats. In this article, we look at an often overlooked method: using favicon hashes in conjunction with Shodan to uncover potential phishing sites.

NTLM Relaying - Making the Old New Again

I will be checking out some of the older adversary techniques used against Active Directory and how threat actors may use them to take over parts of an infrastructure.

System Integrity Protection (SIP)

This article explores the workings, components, security implications, and management of System Integrity Protection, the default Sandbox Profile used for all macOS apps.

Exploiting Chamilo during a Red Team engagement

The following blogpost explains how during a Red Team engagement we were able to identify several vulnerabilities including Remote Code Executions in the latest version of Chamilo.

A few notes on AWS Nitro Enclaves: Attack surface

AWS Nitro Enclaves have emerged as a powerful tool for isolating sensitive workloads. We have scrutinized the attack surface of AWS Nitro Enclaves, uncovering potential bugs that could compromise even these hardened environments.

A step-by-step guide to writing an iOS kernel exploit

Physical use-after-frees have proven to be extremely powerful vulnerabilities, almost completely unaffected by recent mitigations deployed into XNU. The strategy of exploitation for these bugs is not only simple to write, but also simple to understand. So with that, let's get into the explanation of what a physical use-after-free is.

CVE-2024-28987: SolarWinds Web Help Desk Hardcoded Credential Vulnerability Deep-Dive

We discovered a vulnerability in SolarWinds Web Help Desk (CVE-2024-28987), which allows unauthenticated attackers to remotely read and modify all help desk ticket details - often containing sensitive information like passwords from reset requests and shared service account credentials.

Exploiting AMD atdcm64a.sys arbitrary pointer dereference - Part 1

In this series of blog posts I'll describe how I found two vulnerabilities in a Windows kernel driver part of an old AMD software package and how I exploited them in order to achieve local privilege escalation. This first post will focus on the discovery of the vulnerability.

Attacking UNIX Systems via CUPS - Part I

This first article of the series will detail an RCE in cups-browsed, a component of the CUPS system that is responsible for discovering new printers and automatically adding them to the system.

Proxying Your Way to Code Execution - A Different Take on DLL Hijacking

While DLL hijacking attacks can take on many different forms, this blog post will explore a specific type of attack called DLL proxying, providing insights into how it works, the potential risks it poses, and briefly the methodology for discovering these vulnerable DLLs.

Wallet Scam: A Case Study in Crypto Drainer Tactics

We uncovered a malicious app on Google Play designed to steal cryptocurrency marking the first time a drainer has targeted mobile device users exclusively. The app used a set of evasion techniques to avoid detection and remained available for nearly five months before being removed.

Zooming in on CVE-2024-7965

We will focus on the CVE-2024-7965 vulnerability described as an inappropriate implementation in the browser's V8 engine. The vulnerability can lead to remote code execution (RCE) in the Chrome renderer and thus become a starting point for further exploitation.

Still Recent

Link-Write Attack: A sweet combination

Tar archives can contain multiple entries with the same filename. It is important to note that Golang follows symlinks while calling os.Create(name string) (*File, error). This combination can lead to arbitrary writes during file extraction.

Jailbreak your Enemies with a Link: Remote Execution on iOS - Part 1

This is the story of the Trident exploit chain: 3 zero-day vulnerabilities in iOS that enabled the first remote jailbreak. In this first part, we dive into the internals of the JavaScriptCore runtime: where a vulnerability lurks in WebKit which would crack your iPhone wide open.

Heap exploitation, glibc internals and nifty tricks.

This is a writeup of a heap pwn challenge at HitconCTF Qualifiers 2024, which explains some glibc malloc internals and some heap exploitation tricks that can be used for getting a shell!

A guide to Bluetooth Low Energy hacking

In this article, we will delve into the inner (boring) workings of Bluetooth technology to give you an understanding of how it works. Along with that, we'll also show you how to exploit these vulnerabilities (not boring).

How does OS affect binary exploitation

This blog explores how foundational OS topics like System V, POSIX, UNIX, and BSD influence binary exploitation on macOS and Linux. I'll also cover the System V ABI, inter-process communication (IPC), threading, signaling, and security features like ASLR and stack canaries.

Oldies but Goodies

Microsoft Incident Response lessons on preventing cloud identity compromise

In this blog, we present details on the common Entra ID and on-premises Active Directory misconfigurations and provide guidance on how to properly configure Microsoft Entra ID to remove risks and harden environments against cyberattacks.

How to use Mimikatz for Hacking in 2024: The Definitive Guide

This comprehensive guide will show you how to use Mimikatz for hacking so you can dump credentials and perform lateral movement like a pro.

Cross-Site Scripting via Web Cache Poisoning and WAF bypass

In this article I detail how I exploit Cross-Site scripting vulnerability bypassing Cloudflare WAF and additional restriction of characters implemented on the application level. Furthermore, the most important part was to leverage Cloudflare cache in such a way so that I can poison it with a malicious payload.

Studying 0days: How we hacked Anki, the world's most popular flashcard app

Anki versions is vulnerable to multiple exploits using shared decks, which can compromise your computer. This includes complete code execution. In total, we found three different vulnerabilities - one related to LaTeX content, one related to JavaScript on the card, and the final one related to media.

CVE-2024-29511 - Abusing Ghostscript's OCR device

This is an overview of CVE-2024-29511. A vulnerability in Ghostscript, leading to an arbitrary file read/write (under certain conditions). In this post we detail the vulnerability and we show how it can be exploited to read and write files outside of the -dSAFER sandbox.

Unearthed Arcana

Shadow Credentials

Windows Hello for Business (WHfB) replaces traditional password based authentication with a key based trust model. As with any new technology or feature introduces a new attack surface which could be potential for abuse. In this article, we detail how modification of the msDS-KeyCredentialLink attribute of a target computer or user account may lead to the retrieval of the NTLM hash.