mirror of
https://github.com/carlospolop/hacktricks
synced 2025-02-17 06:28:27 +00:00
80 lines
6.4 KiB
Markdown
80 lines
6.4 KiB
Markdown
# Parametre Kirliliği
|
||
|
||
<details>
|
||
|
||
<summary><strong>AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong>!</strong></summary>
|
||
|
||
HackTricks'i desteklemenin diğer yolları:
|
||
|
||
* Şirketinizi HackTricks'te **reklamını görmek** veya HackTricks'i **PDF olarak indirmek** için [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
|
||
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
|
||
* Özel [**NFT'lerden**](https://opensea.io/collection/the-peass-family) oluşan koleksiyonumuz [**The PEASS Family**](https://opensea.io/collection/the-peass-family)'yi keşfedin
|
||
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)'u **takip edin**.
|
||
* **Hacking hilelerinizi** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına **PR göndererek** paylaşın.
|
||
|
||
</details>
|
||
|
||
# HTTP Parametre Kirliliği (HPP) Genel Bakış
|
||
|
||
HTTP Parametre Kirliliği (HPP), saldırganların HTTP parametrelerini manipüle ederek bir web uygulamasının davranışını istenmeyen şekillerde değiştirdiği bir tekniktir. Bu manipülasyon, HTTP parametrelerinin eklenmesi, değiştirilmesi veya çoğaltılması yoluyla gerçekleştirilir. Bu manipülasyonların etkisi doğrudan kullanıcıya görünmez, ancak sunucu tarafında uygulamanın işlevselliğini önemli ölçüde değiştirebilir ve istemci tarafında gözle görülür etkilere sahip olabilir.
|
||
|
||
## HTTP Parametre Kirliliği (HPP) Örneği
|
||
|
||
Bir bankacılık uygulaması işlem URL'si:
|
||
|
||
- **Orijinal URL:** `https://www.kurban.com/gonder/?from=hspA&to=hspB&miktar=10000`
|
||
|
||
Ek bir `from` parametresi ekleyerek:
|
||
|
||
- **Manipüle Edilmiş URL:** `https://www.kurban.com/gonder/?from=hspA&to=hspB&miktar=10000&from=hspC`
|
||
|
||
İşlem, `from` parametresinin `hspA` yerine yanlışlıkla `hspC` hesabına tahsil edilebilir ve bu da HPP'nin işlemleri veya şifre sıfırlamaları, 2FA ayarları veya API anahtar istekleri gibi diğer işlevleri manipüle etme potansiyelini gösterir.
|
||
|
||
### Teknolojiye Özgü Parametre Ayrıştırma
|
||
|
||
- Parametrelerin nasıl ayrıştırıldığı ve önceliklendirildiği, temel web teknolojisine bağlı olarak değişir ve HPP'nin nasıl sömürülebileceğini etkiler.
|
||
- [Wappalyzer](https://addons.mozilla.org/en-US/firefox/addon/wappalyzer/) gibi araçlar, bu teknolojileri ve ayrıştırma davranışlarını belirlemeye yardımcı olur.
|
||
|
||
## PHP ve HPP Sömürüsü
|
||
|
||
**OTP Manipülasyonu Durumu:**
|
||
|
||
- **Bağlam:** Bir One-Time Password (OTP) gerektiren bir giriş mekanizması sömürüldü.
|
||
- **Yöntem:** Saldırganlar, Burp Suite gibi araçları kullanarak OTP isteğini onaylayarak HTTP isteğindeki `email` parametresini çoğalttı.
|
||
- **Sonuç:** İlk e-posta için tasarlanan OTP, manipüle edilen istekte belirtilen ikinci e-posta adresine gönderildi. Bu hata, amaçlanan güvenlik önlemini atlayarak yetkisiz erişime izin verdi.
|
||
|
||
Bu senaryo, uygulamanın arka uç tarafında kritik bir gözden kaçırma durumunu vurgulamaktadır. İlk `email` parametresi, OTP oluşturmak için işlenirken, teslimat için son parametre kullanılmıştır.
|
||
|
||
**API Anahtar Manipülasyonu Durumu:**
|
||
|
||
- **Senaryo:** Bir uygulama, kullanıcıların profil ayarları sayfası aracılığıyla API anahtarlarını güncellemelerine izin verir.
|
||
- **Saldırı Vektörü:** Bir saldırgan, POST isteğine ek bir `api_key` parametresi ekleyerek API anahtar güncelleme işlevinin sonucunu manipüle edebileceğini keşfeder.
|
||
- **Teknik:** Burp Suite gibi bir araç kullanarak, saldırgan, isteğe hem meşru hem de kötü niyetli bir `api_key` parametresi içeren bir istek oluşturur. Sunucu, yalnızca son örneği işleyerek API anahtarını saldırganın sağladığı değere günceller.
|
||
- **Sonuç:** Saldırgan, kurbanın API işlevselliği üzerinde kontrol kazanır ve yetkisiz şekilde özel verilere erişebilir veya bunları değiştirebilir.
|
||
|
||
Bu örnek, özellikle API anahtar yönetimi gibi kritik özelliklerde güvenli parametre işleme gerekliliğini vurgular.
|
||
|
||
## Parametre Ayrıştırma: Flask vs. PHP
|
||
|
||
Web teknolojilerinin çift HTTP parametrelerini nasıl işlediği farklılık gösterir ve HPP saldırılarına karşı hassasiyetlerini etkiler:
|
||
|
||
- **Flask:** Sorgu dizesinde `a=1&a=2` gibi bir durumda, ilk parametre değerini benimser ve başlangıçtaki örneği sonraki çoğaltmalardan önce tercih eder.
|
||
- **PHP (Apache HTTP Sunucusu üzerinde):** Aksine, verilen örnekte `a=2`'yi tercih eder. Bu davranış, saldırganın orijinal parametrenin üzerine manipüle edilen parametreyi onaylayarak istemeden HPP saldırılarını kolaylaştırabilir.
|
||
|
||
## Referanslar
|
||
* [https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654](https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654)
|
||
* [https://github.com/google/google-ctf/tree/master/2023/web-under-construction/solution](https://github.com/google/google-ctf/tree/master/2023/web-under-construction/solution)
|
||
|
||
<details>
|
||
|
||
<summary><strong>AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong>!</strong></summary>
|
||
|
||
HackTricks'i desteklemenin diğer yolları:
|
||
|
||
* Şirketinizi HackTricks'te **reklamını görmek** veya HackTricks'i **PDF olarak indirmek** için [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
|
||
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
|
||
* Özel [**NFT'lerden**](https://opensea.io/collection/the-peass-family) oluşan koleksiyonumuz [**The PEASS Family**](https://opensea.io/collection/the-peass-family)'yi keşfedin
|
||
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)'u **takip edin**.
|
||
* **Hacking hilelerinizi** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına **PR göndererek** paylaşın.
|
||
|
||
</details>
|