Web Zafiyetleri Metodolojisi

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

Her Web Pentest’te, potansiyel olarak zayıf olabilecek birkaç gizli ve belirgin yer vardır. Bu yazı, tüm mümkün yerlerde zafiyet aradığınızdan emin olmanız için bir kontrol listesi olarak hazırlanmıştır.

Proxies

Tip

Günümüzde web uygulamaları genellikle bazı ara proxy’ler kullanır; bunlar zafiyetleri sömürmek için (ab)kullanılabilir. Bu zafiyetlerin ortaya çıkması için kırılgan bir proxy bulunması gerekir, ancak genellikle backend tarafında ek bir zafiyet de gerekir.

Kullanıcı girdisi

Tip

Çoğu web uygulaması, daha sonra işlenecek bazı verilerin kullanıcılar tarafından girilmesine izin verir. Sunucunun beklediği verinin yapısına bağlı olarak bazı zafiyetler uygulanabilir veya uygulanmayabilir.

Reflected Values

Girilen veri bir şekilde yanıt içinde yansıtılıyorsa, sayfa çeşitli zafiyetlere açık olabilir.

Bahsedilen bazı zafiyetler özel koşullar gerektirir, bazıları ise sadece içeriğin yansıtılmasını gerektirir. Zafiyetleri hızlıca test etmek için ilginç polygloths’ları şurada bulabilirsiniz:

Reflecting Techniques - PoCs and Polygloths CheatSheet

Search functionalities

Eğer fonksiyon backend içinde bir tür veri aramak için kullanılabiliyorsa, onu keyfi veri aramak için (ab)kullanabilirsiniz.

Forms, WebSockets and PostMsgs

Bir websocket mesaj gönderdiğinde veya kullanıcıların işlem yapmasına izin veren bir form olduğunda zafiyetler ortaya çıkabilir.

Cross-site WebSocket hijacking & localhost abuse

WebSocket yükseltmeleri çerezleri otomatik olarak iletir ve ws://127.0.0.1’i engellemez, bu yüzden herhangi bir web origin masaüstü IPC uç noktalarını Origin doğrulamasını atlayarak kullanabilir. Yerel bir ajan aracılığıyla JSON-RPC-benzeri bir API açığa çıkaran bir launcher gördüğünüzde:

  • Yayınlanan frame’leri gözlemleyip her yöntem için gereken type/name/args demetlerini klonlayın.
  • Dinleme portunu tarayıcıdan doğrudan brute-force ile deneyin (Chromium yaklaşık ~16k başarısız yükseltmeyi kaldırır) ta ki bir loopback soketi protokol banner’ı ile cevap verene kadar — Firefox aynı yük altında hızlıca çökme eğilimindedir.
  • Bir create → privileged action çiftini zincirleyin: örn., GUID döndüren bir create* metodunu çağırıp hemen saldırgan kontrollü payload’larla karşılık gelen *Launch* metodunu çağırın.

Eğer keyfi JVM bayrakları (ör. AdditionalJavaArguments) geçirebiliyorsanız, -XX:MaxMetaspaceSize=<tiny> ile bir hata zorlayın ve uygulama mantığına dokunmadan OS komutları çalıştırmak için -XX:OnOutOfMemoryError="<cmd>" ekleyin. Adım adım rehber için WebSocket attacks’a bakın.

HTTP Headers

Web sunucusu tarafından gönderilen HTTP başlıklarına bağlı olarak bazı zafiyetler mevcut olabilir.

Bypasses

Bazı belirli işlevlerde onlar için işe yarayabilecek çeşitli yöntemler olabilir

Structured objects / Specific functionalities

Bazı işlevler verinin çok özel bir formatta (ör. dilde serileştirilmiş bir obje veya XML) yapılandırılmasını gerektirir. Bu nedenle uygulamanın bu tür verileri işliyor olması durumunda zafiyetli olup olmadığını tespit etmek daha kolaydır. Bazı belirli işlevler ayrıca girişin belirli bir formatı kullanılması durumunda (ör. Email Header Injections) zafiyetli olabilir.

Dosyalar

Dosya yüklemeye izin veren işlevler çeşitli sorunlara açık olabilir. Kullanıcı girdisi içeren dosyalar üreten işlevler beklenmeyen kod çalıştırabilir. Kullanıcılar, diğer kullanıcılar tarafından yüklenen veya otomatik olarak üretilmiş ve kullanıcı girdisi içeren dosyaları açtıklarında tehlikeye düşebilir.

External Identity Management

Other Helpful Vulnerabilities

Bu zafiyetler diğer zafiyetleri sömürmede yardımcı olabilir.

Web Servers & Middleware

Edge yığınındaki yanlış yapılandırmalar genellikle uygulama katmanında daha etkili hataların ortaya çıkmasını sağlar.

Application Frameworks & Stacks

Framework’e özgü primitifler sıkça gadget’lar, tehlikeli varsayılanlar veya framework’e ait endpoint’ler açığa çıkarır.

CMS, SaaS & Managed Platforms

Geniş yüzeye sahip ürünler genellikle bilinen exploit’ler, zayıf eklentiler veya ayrıcalıklı admin endpoint’leri ile gelir.

APIs, Buckets & Integrations

Sunucu tarafı yardımcıları ve üçüncü taraf entegrasyonları dosya ayrıştırma veya depolama katmanı zayıflıklarını açığa çıkarabilir.

Supply Chain & Identifier Abuse

Build pipeline’larını veya tahmin edilebilir tanımlayıcıları hedef alan saldırılar, geleneksel hataları sömürmeden önce ilk giriş noktası olabilir.

Web3, Extensions & Tooling

Modern uygulamalar tarayıcılara, cüzdanlara ve otomasyon pipeline’larına genişler—bu vektörleri kapsam dahilinde tutun.

Referanslar

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin