🖥️
Siber Güvenlik Notları
  • WHOAMI
    • 👨‍💻Who Am I?
  • 🔭Information Gathering
    • Pentest VM Setup
    • Passive Information Gathering
    • Subdomain Enumeration
    • Host Discovery
    • Port Scanning
    • Email Enumeration
    • Leaked Passwords
    • Zafiyet Araştırma
  • 🪟Windows Pentesting
    • Windows Privilege Escalation
    • Windows Persistence
    • Windows Lateral Movement
    • AV Evasion
  • 🐧Linux Pentesting
    • Linux Privilege Escalation
    • Linux Persistence
    • Linux Lateral Movement
  • 🕸️Web Application Pentesting
    • Web Pentest Checklist
    • SQL Injection
    • NoSQL Injection
    • OS Command Injection
    • XXE Injection
    • SSTI
    • XSS
    • CSRF
    • SSRF
    • LFI/RFI
    • Insecure Deserialization
    • CORS Misconfiguration
    • Directory Traversal
    • File Upload
    • Broken Authentication
    • Broken Access Control
    • Business Logic
    • Race Conditions
    • Web Cache Deception
    • AWS Testing
    • Web Cache Poisoning
    • Clickjacking
    • API Testing
    • Broken Link Hijacking
    • HTTP Request Smuggling
    • LLM
    • HTTP Host Header Attack
    • OAuth Zafiyetleri
    • GraphQL API
    • HTTP Parameter Pollution
    • Configuration and Deployment Management Testing
    • Information Disclosure
    • Prototype pollution
    • JWT
  • 🖲️Network Service Pentesting
    • 📘Active Directory Services
      • Bleeding Edge Vulns
      • Misconfigs
      • Domain Trust
      • DNS (53)
      • Kerberos (88)
      • LDAP (389,636)
      • RPC WMI (135)
      • SMB (445)
      • WinRM - 5985
    • 📂FTP - 21
    • 🔐SSH - 22
    • 🤣Telnet - 23
    • SMTP - 25
    • TFTP - 69 UDP
    • HTTP - 80,443
      • Apache
      • Joomla
      • Drupal
      • Wordpress
      • WEBDAV
      • PHP
      • Laravel
    • IMAP/POP3 - 110,143,993,995
    • SNMP - 161
    • Rservices - 512
    • IPMI - 623
    • Rsync - 873
    • MSSQL - 1433
    • Oracle TNS - 1521
    • NFS - 2049
    • Docker
    • Grafana - 3000
    • MySQL - 3306
    • RDP - 3389
    • Postgresql - 5432
    • Redis - 6379
    • JDWP - 8000
    • MongoDB - 27017
  • 🕸️Network Pentesting
    • ARP Poisoning
  • 📞Android Pentesting
    • Android Derleme Süreci
    • Reversing
    • Rooting
    • Burp Suite Sertifikası
    • SSL Pinning Bypass
    • Patching
    • MobSF Kurulumu
    • Flutter Pentesting
  • 📰Teori
    • Güvenlik Ürünleri
    • OSI
    • Security Principles
  • Diger
    • Hacking Gadgets
      • Wifi Pineapple
      • Pwnagotchi
    • Stego
    • Buffer Overflow
    • Phishing
    • Nessus
    • DDOS Attacks
    • MSFConsole
  • ⏪Reverse
    • GCC Reverse
    • Python Reverse
    • Flare VM
    • Remnux
  • 🛜Wireless Pentesting
    • Wireless Pentest
    • Wireless V2
Powered by GitBook
On this page
  • Web Cache Poisoning Nedir?
  • Saldırı Yöntemleri
  • Cache Kontrolü
  • Parametre Kontrolü
  • Cookie ile Poisoning
  • X-Forwarded-Host ile Poisoning
  • X-Original-URL ile Poisoning
  • X-Forwarded-Host ve X-Forwarded-Scheme ile Poisoning
  • URL Parametresi ile Poisoning
  • Parametre Gizleme
  • Parametreyi Body'de Gönderme
  • URL Normalization
  • Araçlar

Was this helpful?

  1. Web Application Pentesting

Web Cache Poisoning

PreviousAWS TestingNextClickjacking

Last updated 1 year ago

Was this helpful?

Web Cache Poisoning Nedir?

Web cache poisoning, bir saldırganın bir web sunucusunun ve cache'in davranışını istismar ederek diğer kullanıcılara zararlı bir HTTP yanıtı göndermesini sağlayan gelişmiş bir tekniktir.

Temel olarak, Web cache poisoning iki aşamadan oluşur. İlk olarak, saldırganın back-end sunucudan bir tür tehlikeli payload içeren bir yanıtı nasıl ortaya çıkaracağını bulması gerekir. Başarılı olduklarında, yanıtlarının önbelleğe alındığından ve daha sonra hedeflenen kurbanlara sunulduğundan emin olmaları gerekir.

Zehirlenmiş bir web önbelleği, XSS, JavaScript injection, open redirection gibi güvenlik açıklarından yararlanarak çok sayıda farklı saldırıyı dağıtmak için potansiyel olarak yıkıcı bir araç olabilir.

Saldırı Yöntemleri

Cache Kontrolü

Bu saldırının yapılabilmesi için sayfanın cachelendiğini kontrol etmemiz gerekli. Bunu burp pasif taramada gösterir. Aynı zamanda response içinde aşağıdaki gibi headerlar var ise anlayabiliriz.

# Cache'e Yükleme
Age: 0
X-Cache: miss

# Cache'ten Alma
Age: 1
X-Cache: hit

Parametre Kontrolü

Param miner eklentisinin guess everything! seçeneği ile hangi başlık veya parametre yansıyor öğrenebiliriz.

Cookie ile Poisoning

Eğer cookieler yanıtta yansıyorsa xss tetiklenebilir.

Cookie: fehost=prod-cache-01

X-Forwarded-Host ile Poisoning

X-Forwarded-Host: example.com

X-Original-URL ile Poisoning

Eğer bu başlık ile cache tetiklenmiyorsa kullanıcıları istediğimiz url'e yönlendirebiliriz.

X-Original-URL: /foo\bar

X-Forwarded-Host ve X-Forwarded-Scheme ile Poisoning

X-Forwarded-Scheme: nothttps
X-Forwarded-Host: example.com

URL Parametresi ile Poisoning

Eğer url parametresi sayfada yansıyorsa fakat cache mekanizmasını etkilemiyorsa cache poisoning yapılabilir.

Parametre Gizleme

Eğer bir isteğe parametre eklediğinde cache etkileniyorsa & karakteri ; karakterini kullanarak eklemeyi deneyebiliriz.

https://example.com?q=foobar;x=payload

Parametreyi Body'de Gönderme

Eğer bir parametre URL parametresi olarak gönderildiğinde cache tetikleniyorsa aynı parametreyi body'de göndererek cache tetiklenmemesini sağlayabiliriz.

GET /?page=main

GET /?page=main

page=payload

URL Normalization

Normalde encode edildiği için çalışmayan bir xss payload cache edildikten sonra gösterildiğinde tetiklenebilir. Çünkü bazen cache mekanizması URL decode yapabilir.

Araçlar

Burp Param Miner :

🕸️
https://portswigger.net/bappstore/17d2949a985c4b7ca092728dba871943