Skip to content

DLL Hijacking on OS X

Patrick Wardle

Patrick Wardle introduces dynamic library (dylib) hijacking on OS X, demonstrating stealthy local privilege escalation and persistence vectors in Apple applications.

Summary

Architecture and Background

Remember DLL hijacking on Windows? Well, turns out that OS X is fundamentally vulnerable to a similar attack (independent of the user's environment).

Vulnerability Analysis

By abusing various 'features' and undocumented aspects of OS X's dynamic loader, this talk will reveal how attackers need only to plant specially-crafted dynamic libraries to have their malicious code automatically loaded into vulnerable applications. Through this attack, adversaries can perform a wide range of malicious actions, including stealthy persistence, process injection, security software circumvention, and even 'remote' infection.

Exploitation and Demonstrations

So come watch as applications fall, Gatekeeper crumbles (allowing downloaded unsigned code to execute), and 'hijacker malware' arises - capable of bypassing all top security and anti-virus products! And since "sharing is caring" leave with code and tools that can automatically uncover vulnerable binaries, generate compatible hijacker libraries, or detect if you've been hijacked.

Remediation and Defensive Strategies

Patrick Wardle is the Director of Research at Synack, where he leads cyber R&D efforts. Having worked at NASA, the NSA, and Vulnerability Research Labs (VRL), he is intimately familiar with aliens, spies, and talking nerdy. Currently, Patrick’s focus is on automated vulnerability discovery, and the emerging threats of OS X and mobile malware. In his personal time, Patrick collects OS X malware and writes OS X security tools. Both can be found on his website Objective-See.com

Related talks

Main Stage·22 min

  • DEF CON
  • Red Team
  • Date: Aug 2016
  • Location: Las Vegas

Linuz · Medic

Linuz and Medic analyze misconfigured accessibility binaries in remote desktop endpoints, showing how weaponizing Sticky Keys yields unauthenticated SYSTEM access.

sticky-keysaccessibility-backdoorremote-desktop+2