hacktricks/pentesting-web/web-vulnerabilities-methodology.md

154 lines
9.3 KiB
Markdown
Raw 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.

# Web Güvenlik Açıklıkları Metodolojisi
<details>
<summary><strong>AWS hacklemeyi sıfırdan kahramana öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong> ile!</strong></summary>
HackTricks'ı desteklemenin diğer yolları:
* **Şirketinizi HackTricks'te reklamınızı görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın!
* [**Resmi PEASS & HackTricks ürünlerini edinin**](https://peass.creator-spring.com)
* [**PEASS Ailesi'ni**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* **💬 [Discord grubumuza katılın](https://discord.gg/hRep4RUj7f)** veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** takip edin.**
* **Hacking püf noktalarınızı paylaşarak PR'lar göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
</details>
Her Web Pentest'te, **savunmasız olabilecek birçok gizli ve açık yer bulunmaktadır**. Bu yazı, olası tüm yerlerde güvenlik açıklıklarını aradığınızı doğrulamak için bir kontrol listesi olmayı amaçlamaktadır.
## Proxy'ler
{% hint style="info" %}
Günümüzde **web uygulamaları** genellikle **bir tür aracı proxy** kullanır, bu proxy'ler güvenlik açıklıklarını sömürmek için (kötüye) kullanılabilir. Bu güvenlik açıklıkları, savunmasız bir proxy'nin bulunmasını gerektirir, ancak genellikle arka uçta ek bir güvenlik açıklığına da ihtiyaç duyarlar.
{% endhint %}
* [ ] [**Hop-by-hop başlıkların kötüye kullanımı**](abusing-hop-by-hop-headers.md)
* [ ] [**Önbellek Zehirlenmesi/Önbellek Aldatmacası**](cache-deception/)
* [ ] [**HTTP İstek Kaçırma**](http-request-smuggling/)
* [ ] [**H2C Kaçırma**](h2c-smuggling.md)
* [ ] [**Sunucu Tarafı Dahil Etme/Kenar Tarafı Dahil Etme**](server-side-inclusion-edge-side-inclusion-injection.md)
* [ ] [**Cloudflare'ı Ortaya Çıkarma**](../network-services-pentesting/pentesting-web/uncovering-cloudflare.md)
* [ ] [**XSLT Sunucu Tarafı Enjeksiyonu**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
* [ ] [**Proxy / WAF Korumalarını Atlatma**](proxy-waf-protections-bypass.md)
## **Kullanıcı Girişi**
{% hint style="info" %}
Çoğu web uygulaması, daha sonra işlenecek olan bazı verileri girmesine izin verecektir.\
Sunucunun beklediği veri yapısına bağlı olarak, bazı güvenlik açıklıkları uygulanabilir veya uygulanmayabilir.
{% endhint %}
### **Yansıtılan Değerler**
Girilen verilerin yanıtta bir şekilde yansıtılabilirse, sayfa çeşitli sorunlara karşı savunmasız olabilir.
* [ ] [**İstemci Tarafı Şablon Enjeksiyonu**](client-side-template-injection-csti.md)
* [ ] [**Komut Enjeksiyonu**](command-injection.md)
* [ ] [**CRLF**](crlf-0d-0a.md)
* [ ] [**Asılı İşaretleme**](dangling-markup-html-scriptless-injection/)
* [ ] [**Dosya Dahil Etme/Yol Geçişi**](file-inclusion/)
* [ ] [**Açık Yönlendirme**](open-redirect.md)
* [ ] [**XSS için Prototype Kirliliği**](deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss)
* [ ] [**Sunucu Tarafı Dahil Etme/Kenar Tarafı Dahil Etme**](server-side-inclusion-edge-side-inclusion-injection.md)
* [ ] [**Sunucu Tarafı İstek Sahteciliği**](ssrf-server-side-request-forgery/)
* [ ] [**Sunucu Tarafı Şablon Enjeksiyonu**](ssti-server-side-template-injection/)
* [ ] [**Ters Sekme Yakalama**](reverse-tab-nabbing.md)
* [ ] [**XSLT Sunucu Tarafı Enjeksiyonu**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
* [ ] [**XSS**](xss-cross-site-scripting/)
* [ ] [**XSSI**](xssi-cross-site-script-inclusion.md)
* [ ] [**XS-Search**](xs-search/)
Bahsedilen güvenlik açıklıklarının bazıları özel koşullar gerektirir, diğerleri ise yalnızca içeriğin yansıtılmasını gerektirir. Hızlı bir şekilde güvenlik açıklıklarını test etmek için bazı ilginç poliglotları aşağıda bulabilirsiniz:
{% content-ref url="pocs-and-polygloths-cheatsheet/" %}
[pocs-and-polygloths-cheatsheet](pocs-and-polygloths-cheatsheet/)
{% endcontent-ref %}
### **Arama Fonksiyonları**
Fonksiyon, arka uçta belirli bir tür veriyi aramak için kullanılabilirse, belki de bu veriyi aramak için (kötüye) kullanabilirsiniz.
* [ ] [**Dosya Dahil Etme/Yol Geçişi**](file-inclusion/)
* [ ] [**NoSQL Enjeksiyonu**](nosql-injection.md)
* [ ] [**LDAP Enjeksiyonu**](ldap-injection.md)
* [ ] [**ReDoS**](regular-expression-denial-of-service-redos.md)
* [ ] [**SQL Enjeksiyonu**](sql-injection/)
* [ ] [**XPATH Enjeksiyonu**](xpath-injection.md)
### **Formlar, WebSockets ve PostMsg'ler**
Bir websocket bir mesaj gönderdiğinde veya kullanıcılara eylemler gerçekleştirmelerine izin veren bir form olduğunda güvenlik açıklıkları ortaya çıkabilir.
* [ ] [**Çapraz Site İstek Sahteciliği**](csrf-cross-site-request-forgery.md)
* [ ] [**Çapraz Site WebSocket kaçırma (CSWSH)**](websocket-attacks.md)
* [ ] [**PostMessage Güvenlik Açıklıkları**](postmessage-vulnerabilities/)
### **HTTP Başlıkları**
Web sunucusu tarafından verilen HTTP başlıklarına bağlı olarak, bazı güvenlik açıklıkları mevcut olabilir.
* [ ] [**Clickjacking**](clickjacking.md)
* [ ] [**İçerik Güvenlik Politikası atlatma**](content-security-policy-csp-bypass/)
* [ ] [**Çerez Hacking**](hacking-with-cookies/)
* [ ] [**CORS - Yanlış Yapılandırmalar ve Atlatma**](cors-bypass.md)
### **Atlatmalar**
Bazı özel işlevselliklerde, bunları atlatmak için bazı çalışmalar faydalı olabilir
* [ ] [**2FA/OTP Atlatma**](2fa-bypass.md)
* [ ] [**Ödeme Sürecini Atlatma**](bypass-payment-process.md)
* [ ] [**Captcha Atlatma**](captcha-bypass.md)
* [ ] [**Giriş Atlatma**](login-bypass/)
* [ ] [**Yarış Koşulu**](race-condition.md)
* [ ] [**Oran Sınırlaması Atlatma**](rate-limit-bypass.md)
* [ ] [**Unutulan Şifre Sıfırlama Atlatma**](reset-password.md)
* [ ] [**Kayıt Açıklıkları**](registration-vulnerabilities.md)
### **Yapılandırılmış nesneler / Belirli işlevsellikler**
Bazı işlevsellikler, **verinin çok belirli bir formatta yapılandırılmasını gerektirir** (örneğin, bir dil serileştirilmiş nesne veya XML). Bu nedenle, uygulamanın savunmasız olup olmadığını belirlemek daha kolaydır çünkü bu tür verileri işlemesi gerekmektedir.\
Bazı **belirli işlevsellikler**, **girişin belirli bir formatta kullanılması durumunda** da savunmasız olabilir (örneğin, E-posta Başlık Enjeksiyonları).
* [ ] [**Serileştirme**](deserialization/)
* [ ] [**E-posta Başlık Enjeksiyonu**](email-injections.md)
* [ ] [**JWT Güvenlik Açıklıkları**](hacking-jwt-json-web-tokens.md)
* [ ] [**XML Harici Varlık**](xxe-xee-xml-external-entity.md)
### Dosyalar
Dosya yükleme işlevlerine izin veren işlevsellikler birkaç soruna karşı savunmasız olabilir.\
Kullanıcı girdisi içeren dosyalar oluşturan işlevsellikler beklenmeyen kodları çalıştırabilir.\
Kullanıcılar, kullanıcılar tarafından yüklenen veya otomatik olarak oluşturulan ve kullanıcı girdisi içeren dosyaları açarsa tehlikeye atılabilirler.
* [ ] [**Dosya Yükleme**](file-upload/)
* [ ] [**Formül Enjeksiyonu**](formula-csv-doc-latex-ghostscript-injection.md)
* [ ] [**PDF Enjeksiyonu**](xss-cross-site-scripting/pdf-injection.md)
* [ ] [**Sunucu Tarafı XSS**](xss-cross-site-scripting/server-side-xss-dynamic-pdf.md)
### **Harici Kimlik Yönetimi**
* [ ] [**Hesap Ele Geçirme için OAUTH**](oauth-to-account-takeover.md)
* [ ] [**SAML Saldırıları**](saml-attacks/)
### **Diğer Faydalı Zayıflıklar**
Bu zayıflıklar, diğer zayıflıkları sömürmeye yardımcı olabilir.
* [ ] [**Alan/Alt Alan Ele Geçirme**](domain-subdomain-takeover.md)
* [ ] [**IDOR**](idor.md)
* [ ] [**Parametre Kirliliği**](parameter-pollution.md)
* [ ] [**Unicode Normalizasyon Zafiyeti**](unicode-injection/)
<details>
<summary><strong>Sıfırdan kahraman olmak için AWS hacklemeyi öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
HackTricks'ı desteklemenin diğer yolları:
* Şirketinizi **HackTricks'te reklamını görmek** veya **HackTricks'i PDF olarak indirmek** istiyorsanız [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın!
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
* [**The PEASS Family'yi**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)'da takip edin.
* **Hacking püf noktalarınızı göndererek PR'lar göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
</details>