mirror of
https://github.com/carlospolop/hacktricks
synced 2025-02-16 22:18:27 +00:00
60 lines
5.8 KiB
Markdown
60 lines
5.8 KiB
Markdown
# hop-by-hop headers
|
||
|
||
{% hint style="success" %}
|
||
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* 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.
|
||
|
||
</details>
|
||
{% endhint %}
|
||
|
||
**Bu, [https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers](https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers) gönderisinin bir özetidir.**
|
||
|
||
Hop-by-hop başlıkları, iki düğüm (örneğin, istemci-proxy veya proxy-proxy) arasındaki verileri yönetmek için HTTP/1.1'de kullanılan, tek bir taşıma düzeyi bağlantısına özgü başlıklardır ve iletilmek üzere tasarlanmamıştır. Standart hop-by-hop başlıkları arasında `Keep-Alive`, `Transfer-Encoding`, `TE`, `Connection`, `Trailer`, `Upgrade`, `Proxy-Authorization` ve `Proxy-Authenticate` yer alır; bunlar [RFC 2616](https://tools.ietf.org/html/rfc2616#section-13.5.1) ile tanımlanmıştır. Ek başlıklar, `Connection` başlığı aracılığıyla hop-by-hop olarak belirlenebilir.
|
||
|
||
### Hop-by-Hop Başlıklarının Suistimali
|
||
Proxy'ler tarafından hop-by-hop başlıklarının yanlış yönetimi güvenlik sorunlarına yol açabilir. Proxy'lerin bu başlıkları kaldırması beklenirken, hepsi bunu yapmadığı için potansiyel zafiyetler oluşabilir.
|
||
|
||
### Hop-by-Hop Başlık Yönetimini Test Etme
|
||
Hop-by-hop başlıklarının yönetimi, belirli başlıklar hop-by-hop olarak işaretlendiğinde sunucu yanıtlarındaki değişiklikleri gözlemleyerek test edilebilir. Araçlar ve betikler bu süreci otomatikleştirerek, proxy'lerin bu başlıkları nasıl yönettiğini belirleyebilir ve potansiyel yanlış yapılandırmaları veya proxy davranışlarını ortaya çıkarabilir.
|
||
|
||
Hop-by-hop başlıklarının suistimali çeşitli güvenlik sonuçlarına yol açabilir. Aşağıda, bu başlıkların potansiyel saldırılar için nasıl manipüle edilebileceğini gösteren birkaç örnek bulunmaktadır:
|
||
|
||
### `X-Forwarded-For` ile Güvenlik Kontrollerini Aşma
|
||
Bir saldırgan, IP tabanlı erişim kontrollerini aşmak için `X-Forwarded-For` başlığını manipüle edebilir. Bu başlık, genellikle proxy'ler tarafından bir istemcinin kaynak IP adresini izlemek için kullanılır. Ancak, bir proxy bu başlığı hop-by-hop olarak ele alır ve uygun doğrulama olmadan iletirse, bir saldırgan IP adresini taklit edebilir.
|
||
|
||
**Saldırı Senaryosu:**
|
||
1. Saldırgan, `X-Forwarded-For` başlığında sahte bir IP adresi içeren bir HTTP isteği gönderir.
|
||
2. Saldırgan ayrıca `Connection: close, X-Forwarded-For` başlığını ekler, bu da proxy'nin `X-Forwarded-For`'u hop-by-hop olarak ele almasını sağlar.
|
||
3. Yanlış yapılandırılmış proxy, sahte `X-Forwarded-For` başlığı olmadan isteği web uygulamasına iletir.
|
||
4. Web uygulaması, orijinal `X-Forwarded-For` başlığını görmediği için isteği güvenilir bir proxy'den geliyormuş gibi değerlendirebilir ve yetkisiz erişime izin verebilir.
|
||
|
||
### Hop-by-Hop Başlık Enjeksiyonu ile Önbellek Zehirleme
|
||
Eğer bir önbellek sunucusu hop-by-hop başlıklarına dayanarak içeriği yanlış bir şekilde önbelleğe alırsa, bir saldırgan kötü niyetli başlıklar enjekte ederek önbelleği zehirleyebilir. Bu, aynı kaynağı talep eden kullanıcılara yanlış veya kötü niyetli içerik sunar.
|
||
|
||
**Saldırı Senaryosu:**
|
||
1. Bir saldırgan, önbelleğe alınmaması gereken bir hop-by-hop başlığı (örneğin, `Connection: close, Cookie`) ile bir web uygulamasına istek gönderir.
|
||
2. Kötü yapılandırılmış önbellek sunucusu hop-by-hop başlığını kaldırmaz ve yanıtı saldırganın oturumuna özgü olarak önbelleğe alır.
|
||
3. Aynı kaynağı talep eden gelecekteki kullanıcılar, saldırgana özel olarak hazırlanmış önbelleğe alınmış yanıtı alır; bu da oturum kaçırma veya hassas bilgilerin ifşasına yol açabilir.
|
||
|
||
{% hint style="success" %}
|
||
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* 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.
|
||
|
||
</details>
|
||
{% endhint %}
|