mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-25 22:20:43 +00:00
158 lines
9.6 KiB
Markdown
158 lines
9.6 KiB
Markdown
# 403 & 401 Bypass'leri
|
||
|
||
{% hint style="success" %}
|
||
AWS Hacking'i öğrenin ve pratik yapın:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Eğitim AWS Kırmızı Takım Uzmanı (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 Eğitim GCP Kırmızı Takım Uzmanı (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)**'i 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 %}
|
||
|
||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||
|
||
**Zafiyet değerlendirmesi ve penetrasyon testi için anında kullanılabilir kurulum**. Recon'dan raporlamaya kadar 20'den fazla araç ve özellik ile her yerden tam bir pentest gerçekleştirin. Pentester'ların yerini almıyoruz - onlara daha derinlemesine araştırma yapmaları, shell'leri patlatmaları ve eğlenmeleri için biraz zaman kazandırmak amacıyla özel araçlar, tespit ve istismar modülleri geliştiriyoruz.
|
||
|
||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||
|
||
## HTTP Fiilleri/Yöntemleri Fuzzing
|
||
|
||
Dosyaya erişmek için **farklı fiiller** kullanmayı deneyin: `GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK`
|
||
|
||
* Yanıt başlıklarını kontrol edin, belki bazı bilgiler verilebilir. Örneğin, `Content-Length: 55` ile **HEAD** için **200 yanıtı**, **HEAD fiilinin bilgiyi erişebileceği** anlamına gelir. Ancak, bu bilgiyi dışarı çıkarmanın bir yolunu bulmanız gerekir.
|
||
* `X-HTTP-Method-Override: PUT` gibi bir HTTP başlığı kullanmak, kullanılan fiili geçersiz kılabilir.
|
||
* **`TRACE`** fiilini kullanın ve çok şanslıysanız, belki yanıtınızda **ara proxy'ler tarafından eklenen başlıkları** görebilirsiniz, bu da faydalı olabilir.
|
||
|
||
## HTTP Başlıkları Fuzzing
|
||
|
||
* **Host başlığını** rastgele bir değere değiştirin ([burada işe yaradı](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
|
||
* Kaynağa erişmek için [**diğer Kullanıcı Ajanlarını**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/User-Agents/UserAgents.fuzz.txt) kullanmayı deneyin.
|
||
* **HTTP Başlıklarını Fuzzing**: HTTP Proxy **Başlıkları**, HTTP Kimlik Doğrulama Temel ve NTLM brute-force (sadece birkaç kombinasyon ile) ve diğer teknikleri kullanmayı deneyin. Bunu yapmak için [**fuzzhttpbypass**](https://github.com/carlospolop/fuzzhttpbypass) aracını oluşturdum.
|
||
|
||
* `X-Originating-IP: 127.0.0.1`
|
||
* `X-Forwarded-For: 127.0.0.1`
|
||
* `X-Forwarded: 127.0.0.1`
|
||
* `Forwarded-For: 127.0.0.1`
|
||
* `X-Remote-IP: 127.0.0.1`
|
||
* `X-Remote-Addr: 127.0.0.1`
|
||
* `X-ProxyUser-Ip: 127.0.0.1`
|
||
* `X-Original-URL: 127.0.0.1`
|
||
* `Client-IP: 127.0.0.1`
|
||
* `True-Client-IP: 127.0.0.1`
|
||
* `Cluster-Client-IP: 127.0.0.1`
|
||
* `X-ProxyUser-Ip: 127.0.0.1`
|
||
* `Host: localhost`
|
||
|
||
Eğer **yol korunuyorsa**, bu diğer başlıkları kullanarak yol korumasını aşmayı deneyebilirsiniz:
|
||
|
||
* `X-Original-URL: /admin/console`
|
||
* `X-Rewrite-URL: /admin/console`
|
||
* Eğer sayfa **bir proxy'nin arkasındaysa**, belki de proxy, özel bilgilere erişmenizi engelliyordur. [**HTTP İstek Kaçırma**](../../pentesting-web/http-request-smuggling/) **veya** [**hop-by-hop başlıkları**](../../pentesting-web/abusing-hop-by-hop-headers.md)** istismar etmeyi deneyin.**
|
||
* Farklı yanıtlar aramak için [**özel HTTP başlıklarını**](special-http-headers.md) fuzzing yapın.
|
||
* **HTTP Yöntemlerini** fuzzing yaparken **özel HTTP başlıklarını** fuzzing yapın.
|
||
* **Host başlığını kaldırın** ve belki de korumayı aşabileceksiniz.
|
||
|
||
## Yol **Fuzzing**
|
||
|
||
Eğer _/path_ engellenmişse:
|
||
|
||
* _**/**_**%2e/path _kullanmayı deneyin (eğer erişim bir proxy tarafından engelleniyorsa, bu korumayı aşabilir). Ayrıca**\_\*\* /%252e\*\*/path (çift URL kodlaması) deneyin.
|
||
* **Unicode bypass** deneyin: _/**%ef%bc%8f**path_ (URL kodlu karakterler "/" gibidir) bu nedenle geri kodlandığında _//path_ olacak ve belki de _/path_ adı kontrolünü aşmış olacaksınız.
|
||
* **Diğer yol bypass'leri**:
|
||
* site.com/secret –> HTTP 403 Yasak
|
||
* site.com/SECRET –> HTTP 200 Tamam
|
||
* site.com/secret/ –> HTTP 200 Tamam
|
||
* site.com/secret/. –> HTTP 200 Tamam
|
||
* site.com//secret// –> HTTP 200 Tamam
|
||
* site.com/./secret/.. –> HTTP 200 Tamam
|
||
* site.com/;/secret –> HTTP 200 Tamam
|
||
* site.com/.;/secret –> HTTP 200 Tamam
|
||
* site.com//;//secret –> HTTP 200 Tamam
|
||
* site.com/secret.json –> HTTP 200 Tamam (ruby)
|
||
* Aşağıdaki durumlarda [**bu listeyi**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/Unicode.txt) kullanın:
|
||
* /FUZZsecret
|
||
* /FUZZ/secret
|
||
* /secretFUZZ
|
||
* **Diğer API bypass'leri:**
|
||
* /v3/users\_data/1234 --> 403 Yasak
|
||
* /v1/users\_data/1234 --> 200 Tamam
|
||
* {“id”:111} --> 401 Yetkisiz
|
||
* {“id”:\[111]} --> 200 Tamam
|
||
* {“id”:111} --> 401 Yetkisiz
|
||
* {“id”:{“id”:111\}} --> 200 Tamam
|
||
* {"user\_id":"\<legit\_id>","user\_id":"\<victims\_id>"} (JSON Parametre Kirliliği)
|
||
* user\_id=ATTACKER\_ID\&user\_id=VICTIM\_ID (Parametre Kirliliği)
|
||
|
||
## **Parametre Manipülasyonu**
|
||
|
||
* **param değerini değiştirin**: **`id=123` --> `id=124`**
|
||
* URL'ye ek parametreler ekleyin: `?`**`id=124` —-> `id=124&isAdmin=true`**
|
||
* Parametreleri kaldırın
|
||
* Parametrelerin sırasını değiştirin
|
||
* Özel karakterler kullanın.
|
||
* Parametrelerde sınır testi yapın — _-234_ veya _0_ veya _99999999_ gibi değerler sağlayın (sadece bazı örnek değerler).
|
||
|
||
## **Protokol versiyonu**
|
||
|
||
HTTP/1.1 kullanıyorsanız **1.0 kullanmayı deneyin** veya **2.0'ı destekleyip desteklemediğini test edin**.
|
||
|
||
## **Diğer Bypass'ler**
|
||
|
||
* Alan adının **IP** veya **CNAME**'sini alın ve **doğrudan iletişim kurmayı deneyin**.
|
||
* **Sunucuyu zorlayın** yaygın GET istekleri göndererek ([Bu adam için Facebook'ta işe yaradı](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)).
|
||
* **Protokolü değiştirin**: http'den https'ye veya https'den http'ye
|
||
* [**https://archive.org/web/**](https://archive.org/web/) adresine gidin ve geçmişte o dosyanın **dünya çapında erişilebilir olup olmadığını** kontrol edin.
|
||
|
||
## **Brute Force**
|
||
|
||
* **Şifreyi tahmin edin**: Aşağıdaki yaygın kimlik bilgilerini test edin. Kurban hakkında bir şey biliyor musunuz? Ya da CTF meydan okuma adını mı?
|
||
* [**Brute force**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** Temel, digest ve NTLM kimlik doğrulamasını deneyin.
|
||
|
||
{% code title="Yaygın kimlik bilgileri" %}
|
||
```
|
||
admin admin
|
||
admin password
|
||
admin 1234
|
||
admin admin1234
|
||
admin 123456
|
||
root toor
|
||
test test
|
||
guest guest
|
||
```
|
||
{% endcode %}
|
||
|
||
## Otomatik Araçlar
|
||
|
||
* [https://github.com/lobuhi/byp4xx](https://github.com/lobuhi/byp4xx)
|
||
* [https://github.com/iamj0ker/bypass-403](https://github.com/iamj0ker/bypass-403)
|
||
* [https://github.com/gotr00t0day/forbiddenpass](https://github.com/gotr00t0day/forbiddenpass)
|
||
* [Burp Eklentisi - 403 Bypass](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
|
||
* [Forbidden Buster](https://github.com/Sn1r/Forbidden-Buster)
|
||
* [NoMoreForbidden](https://github.com/akinerk/NoMoreForbidden)
|
||
|
||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||
|
||
**Zafiyet değerlendirmesi ve penetrasyon testi için anında kullanılabilir kurulum**. 20'den fazla araç ve özellik ile her yerden tam bir pentest gerçekleştirin; keşiften raporlamaya kadar. Pentester'ların yerini almıyoruz - onlara daha derinlemesine araştırma yapmaları, shell'leri patlatmaları ve eğlenmeleri için biraz zaman kazandırmak amacıyla özel araçlar, tespit ve istismar modülleri geliştiriyoruz.
|
||
|
||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||
|
||
{% hint style="success" %}
|
||
AWS Hacking'i öğrenin ve pratik yapın:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Eğitim AWS Kırmızı Takım Uzmanı (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 Eğitim GCP Kırmızı Takım Uzmanı (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)** bizi 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 %}
|