Business Logic Flaws Nedir
Kuralları Bozarak Sistemi Yenmek
“Sistem bozulmaz; kurallar yanlış uygulanır.”
— Ersan Karavelioğlu
Business Logic Flaws Nedir
Business Logic Flaws, uygulamanın teknik olarak doğru çalışmasına rağmen
iş kurallarının yanlış, eksik veya tutarsız uygulanması sonucu ortaya çıkan güvenlik açıklarıdır.

Kod hatasızdır;

Mantık hatalıdır.
Neden Diğer Açıklardan Daha Tehlikelidir

Çünkü
meşru işlemler kullanılır.

WAF, firewall, IDS çoğu zaman görmez.

Saldırı, kural kitabıyla yapılır.
Business Logic Hatası Nerede Başlar

İş akışı doğru tasarlanmamıştır.

“Olmaması gereken” senaryolar düşünülmemiştir.

Saldırgan boşluğu fark eder.
Teknik Açık Yoksa Güvenli mi

Hayır.

SQL Injection yoktur ama sistem yenilir.

Güvenlik sadece teknik değildir.
Klasik Bir Örnek

Sepette ürün var

Ödeme yapılmadan “tamamlandı” çağrısı

İş akışı atlanır → ürün bedava
En Sık Görüldüğü Alanlar

Ödeme ve indirim sistemleri

Rezervasyon / stok yönetimi

Yetki ve rol geçişleri

Para ve hak olan her yer risklidir.
Sıra Atlatma (Workflow Bypass)

Adım adım ilerlemesi gereken süreç

Bir endpoint ile atlanır

Kontrol yoksa kural çöker.
Oran ve Limit Hataları

“Günde 1 kez” kuralı

Paralel veya tekrarlı istekle aşılır

Limit kuralı kağıt üzerinde kalır.
Negatif Değer ve Mantık Açıkları

Negatif tutar, adet, süre

Sistem hesaplamayı tersine çevirir

Saldırı matematikle yapılır.
Rol ve Yetki Geçiş Hataları

Kullanıcı → admin akışı

Mantık yanlış kurulmuşsa mümkün olur

Yetki yükseltme “kural hatasıyla” gerçekleşir.

Business Logic vs Access Control

Access Control → Kim neye erişir

Business Logic → Ne zaman, nasıl erişir

İkisi karıştırılırsa açık doğar.

API’lerde Logic Flaw

Backend API’ler

Frontend kuralı backend doğrulamaz

“Frontend’e güven” en büyük hatadır.

Otomasyon Bu Açıkları Nasıl Kullanır

Aynı işlemi hızlı tekrar

İnsan hızının ötesinde deneme

Sistem dayanamaz.

Neden Testlerde Yakalanmaz

Unit test’ler teknik odaklıdır

“Kötü niyetli kullanım” test edilmez

Senaryo eksikliği açığı doğurur.

WAF ve Firewall Neden İşe Yaramaz

Trafik meşrudur

Payload temizdir

Mantık hatası ağda değil, iştedir.

Nasıl Tespit Edilir

Anormal kullanıcı davranışları

Beklenmeyen kazanç/kayıp

Loglar iş kuralı gözüyle okunmalıdır.

Nasıl Önlenir

İş akışlarını uçtan uca modelle

Her adımı backend’de doğrula

“Ya biri bunu ters kullanırsa?” sorusunu sor

En Büyük Yanılgı

“Kullanıcı bunu yapmaz.”

Saldırgan yapar

Güven varsayım değildir.

Son Söz
Kuralları Bilen, Sistemi Yener

Business Logic Flaws,
kodu değil, düşünceyi hack’ler.

En güçlü saldırılar, sistemin kendi kurallarıyla yapılır.

Güvenli sistem, yalnızca nasıl çalıştığını değil, nasıl suistimal edileceğini de bilir.
“Güvenlik bazen bir duvar değil, bir soru işaretidir.”
— Ersan Karavelioğlu