From 212e12441730c70f200f187f66564b1241beeee0 Mon Sep 17 00:00:00 2001 From: Translator Date: Tue, 13 Aug 2024 18:55:43 +0000 Subject: [PATCH] Translated ['binary-exploitation/libc-heap/double-free.md'] to fr --- binary-exploitation/libc-heap/double-free.md | 56 ++++++++++---------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/binary-exploitation/libc-heap/double-free.md b/binary-exploitation/libc-heap/double-free.md index 0b181e0d6..2d7e9d0df 100644 --- a/binary-exploitation/libc-heap/double-free.md +++ b/binary-exploitation/libc-heap/double-free.md @@ -1,27 +1,27 @@ # Double Free {% hint style="success" %} -Apprenez et pratiquez le piratage AWS : [**Formation HackTricks AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ -Apprenez et pratiquez le piratage GCP : [**Formation HackTricks GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte) +Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ +Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
-Soutenez HackTricks +Support HackTricks -* Consultez les [**plans d'abonnement**](https://github.com/sponsors/carlospolop)! -* **Rejoignez le** 💬 **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐩 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** -* **Partagez des astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dĂ©pĂŽts GitHub. +* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)! +* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐩 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** +* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %} -## Informations de base +## Basic Information -Si vous libĂ©rez un bloc de mĂ©moire plus d'une fois, cela peut perturber les donnĂ©es de l'allocateur et ouvrir la porte aux attaques. Voici comment cela se produit : lorsque vous libĂ©rez un bloc de mĂ©moire, il retourne dans une liste de morceaux libres (par exemple, le "fast bin"). Si vous libĂ©rez le mĂȘme bloc deux fois de suite, l'allocateur dĂ©tecte cela et gĂ©nĂšre une erreur. Mais si vous **libĂ©rez un autre morceau entre-temps, la vĂ©rification de double libĂ©ration est contournĂ©e**, provoquant une corruption. +Si vous libĂ©rez un bloc de mĂ©moire plus d'une fois, cela peut perturber les donnĂ©es de l'allocateur et ouvrir la porte Ă  des attaques. Voici comment cela se produit : lorsque vous libĂ©rez un bloc de mĂ©moire, il retourne dans une liste de morceaux libres (par exemple, le "fast bin"). Si vous libĂ©rez le mĂȘme bloc deux fois de suite, l'allocateur dĂ©tecte cela et renvoie une erreur. Mais si vous **libĂ©rez un autre morceau entre-temps, la vĂ©rification de double libĂ©ration est contournĂ©e**, provoquant une corruption. -Maintenant, lorsque vous demandez une nouvelle mĂ©moire (en utilisant `malloc`), l'allocateur pourrait vous donner un **bloc qui a Ă©tĂ© libĂ©rĂ© deux fois**. Cela peut conduire Ă  deux pointeurs diffĂ©rents pointant vers le mĂȘme emplacement mĂ©moire. Si un attaquant contrĂŽle l'un de ces pointeurs, il peut modifier le contenu de cette mĂ©moire, ce qui peut causer des problĂšmes de sĂ©curitĂ© ou mĂȘme lui permettre d'exĂ©cuter du code. +Maintenant, lorsque vous demandez de la nouvelle mĂ©moire (en utilisant `malloc`), l'allocateur peut vous donner un **bloc qui a Ă©tĂ© libĂ©rĂ© deux fois**. Cela peut conduire Ă  deux pointeurs diffĂ©rents pointant vers le mĂȘme emplacement mĂ©moire. Si un attaquant contrĂŽle l'un de ces pointeurs, il peut modifier le contenu de cette mĂ©moire, ce qui peut causer des problĂšmes de sĂ©curitĂ© ou mĂȘme leur permettre d'exĂ©cuter du code. -Exemple : +Example: ```c #include #include @@ -88,14 +88,14 @@ printf("f1: %p\n", (void *)f1); printf("g1: %p\n", (void *)g1); printf("h1: %p\n", (void *)h1); printf("i1: %p\n", (void *)i1); -printf("i2: %p\n", (void *)i1); +printf("i2: %p\n", (void *)i2); return 0; } ``` -Dans cet exemple, aprĂšs avoir rempli le tcache avec plusieurs tranches libĂ©rĂ©es (7), le code **libĂšre la tranche `h`, puis la tranche `i`, et ensuite `h` Ă  nouveau, provoquant une double libĂ©ration** (Ă©galement connue sous le nom de Fast Bin dup). Cela ouvre la possibilitĂ© de recevoir des adresses mĂ©moire superposĂ©es lors de la rĂ©allocation, ce qui signifie que deux pointeurs ou plus peuvent pointer vers le mĂȘme emplacement mĂ©moire. La manipulation des donnĂ©es via un pointeur peut alors affecter l'autre, crĂ©ant un risque de sĂ©curitĂ© critique et un potentiel d'exploitation. +Dans cet exemple, aprĂšs avoir rempli le tcache avec plusieurs chunks libĂ©rĂ©s (7), le code **libĂšre le chunk `h`, puis le chunk `i`, et ensuite `h` Ă  nouveau, provoquant un double free** (Ă©galement connu sous le nom de Fast Bin dup). Cela ouvre la possibilitĂ© de recevoir des adresses mĂ©moire qui se chevauchent lors de la rĂ©allocation, ce qui signifie que deux ou plusieurs pointeurs peuvent pointer vers la mĂȘme localisation mĂ©moire. Manipuler des donnĂ©es via un pointeur peut alors affecter l'autre, crĂ©ant un risque de sĂ©curitĂ© critique et un potentiel d'exploitation. -En l'exĂ©cutant, notez comment **`i1` et `i2` ont la mĂȘme adresse** : +En l'exĂ©cutant, notez comment **`i1` et `i2` ont obtenu la mĂȘme adresse** :
Allocations initiales :
 a : 0xaaab0f0c22a0
@@ -107,7 +107,7 @@ f : 0xaaab0f0c2340
 g : 0xaaab0f0c2360
 h : 0xaaab0f0c2380
 i : 0xaaab0f0c23a0
-AprÚs les réallocations :
+AprÚs réallocations :
 a1 : 0xaaab0f0c2360
 b1 : 0xaaab0f0c2340
 c1 : 0xaaab0f0c2320
@@ -123,34 +123,34 @@ h1 : 0xaaab0f0c2380
 ## Exemples
 
 * [**Dragon Army. Hack The Box**](https://7rocky.github.io/en/ctf/htb-challenges/pwn/dragon-army/)
-* Nous ne pouvons allouer que des tranches de taille Fast-Bin, sauf pour la taille `0x70`, ce qui empĂȘche l'Ă©crasement habituel de `__malloc_hook`.
+* Nous ne pouvons allouer que des chunks de taille Fast-Bin sauf pour la taille `0x70`, ce qui empĂȘche l'Ă©crasement habituel de `__malloc_hook`.
 * Au lieu de cela, nous utilisons des adresses PIE qui commencent par `0x56` comme cible pour Fast Bin dup (1/2 chance).
 * Un endroit oĂč les adresses PIE sont stockĂ©es est dans `main_arena`, qui se trouve Ă  l'intĂ©rieur de Glibc et prĂšs de `__malloc_hook`.
-* Nous ciblons un décalage spécifique de `main_arena` pour allouer une tranche là-bas et continuons d'allouer des tranches jusqu'à atteindre `__malloc_hook` pour obtenir l'exécution de code.
+* Nous ciblons un offset spécifique de `main_arena` pour allouer un chunk là et continuer à allouer des chunks jusqu'à atteindre `__malloc_hook` pour obtenir une exécution de code.
 * [**zero_to_hero. PicoCTF**](https://7rocky.github.io/en/ctf/picoctf/binary-exploitation/zero_to_hero/)
-* En utilisant les bacs Tcache et un débordement de zéro, nous pouvons atteindre une situation de double libération :
-* Nous allouons trois tranches de taille `0x110` (`A`, `B`, `C`).
-* Nous libérons `B`.
-* Nous libérons `A` et allouons à nouveau pour utiliser le débordement de zéro.
-* Maintenant, la taille de `B` est `0x100`, au lieu de `0x111`, donc nous pouvons le libérer à nouveau.
-* Nous avons un bac Tcache de taille `0x110` et un de taille `0x100` qui pointent vers la mĂȘme adresse. Nous avons donc une double libĂ©ration.
-* Nous exploitons la double libération en utilisant [l'empoisonnement du Tcache](tcache-bin-attack.md)
+* En utilisant des bins Tcache et un débordement de null-byte, nous pouvons atteindre une situation de double-free :
+* Nous allouons trois chunks de taille `0x110` (`A`, `B`, `C`)
+* Nous libérons `B`
+* Nous libérons `A` et allouons à nouveau pour utiliser le débordement de null-byte
+* Maintenant, le champ de taille de `B` est `0x100`, au lieu de `0x111`, donc nous pouvons le libérer à nouveau
+* Nous avons un Tcache-bin de taille `0x110` et un de taille `0x100` qui pointent vers la mĂȘme adresse. Donc nous avons un double free.
+* Nous exploitons le double free en utilisant [Tcache poisoning](tcache-bin-attack.md)
 
 ## Références
 
 * [https://heap-exploitation.dhavalkapil.com/attacks/double\_free](https://heap-exploitation.dhavalkapil.com/attacks/double\_free)
 
 {% hint style="success" %}
-Apprenez et pratiquez le piratage AWS :[**Formation HackTricks AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
-Apprenez et pratiquez le piratage GCP : [**Formation HackTricks GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
+Apprenez et pratiquez le hacking AWS :[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
+Apprenez et pratiquez le hacking GCP : [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
 
 
-Soutenez HackTricks +Soutenir HackTricks * Consultez les [**plans d'abonnement**](https://github.com/sponsors/carlospolop) ! -* **Rejoignez** 💬 le **groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐩 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** -* **Partagez des astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos. +* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez-nous sur** **Twitter** 🐩 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** +* **Partagez des astuces de hacking en soumettant des PRs aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dĂ©pĂŽts github.
{% endhint %}