Skip to content

Commit

Permalink
Arp Poisoning - correction des coquilles 🐚 (#8)
Browse files Browse the repository at this point in the history
* new article

* nouvel article

* Delete package-lock.json

* modification de contenu pour répondre aux attentes

* correction des coquilles 🐚

---------

Co-authored-by: Frozenk <[email protected]>
Co-authored-by: didntchooseaname <[email protected]>
  • Loading branch information
3 people authored Sep 21, 2024
1 parent 8b157a7 commit 96ecadc
Showing 1 changed file with 13 additions and 17 deletions.
30 changes: 13 additions & 17 deletions src/content/docs/cybersecurity/offensive/arp_poisoning.mdx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: Comment fonctionne le ARP Cache Poisoning
description: _Vous vous ĂȘtes surement dĂ©jĂ  demandĂ© comment les attaquants font pour intercepter des paquĂȘts sur le rĂ©seau, espionner les utilisateurs d'un Wi-Fi public, etc. La mĂ©thode de l'empoisonnement de cache ARP est une attaque basique qui permet de faire cela_
description: Vous vous ĂȘtes surement dĂ©jĂ  demandĂ© comment les attaquants font pour intercepter des paquets sur le rĂ©seau, espionner les utilisateurs d'un Wi-Fi public, etc. La mĂ©thode de l'empoisonnement de cache ARP est une attaque basique qui permet de faire cela
categories: [offensive]
tags: [cybersécurité]
template: doc
next: true
prev: true
---

_Vous vous ĂȘtes surement dĂ©jĂ  demandĂ© comment les attaquants font pour intercepter des paquĂȘts sur le rĂ©seau, espionner les utilisateurs d'un Wi-Fi public, etc. La mĂ©thode de l'empoisonnement de cache ARP est une attaque basique qui permet de faire cela_
_Vous vous ĂȘtes surement dĂ©jĂ  demandĂ© comment les attaquants font pour intercepter des paquets sur le rĂ©seau, espionner les utilisateurs d'un Wi-Fi public, etc. La mĂ©thode de l'empoisonnement de cache ARP est une attaque basique qui permet de faire cela_

import { Image } from 'astro:assets';

Expand All @@ -18,11 +18,9 @@ import { Image } from 'astro:assets';

Pour comprendre l’attaque MITM (Man in the middle), il faut comprendre simplement le protocole ARP.


Tout ce que vous devez savoir c’est que chaque machine du rĂ©seau possĂšde un cache ARP. Comme son nom l’indique, c’est un cache, il est donc temporaire.
Le cache ARP consiste en une correspondance entre les adresses IP et les adresses MAC des machines du réseau. Ces correspondances sont rangées dans des tables ARP.


Exemple de table ARP :

<Image src="https://raw.githubusercontent.com/tanguybron/cybersec-du-dimanche/refs/heads/main/source/MITM/images/cache_arp.png" alt="ARP" format="avif" quality={"high"} width="1000" height="1000"/>
Expand All @@ -31,21 +29,20 @@ Ci-dessus, deux commandes qui affichent les correspondances entre 2 ip du résea

A ce stade, vous devriez avoir compris ce qu’est une table ARP. Cependant, vous avez lu juste avant qu’ARP Ă©tait un protocole
 En effet, pour remplir ces tables ARP, la machine va envoyer des requĂȘtes aux autres machines sur le rĂ©seau. Les requĂȘtes envoyĂ©es sont tout simplement comme le dialogue qui suit :

> votre_machine : “qui à l’adresse 10.5.0.2 ?”
>
> votre_machine : “qui a l’adresse 10.5.0.2 ?”
> machine_distante : “c’est moi, voici mon adresse MAC : 02:42:0a:05:00:02 !”
>
Et ainsi la machine ajoute une ligne Ă  sa table ARP.

Lorsqu’une machine distante veut envoyer une requĂȘte Ă  une destination, elle s’assure d’avoir un couple IP-MAC correct.

### Comprendre le fonctionnement d’une attaque MITM (Man in The Middle)

Le but de cette attaque est de tromper la machine victime en se faisant passer pour quelqu’un d’autre. Il faut ainsi envoyer des informations à une machine pour qu’il enregistre dans son cache ARP les mauvaises correspondances IP-MAC.
Le but de cette attaque est de tromper la machine victime en se faisant passer pour quelqu’un d’autre. Il faut ainsi envoyer des informations à une machine pour qu’elle enregistre dans son cache ARP les mauvaises correspondances IP-MAC.

Si on veut observer toutes les communications entre une machine et un routeur, il faut se placer entre les deux machines (d’oĂč l’appellation Man in the Middle). On dit Ă  la victime “c’est moi le routeur”, ainsi elle enverra ses paquets Ă  la machine attaquante, qui les transmettra ensuite au routeur. Lorsqu’une rĂ©ponse arrive du routeur, l’attaquant dit au routeur “c’est moi qui suis la machine qui a envoyĂ© cette requĂȘte”, l’attaquant a donc la requĂȘte qu’il renvoie Ă  la machine victime.
Ce schĂ©ma rĂ©sume bien l’attaque :
Si on veut observer toutes les communications entre une machine et un routeur, il faut se placer entre les deux machines (d’oĂč l’appellation Man in the Middle). On dit Ă  la victime “c’est moi le routeur”, ainsi elle enverra ses paquets Ă  la machine attaquante, qui les transmettra ensuite au routeur. Lorsqu’une rĂ©ponse arrive du routeur, l’attaquant dit au routeur “c’est moi qui suis la machine qui a envoyĂ© cette requĂȘte”, l’attaquant intercepte donc la requĂȘte qu’il renvoie Ă  la machine victime.

Ce schĂ©ma rĂ©sume bien l’attaque :

<Image src="https://beaglesecurity.com/blog/images/man-in-the-middle-attacks.webp" alt="ARP" format="avif" quality={"high"} width="1000" height="1000"/>

Expand All @@ -72,7 +69,6 @@ Vous devriez voir une réponse similaire à celle ci-dessous :

<Image src="https://raw.githubusercontent.com/tanguybron/cybersec-du-dimanche/refs/heads/main/source/MITM/images/conteneurs.png" alt="ARP" format="avif" quality={"high"} width="1000" height="1000"/>


Maintenant, ouvrons 2 Terminal séparés et connectons nous aux deux machines :
Pour utiliser la machine attaquante, tapez la commande :
```shell
Expand All @@ -84,9 +80,9 @@ Pour utiliser la machine victime, tapez la commande :
$ docker exec -it victime /bin/bash
```

Vous ĂȘtes maintenant connectĂ© aux deux machines et vous devriez avoir deux Terminal ouverts comme cela :
<Image src="https://raw.githubusercontent.com/tanguybron/cybersec-du-dimanche/refs/heads/main/source/MITM/images/terminal.png" alt="ARP" format="avif" quality={"high"} width="1000" height="1000"/>
Vous ĂȘtes maintenant connectĂ© aux deux machines et vous devriez avoir deux terminaux ouverts :

<Image src="https://raw.githubusercontent.com/tanguybron/cybersec-du-dimanche/refs/heads/main/source/MITM/images/terminal.png" alt="ARP" format="avif" quality={"high"} width="1000" height="1000"/>

### VĂ©rification de la Configuration

Expand All @@ -100,8 +96,8 @@ Vous obtenez normalement une réponse comme suit :

On voit bien que la machine attaquante a pour adresse IP **10.5.0.2** et la machine victime **10.5.0.3**.

Vérifions maintenant la réponse ICMP de la machine victime. Sur la machine attaquante, utilisons la commande **ping** :

Vérifions maintenant la connectivité entre les différentes machines. Sur la machine attaquante, utilisons la commande **ping** afin de voir si la machine victime nous répond :
```shell
$ ping 10.5.0.3
```
Expand All @@ -119,7 +115,7 @@ Il est aussi recommandé de taper la commande :
$ ping 10.5.0.1
```

Pour vérifier que nous pouvons contacter le routeur.
Pour vérifier que nous avons une réponse ICMP du routeur.

### Mise en place de l'attaque

Expand All @@ -129,9 +125,9 @@ $ arp -n
```
<Image src="https://raw.githubusercontent.com/tanguybron/cybersec-du-dimanche/refs/heads/main/source/MITM/images/arp.png" alt="ARP" format="avif" quality={"high"} width="1000" height="1000"/>


Afin que les requĂȘtes puissent circuler entre la machine victime et le routeur, il faut que la machine attaquante puisse renvoyer les requĂȘtes reçues.
Nous devons donc activer l'ip forwarding sur notre machine attaquante. Si nous manquons cette Ă©tape, soit il s'agit d'un choix de l'attaquant de bloquer toutes les requĂȘtes de sa victime afin de lui bloquer toute connectivitĂ©, ou alors il s'agit d'une erreur d'inatention qui empechera l'attaquant d'observer ce que la victime fait sur sa machine.

Nous devons donc activer l'ip forwarding sur notre machine attaquante. Si nous manquons cette Ă©tape, soit il s’agit d'un choix de l’attaquant de bloquer toutes les requĂȘtes de sa victime afin de lui bloquer toute connectivitĂ©, ou alors il s’agit d’une erreur d’inattention qui empĂȘchera l’attaquant d’observer ce que la victime fait sur sa machine.

Voici comment activer l'ip forwarding :

Expand Down

0 comments on commit 96ecadc

Please sign in to comment.