hacktricks/pentesting-web/timing-attacks.md

66 lines
5.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Timing Attacks
{% hint style="success" %}
AWS Hacking öğrenin ve pratik yapın:<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">\
GCP Hacking öğrenin ve pratik yapın: <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>HackTricks'i Destekleyin</summary>
* [**abonelik planlarını**](https://github.com/sponsors/carlospolop) kontrol edin!
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın ya da **Twitter**'da **bizi takip edin** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Hacking ipuçlarını paylaşmak için** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github reposuna PR gönderin.
</details>
{% endhint %}
{% hint style="warning" %}
Bu tekniği derinlemesine anlamak için [https://portswigger.net/research/listen-to-the-whispers-web-timing-attacks-that-actually-work](https://portswigger.net/research/listen-to-the-whispers-web-timing-attacks-that-actually-work) adresindeki orijinal raporu kontrol edin.
{% endhint %}
## Temel Bilgiler
Bir zamanlama saldırısının temel amacı, benzer isteklerden gelen yanıtların **zaman farklarını kontrol ederek** karmaşık soruları yanıtlayabilmek veya gizli işlevleri tespit edebilmektir.
Geleneksel olarak bu, hem ağ hem de sunucu tarafından sağlanan gecikme ve dalgalanma nedeniyle çok karmaşık olmuştur. Ancak, [**Race Condition Single Packet attack**](race-condition.md#http-2-single-packet-attack-vs.-http-1.1-last-byte-synchronization) keşfedilip geliştirildikten sonra, bu tekniği kullanarak tüm ağ gecikmelerini denklemin dışına çıkarmak mümkündür.\
Sadece **sunucu gecikmelerini** bırakmak, zamanlama saldırılarını keşfetmeyi ve kötüye kullanmayı kolaylaştırır.
## Keşifler
### Gizli Saldırı Yüzeyi
Blog yazısında, bu tekniği kullanarak gizli parametreleri ve hatta başlıkları bulmanın mümkün olduğu, parametre veya başlık istekte bulunduğunda yaklaşık **5ms'lik bir zaman farkı** olduğu kontrol edilerek belirtildi. Aslında, bu keşif tekniği Burp Suite'teki **Param Miner**'a eklendi.
Bu zaman farkları, bir **DNS isteği** yapıldığında, geçersiz bir girdi nedeniyle bazı **logların yazılması** veya bir parametre istekte bulunduğunda bazı **kontrollerin yapılması** nedeniyle olabilir.
Bu tür saldırılar gerçekleştirirken hatırlamanız gereken bir şey, yüzeyin gizli doğası nedeniyle zaman farklarının gerçek nedenini bilmeyebileceğinizdir.
### Ters Proxy Yanlış Yapılandırmaları
Aynı araştırmada, zamanlama tekniğinin "kapsamlı SSRF'leri" keşfetmek için harika olduğu paylaşıldı (bu, yalnızca izin verilen IP/domain'lere erişebilen SSRF'lerdir). Sadece **izin verilen bir alan adı ayarlandığında** ve izin verilmeyen bir alan adı ayarlandığında zaman farkını kontrol etmek, açık proxy'leri keşfetmeye yardımcı olur, yanıt aynı olsa bile.
Bir kapsamlıık proxy keşfedildiğinde, hedefin bilinen alt alan adlarını ayrıştırarak geçerli hedefler bulmak mümkündü ve bu da:
* **Açık proxy** aracılığıyla kısıtlı alt alan adlarına erişerek **güvenlik duvarlarını atlamak**
* Ayrıca, bir **açık proxy** kullanarak yalnızca dahili olarak erişilebilen **yeni alt alan adlarını keşfetmek** mümkündür.
* **Ön Uç taklit saldırıları**: Ön uç sunucuları genellikle `X-Forwarded-For` veya `X-Real-IP` gibi arka uç için başlıklar ekler. Bu başlıkları alan açık proxy'ler, istenen uç noktaya ekleyecektir, bu nedenle bir saldırgan, bu başlıkları beyaz listeye alınmış değerlerle ekleyerek daha fazla dahili alan adına erişebilir.
## Referanslar
* [https://portswigger.net/research/listen-to-the-whispers-web-timing-attacks-that-actually-work](https://portswigger.net/research/listen-to-the-whispers-web-timing-attacks-that-actually-work)
{% hint style="success" %}
AWS Hacking öğrenin ve pratik yapın:<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">\
GCP Hacking öğrenin ve pratik yapın: <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>HackTricks'i Destekleyin</summary>
* [**abonelik planlarını**](https://github.com/sponsors/carlospolop) kontrol edin!
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın ya da **Twitter**'da **bizi takip edin** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Hacking ipuçlarını paylaşmak için** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github reposuna PR gönderin.
</details>
{% endhint %}