Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
9b58cc1
feat(security/wireshark): first push - 3 challenges
t1m0t-p Sep 28, 2025
7d70530
refactor(security/wireshark): README.md
t1m0t-p Sep 29, 2025
1732034
feat(security/wireshark): gsm - challenge 4
t1m0t-p Sep 29, 2025
826f989
feat(security/wireshark): tcp - challenge 5
t1m0t-p Oct 21, 2025
6bd8e12
feat(security/wireshark): usb - challenge 6
t1m0t-p Oct 22, 2025
3768880
feat(security/wireshark): use old version of the tcp challenge
t1m0t-p Oct 22, 2025
d99701c
feat(security/wireshark): README.md - challenge 5
t1m0t-p Oct 23, 2025
68a3176
refactor(security/wireshark/exo6-usb): Add informations for the chall…
t1m0t-p Oct 27, 2025
9133bf5
feat(security/wireshark/ex0): translate README.md in englishand add M…
t1m0t-p Nov 1, 2025
da9a0c8
feat(wireshark/exo7-forensic): Capture file and README.md
t1m0t-p Nov 4, 2025
983c367
refactor(wireshark/exo7-forensic): update README.md
t1m0t-p Nov 4, 2025
c222d82
refactor(wireshark/exo1-basic_http): update README.md
t1m0t-p Nov 4, 2025
216cae4
refactor(wireshark/exo2-header_http): update README.md
t1m0t-p Nov 4, 2025
4a781bb
refactor(wireshark/exo3-https): update README.md
t1m0t-p Nov 4, 2025
3805cfd
refactor(wireshark/exo4-gsm): update README.md
t1m0t-p Nov 4, 2025
c99a9c1
refactor(wireshark/exo5-tcp): update README.md
t1m0t-p Nov 4, 2025
6d44bcb
update(wireshark/exo4-gsm): udpate gsm.md
t1m0t-p Nov 5, 2025
4e6dd8f
update(wireshark/exo6-usb): udpate usb.md
t1m0t-p Nov 5, 2025
9cb1c25
update(wireshark/exo7-forensic): udpate forensic.md
t1m0t-p Nov 5, 2025
c22f7c4
add: main readme
Intermarch3 Nov 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
160 changes: 160 additions & 0 deletions security/wireshark/exo0-setup/setup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
# Workshop Wireshark - Setup

> ⚠️ **Avertissement : Les risques d’une mauvaise configuration de Wireshark**
>
> Une installation mal configurée ne se traduit pas seulement par des problèmes techniques. Wireshark est un outil puissant qui, mal paramétré, peut :
>
> 1. **Exposer ton système** : accorder des permissions excessives (comme `root` permanent) rend ton ordinateur plus vulnérable aux exploits ou logiciels malveillants.
> * 🔗 [Guide officiel Wireshark sur la sécurité](https://wiki.wireshark.org/Security)
> * 🔗 [Wireshark Security Advisories](https://www.wireshark.org/security/)
>
> 2. **Créer des failles de sécurité** : un binaire `dumpcap` mal protégé peut être exploité pour obtenir des droits réseau ou administrateur.
> * 🔗 [CVE-2023-1991](https://nvd.nist.gov/vuln/detail/CVE-2023-1991)
> * 🔗 [CVE Details – Liste des vulnérabilités](https://www.cvedetails.com/product/8292/Wireshark-Wireshark.html?vendor_id=4861)
>
> 3. **Capturer des données sensibles par inadvertance** (mots de passe, cookies, tokens d’authentification) et stocker ces données non chiffrées.
> * 🔗 [Discussion sur les risques de capture Wireshark (Reddit)](https://www.reddit.com/r/AskNetsec/comments/xwhec1/wireshark_security_risks_when_installed_on_a/)
>
> 4. **Enfreindre des règles légales** : sniffer du trafic sur un réseau tiers sans autorisation est illégal et peut mener à des poursuites.
> * 🔗 [CNIL – Surveillance et cybersécurité](https://www.cnil.fr/fr/les-travaux-de-surveillance-des-reseaux-informatiques) | [GDPR et collecte de données](https://gdpr-info.eu/art-32-gdpr/)

> Ce guide vise à sécuriser l’installation afin que Wireshark soit utilisable **sans exposer ton système** et **dans un cadre légal**.

---

## 🧭 Sommaire

1. [Introduction](#introduction)
2. [Prérequis & Bonnes Pratiques](#prérequis--bonnes-pratiques)
3. [Étape 1 : Vérifier l’installation](#étape-1--vérifier-linstallation)
4. [Étape 2 : Configurer les permissions](#étape-2--configurer-les-permissions)
5. [Étape 3 : Lancer Wireshark](#étape-3--lancer-wireshark)
6. [Étape 4 : Première capture](#étape-4--première-capture)
7. [Problèmes fréquents](#problèmes-fréquents)
8. [Résumé sécurité](#résumé-sécurité)

---

## Introduction

Pour utiliser Wireshark en toute sécurité, il faut :

* **Limiter les privilèges** au strict nécessaire.
* **Configurer correctement `dumpcap`** pour capturer sans lancer Wireshark en `root`.
* **Comprendre ce qu’on capture** : éviter d’enregistrer des données sensibles inutilement.

---

## Prérequis & Bonnes Pratiques

* Utiliser **une machine personnelle ou de test**.
* Avoir un compte utilisateur standard.
* Suivre ce guide pas à pas pour éviter les erreurs de configuration.
* Connaître les lois locales : sniffer uniquement **ton propre réseau** ou un réseau de lab.

---

## Étape 1 : Vérifier l’installation

```bash
wireshark -v
```

Attendu : version Wireshark affichée (ex. `Wireshark 4.2.2`).

Si non installé :

```bash
# Debian/Ubuntu
sudo apt update && sudo apt install wireshark

# Fedora
sudo dnf install wireshark wireshark-cli

# Arch/Manjaro
sudo pacman -Syu wireshark-qt wireshark-cli
```
Comment thread
Intermarch3 marked this conversation as resolved.
Outdated

---

## Étape 2 : Configurer les permissions

2.1 - Configuration des groupes utilisateurs
```bash
# Ajoute ton utilisateur au groupe 'wireshark' pour capturer des paquets sans utiliser root
sudo usermod -aG wireshark "$USER"

# Applique immédiatement le changement de groupe sans redémarrer ta session
newgrp wireshark
```
2.2 - Attribution des capacités réseau minimales à dumpcap

dumpcap est le **programme de capture réseau** utilisé par Wireshark et TShark :
* Il **écoute les interfaces réseau** et enregistre les paquets dans des fichiers .pcap.
* Wireshark ne fait qu’**analyser et afficher** ces paquets ; c’est dumpcap qui gère la capture.
* On lui donne **seules les permissions réseau nécessaires**, plutôt que de lancer Wireshark en root, pour **réduire le risque d’escalade de privilèges**.

```bash
# Donne à 'dumpcap' (binaire de capture Wireshark) les capacités réseau minimales
sudo setcap cap_net_raw,cap_net_admin+eip /usr/bin/dumpcap
```
* **cap_net_raw** : autorise l'accès brut aux paquets réseau
* **cap_net_admin** : autorise certaines actions réseau avancées (sniff, interfaces)
* **+eip** : applique ces permissions à l'exécution

2.3 - Vérification des capacités
```bash
getcap /usr/bin/dumpcap
```

Attendu :

```
/usr/bin/dumpcap cap_net_admin,cap_net_raw=eip
```

✅ Ainsi, Wireshark peut capturer des paquets **sans être root**.

⚠️ Ne JAMAIS :

* Lancer Wireshark avec `sudo wireshark` (risque élevé d’escalade de privilèges via l’interface graphique). 🔗 [Explications sur les privilèges Wireshark](https://wiki.wireshark.org/CaptureSetup/CapturePrivileges?utm_source=chatgpt.com)

---

## Étape 3 : Lancer Wireshark

```bash
wireshark &
```

Vérifie que :

* L’outil se lance **sans demander ton mot de passe root**.
* Les interfaces réseau apparaissent avec de l’activité.

---

## Étape 4 : Première capture

1. Choisir ton interface réseau (Wi-Fi ou Ethernet).
2. Lancer la capture.
3. Générer du trafic :

```bash
ping -c 4 1.1.1.1
```

4. Filtrer par `icmp` dans Wireshark et observer les paquets.

---

## Résumé sécurité

* **Ne pas utiliser root** : Wireshark est une application graphique, donc potentiellement vulnérable. `dumpcap` est conçu pour limiter le risque.
* **Limiter les captures** : Utilise des filtres pour réduire la surface d’exposition.
* **Respect de la loi** : Capture uniquement sur les réseaux dont tu as l’autorisation.
* **Séparer les environnements** : Pour analyser des fichiers suspects, utilise une VM ou une machine de lab.

---

Avec cette configuration, ton setup est **sécurisé, fonctionnel et prêt pour les challenges du workshop**.
1 change: 0 additions & 1 deletion security/wireshark/exo01-basic_http/README.md

This file was deleted.

1 change: 0 additions & 1 deletion security/wireshark/exo02-header_http/README.md

This file was deleted.

4 changes: 0 additions & 4 deletions security/wireshark/exo03-https/README.md

This file was deleted.

3 changes: 0 additions & 3 deletions security/wireshark/exo04-gsm/README.md

This file was deleted.

Binary file removed security/wireshark/exo04-gsm/gsm.pcap
Binary file not shown.
2 changes: 0 additions & 2 deletions security/wireshark/exo05-tcp/README.md

This file was deleted.

Binary file removed security/wireshark/exo05-tcp/foren_trade.pcap
Binary file not shown.
1 change: 0 additions & 1 deletion security/wireshark/exo06-usb/README.md

This file was deleted.

Binary file removed security/wireshark/exo06-usb/keyboard.pcap
Binary file not shown.
10 changes: 0 additions & 10 deletions security/wireshark/exo07-forensic/README.md

This file was deleted.

Binary file removed security/wireshark/exo07-forensic/conv.png
Binary file not shown.
Binary file not shown.
19 changes: 19 additions & 0 deletions security/wireshark/exo1-basic_http/basic.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# 🕵️ Challenge 1 — Basic HTTP

## 📖 Contexte

You captured a simple HTTP exchange.

---

## 🎯 Goal

Find out what the user is trying to do and what they received in response.

---

## 📂 File provided

* `introduction.pcapng`

---

Check failure on line 19 in security/wireshark/exo1-basic_http/basic.md

View workflow job for this annotation

GitHub Actions / lint

Files should end with a single newline character

security/wireshark/exo1-basic_http/basic.md:19:3 MD047/single-trailing-newline Files should end with a single newline character
22 changes: 22 additions & 0 deletions security/wireshark/exo2-header_http/header.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# 🕵️ Challenge 2 — HTTP Headers

## 📖 Context

This time, the server requests HTTP Basic authentication.

Reminder: **Basic authentication is not secure**.
Credentials are not encrypted, only encoded in Base64.

---

## 🎯 Goal

Find the username and password of the user who made these requests!

---

## 📂 File provided

* `introduction_headers.pcapng`

---

Check failure on line 22 in security/wireshark/exo2-header_http/header.md

View workflow job for this annotation

GitHub Actions / lint

Files should end with a single newline character

security/wireshark/exo2-header_http/header.md:22:3 MD047/single-trailing-newline Files should end with a single newline character
22 changes: 22 additions & 0 deletions security/wireshark/exo3-https/https.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# 🕵️ Challenge 3 — HTTPS

## 📖 Context

This time, the credentials are not sent in the headers but in the **body of the POST request**. The application sends a JSON containing the credentials.

---

## 🎯 Goal

**There is no flag to find in this challenge !**

The purpose here is to understand why the content is unreadable.
> HTTP and certificates notions should be helpful ;)

---

## 📂 File provided

* `introduction_https.pcapng`

---

Check failure on line 22 in security/wireshark/exo3-https/https.md

View workflow job for this annotation

GitHub Actions / lint

Files should end with a single newline character

security/wireshark/exo3-https/https.md:22:3 MD047/single-trailing-newline Files should end with a single newline character
21 changes: 21 additions & 0 deletions security/wireshark/exo4-gsm/gsm.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# 🕵️ Challenge 4 — GSM

## 📖 Context

An SMS was transmitted in encapsulated GSM traffic.

---

## 🎯 Goal

What is the message hidden, the number sending it and the recipient ?

_You should probably what GSMTAP et TP-UD are ;)_

Check failure on line 13 in security/wireshark/exo4-gsm/gsm.md

View workflow job for this annotation

GitHub Actions / lint

Emphasis used instead of a heading [Context: "You should probably what GSMTA..."]

security/wireshark/exo4-gsm/gsm.md:13 MD036/no-emphasis-as-heading/no-emphasis-as-header Emphasis used instead of a heading [Context: "You should probably what GSMTA..."]

---

## 📂 File provided

* `gsm.pcap`

---

Check failure on line 21 in security/wireshark/exo4-gsm/gsm.md

View workflow job for this annotation

GitHub Actions / lint

Files should end with a single newline character

security/wireshark/exo4-gsm/gsm.md:21:3 MD047/single-trailing-newline Files should end with a single newline character
Binary file added security/wireshark/exo4-gsm/gsm.pcap
Binary file not shown.
28 changes: 0 additions & 28 deletions security/wireshark/info-encryption.md

This file was deleted.

Loading