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

157 lines
8.9 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 Vulnerabilities Methodology
{% hint style="success" %}
AWS Hacking'i öğ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'i öğ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** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**'ı takip edin.**
* **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 %}
Her Web Pentest'te, **birçok gizli ve belirgin yerin savunmasız olabileceği** durumlar vardır. Bu yazı, tüm olası yerlerde zafiyet aradığınızı doğrulamak için bir kontrol listesi olarak tasarlanmıştır.
## Proxiler
{% hint style="info" %}
Günümüzde **web** **uygulamaları** genellikle bazı tür **aracı** **proxy'ler** kullanır, bunlar zafiyetleri istismar etmek için (kötüye) kullanılabilir. Bu zafiyetlerin var olması için bir savunmasız proxy'nin mevcut olması gerekir, ancak genellikle arka uçta da bazı ek zafiyetler gerektirir.
{% endhint %}
* [ ] [**Hop-by-hop başlıklarının kötüye kullanılması**](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 Koruma Aşma**](proxy-waf-protections-bypass.md)
## **Kullanıcı girişi**
{% hint style="info" %}
Çoğu web uygulaması, **kullanıcıların daha sonra işlenecek bazı verileri girmesine izin verir.**\
Verilerin yapısına bağlı olarak, sunucunun beklediği bazı zafiyetler uygulanabilir veya uygulanmayabilir.
{% endhint %}
### **Yansıtılan Değerler**
Eğer girilen veriler bir şekilde yanıtta yansıtılabiliyorsa, 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 Prototip Kirlenmesi**](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 Nabbing**](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-Arama**](xs-search/)
Bahsedilen zafiyetlerin bazıları özel koşullar gerektirirken, diğerleri yalnızca içeriğin yansıtılmasını gerektirir. Zafiyetleri hızlı bir şekilde test etmek için bazı ilginç poliglotlar bulabilirsiniz:
{% content-ref url="pocs-and-polygloths-cheatsheet/" %}
[pocs-and-polygloths-cheatsheet](pocs-and-polygloths-cheatsheet/)
{% endcontent-ref %}
### **Arama işlevleri**
Eğer işlev, arka uçta bazı verileri aramak için kullanılabiliyorsa, belki de bunu keyfi verileri 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, WebSocket'ler ve PostMsg'ler**
Bir websocket bir mesaj gönderdiğinde veya kullanıcıların eylemler gerçekleştirmesine izin veren bir form olduğunda zafiyetler ortaya çıkabilir.
* [ ] [**Cross Site İstek Sahteciliği**](csrf-cross-site-request-forgery.md)
* [ ] [**Cross-site WebSocket kaçırma (CSWSH)**](websocket-attacks.md)
* [ ] [**PostMessage Zafiyetleri**](postmessage-vulnerabilities/)
### **HTTP Başlıkları**
Web sunucusu tarafından verilen HTTP başlıklarına bağlı olarak bazı zafiyetler mevcut olabilir.
* [ ] [**Clickjacking**](clickjacking.md)
* [ ] [**İçerik Güvenlik Politikası aşma**](content-security-policy-csp-bypass/)
* [ ] [**Çerez Hacking'i**](hacking-with-cookies/)
* [ ] [**CORS - Yanlış Yapılandırmalar & Aşma**](cors-bypass.md)
### **Aşmalar**
Bazı özel işlevlerde, bunları aşmak için bazı geçici çözümler yararlı olabilir.
* [ ] [**2FA/OTP Aşma**](2fa-bypass.md)
* [ ] [**Ödeme Sürecini Aşma**](bypass-payment-process.md)
* [ ] [**Captcha Aşma**](captcha-bypass.md)
* [ ] [**Giriş Aşma**](login-bypass/)
* [ ] [**Yarış Koşulu**](race-condition.md)
* [ ] [**Hız Sınırı Aşma**](rate-limit-bypass.md)
* [ ] [**Unutulan Şifreyi Sıfırlama Aşma**](reset-password.md)
* [ ] [**Kayıt Zafiyetleri**](registration-vulnerabilities.md)
### **Yapılandırılmış nesneler / Özel işlevler**
Bazı işlevler, **verilerin çok özel bir formatta yapılandırılmasını** gerektirir (örneğin, bir dil serileştirilmiş nesne veya XML). Bu nedenle, uygulamanın bu tür verileri işleyip işlemediğini belirlemek daha kolaydır.\
Bazı **özel işlevler**, **girişin belirli bir formatı kullanıldığında** 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 Zafiyetleri**](hacking-jwt-json-web-tokens.md)
* [ ] [**XML Harici Varlık**](xxe-xee-xml-external-entity.md)
### Dosyalar
Dosya yüklemeye izin veren işlevler, çeşitli sorunlara karşı savunmasız olabilir.\
Kullanıcı girişini içeren dosyalar oluşturan işlevler beklenmedik kod çalıştırabilir.\
Kullanıcıların yüklediği veya kullanıcı girişini içeren otomatik olarak oluşturulan dosyaları açan kullanıcılar tehlikeye girebilir.
* [ ] [**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**
* [ ] [**OAUTH ile Hesap Ele Geçirme**](oauth-to-account-takeover.md)
* [ ] [**SAML Saldırıları**](saml-attacks/)
### **Diğer Yardımcı Zafiyetler**
Bu zafiyetler, diğer zafiyetleri istismar etmeye yardımcı olabilir.
* [ ] [**Alan/Alt Alan ele geçirme**](domain-subdomain-takeover.md)
* [ ] [**IDOR**](idor.md)
* [ ] [**Parametre Kirlenmesi**](parameter-pollution.md)
* [ ] [**Unicode Normalizasyon zafiyeti**](unicode-injection/)
{% hint style="success" %}
AWS Hacking'i öğ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'i öğ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** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**'ı takip edin.**
* **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 %}