🐍Python Library Hijacking

🎯 Overview

Python library hijacking exploits Python's module import system through writable modules, path manipulation, or PYTHONPATH environment variable abuse to achieve privilege escalation.

πŸ” Attack Vectors

1. Wrong Write Permissions

  • Writable Python modules in system directories

  • SUID Python scripts importing vulnerable modules

  • Direct code injection into existing modules

2. Library Path Manipulation

  • Higher priority paths in sys.path that are writable

  • Module name collision with legitimate modules

  • Path precedence exploitation

3. PYTHONPATH Environment Variable

  • sudo SETENV permissions for Python

  • Environment variable manipulation to redirect imports

  • Custom module directories via PYTHONPATH

πŸ” Enumeration & Detection

Check Python Paths

Find SUID Python Scripts

Check Sudo Permissions

πŸš€ Exploitation Methods

Method 1: Writable Module Hijacking

Method 2: Path Precedence Exploitation

Method 3: PYTHONPATH Environment Variable

πŸ”§ Advanced Techniques

Multi-Function Module Creation

Reverse Shell Integration

πŸ” Detection Script

πŸ”‘ Quick Reference

Immediate Checks

Emergency Exploitation

HTB Academy Lab Example

πŸ”§ Common Python Modules to Target

Frequently Imported Modules

Module Discovery in Scripts


Python library hijacking exploits the module import system - writable library paths, path precedence, and environment variable manipulation can redirect imports to malicious code for privilege escalation.

Last updated