<summary><strong>AWS hackleme konusunda sıfırdan kahramana öğrenin</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong>!</strong></summary>
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
* **Katılın** 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) veya bizi **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** takip edin.**
[Resmi GNU sitesinde](https://www.gnu.org/software/libc/manual/html\_node/Hooks-for-Malloc.html) belirtildiği gibi, **`__malloc_hook`** değişkeni, `malloc()` çağrıldığında **libc kütüphanesinin veri bölümünde depolanan bir işlevin adresine işaret eden bir işaretçidir**. Bu nedenle, bu adres örneğin bir **One Gadget** ile üzerine yazılırsa ve `malloc` çağrılırsa, **One Gadget çağrılacaktır**.
Malloc'ı çağırmak için programın onu çağırmasını beklemek mümkündür veya **`printf("%10000$c")`** çağrılarak da mümkündür, bu da çok fazla bayt ayırarak `libc`'in bunları yığında ayırmak için malloc çağırmasını sağlar.
Kancaların **GLIBC >= 2.34** için **devre dışı bırakıldığını** unutmayın. Modern GLIBC sürümlerinde kullanılabilecek diğer teknikler bulunmaktadır. Bakınız: [https://github.com/nobodyisnobody/docs/blob/main/code.execution.on.last.libc/README.md](https://github.com/nobodyisnobody/docs/blob/main/code.execution.on.last.libc/README.md).
* Eğer bu konumda 0x200 boyutunda hızlı bir parça elde edilirse, **yürütülecek bir işlev işaretçisini üzerine yazmak mümkün olacaktır**
* Bunun için, boyutu `0xfc` olan yeni bir parça oluşturulur ve birleştirilmiş işlev bu işaretçiyle iki kez çağrılır, bu şekilde hızlı bir parçanın boyutu `0xfc*2 = 0x1f8` olan bir serbest bırakılmış parçanın işaretçisine ulaşılır.
* Ardından, bu hızlı parçanın **`fd`** adresini önceki **`__free_hook`** işlevine işaret etmesi için bu parçada düzenleme işlevi çağrılır.
* Daha sonra, hızlı bir parçadan önceki gereksiz parçayı almak için boyutu `0x1f8` olan bir parça oluşturulur, böylece **`__free_hook`**'ta hızlı bir parça parçası alınır ve üzerine **`system`** işlevinin adresiyle üzerine yazılır.
* Ve son olarak, `/bin/sh\x00` dizesini içeren bir parça serbest bırakılarak silme işlevi çağrılır, **`__free_hook`** işlevi tetiklenir ve `/bin/sh\x00` parametresiyle sistem işlevine işaret eder.
<summary><strong>AWS hackleme konusunda sıfırdan kahramana öğrenin</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong>!</strong></summary>
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
* **Katılın** 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) veya bizi **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** takip edin.**