> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/fr/privesc/path-hijacking/path-hijacking-tar-linux-privilege-escalation.md).

# Détournement de PATH (tar) - Élévation de privilèges Linux

## Ce que c’est

Le détournement de PATH abuse des programmes ou scripts privilégiés qui appellent des commandes sans chemins absolus. Si l'attaquant contrôle un répertoire placé plus tôt dans `PATH`, le processus privilégié peut exécuter le binaire de l'attaquant. Cette page spécifique se concentre sur **Détournement du PATH (tar)** et maintient le flux d’exploitation pratique : identifiez la condition, validez-la en toute sécurité, puis exécutez la charge utile minimale nécessaire pour prouver l’impact.

## Énumération

Commencez par confirmer le contexte local et la mauvaise configuration exacte avant d’exécuter la voie d’exploitation.

```bash
echo $PATH
strings <binary> | head
ltrace <binary> 2>/dev/null
```

## Exemples

**Recherche binaire avec des permissions SUID**

```bash
find / -perm -4000 2>/dev/null
```

Résultat : un fichier binaire intéressant a été trouvé:/ /\&#xNAN;**`/usr/bin/pandora_backup`**.

<figure><img src="/files/3a5d025aba0ac9dad0763d4d440404496774b9cf" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/3ffa2e7f064f0263550ac42b4f3a72d6260d73b6" alt=""><figcaption></figcaption></figure>

**Analyse binaire avec `ltrace`**

Pour comprendre comment fonctionne le binaire, nous avons utilisé **`ltrace`** (un outil de suivi des appels système) pour observer les appels système effectués par ce binaire :

```bash
ltrace /usr/bin/pandora_backup
```

Cela nous a permis de constater que le binaire exécutait la **`tar`** commande sans utiliser de chemin absolu pour l’exécutable, ce qui crée une vulnérabilité potentielle. En d’autres termes, si nous modifions notre **`PATH`** pour inclure un répertoire contenant un exécutable malveillant appelé `tar`, il serait exécuté à la place de l’original.

<figure><img src="/files/3355947dc5703d1f739828efa5e18efedd600bbc" alt=""><figcaption></figcaption></figure>

**Exploitation via détournement du PATH**

**Créé un programme malveillant `tar` fichier :** Nous avons créé un fichier nommé `tar` dans le `/tmp/` répertoire avec permissions d'exécution **SUID**. Ce fichier contient une commande pour ouvrir un shell Bash avec des privilèges élevés :

```bash
chmod 4777 /bin/bash
```

**Changement de variable `PATH`:** Pour forcer le système à utiliser notre version malveillante de `tar`, nous avons modifié la variable `PATH` pour donner la priorité au répertoire `/tmp/`

```bash
export PATH=/tmp/:$PATH
```

<figure><img src="/files/70d10bb4f5f9a2f01e627a74fac86f8b460ab0e5" alt=""><figcaption></figcaption></figure>

**Exécution du binaire vulnérable :** Après avoir modifié le `PATH`, nous avons exécuté le binaire **`pandora_backup`**:

<figure><img src="/files/fa375e97abae55403fee60b9aadb8584280b518b" alt=""><figcaption></figcaption></figure>

Grâce à l’exécution de notre version modifiée de `tar`, un shell Bash avec des privilèges élevés a été ouvert, nous donnant `root` accès.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/fr/privesc/path-hijacking/path-hijacking-tar-linux-privilege-escalation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
