<summary><strong>Zacznij od zera i stań się ekspertem w hakowaniu AWS dzięki</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Czy pracujesz w **firmie zajmującej się cyberbezpieczeństwem**? Chcesz zobaczyć, jak Twoja **firma jest reklamowana na HackTricks**? lub chcesz mieć dostęp do **najnowszej wersji PEASS lub pobrać HackTricks w formacie PDF**? Sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
* **Dołącz do** [**💬**](https://emojipedia.org/speech-balloon/) [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** mnie na **Twitterze** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
Podczas wysyłania exploitu do zdalnego serwera, który wywołuje **`system('/bin/sh')`** na przykład, ta operacja zostanie wykonana w procesie serwera, a `/bin/sh` będzie oczekiwać danych wejściowych z stdin (FD: `0`) oraz będzie drukować wyniki w stdout i stderr (FDs `1` i `2`). W związku z tym atakujący nie będzie mógł interaktywnie korzystać z powłoki.
Sposobem na rozwiązanie tego problemu jest założenie, że gdy serwer został uruchomiony, utworzył **numer FD `3`** (do nasłuchiwania), a następnie Twoje połączenie będzie w **numerze FD `4`**. Dlatego możliwe jest użycie wywołania systemowego **`dup2`** do zduplikowania stdin (FD 0) i stdout (FD 1) w FD 4 (tego, który jest połączony z atakującym), co umożliwi nawiązanie kontaktu z powłoką po jej wykonaniu.
Należy zauważyć, że socat już przesyła **`stdin`** i **`stdout`** do gniazda. Jednak tryb `pty`**obejmuje znaki DELETE**. Dlatego jeśli wyślesz `\x7f` (`DELETE` -) to **usunie poprzedni znak** twojego exploitu.
Aby ominąć to, **znak ucieczki `\x16` musi być poprzedzony przez każde `\x7f` wysłane.**
**Tutaj możesz** [**znaleźć przykład tego zachowania**](https://ir0nstone.gitbook.io/hackthebox/challenges/pwn/dream-diary-chapter-1/unlink-exploit)**.**