LAB 09 - WEB SECURITY

Race Condition

Ayni kaynaga gelen esit zamanli islemler atomik degilse bakiye/stock gibi kritik degerler tutarsiz hale gelebilir.

Advanced Concurrent Requests Atomicity
Ana Sayfaya Don

Withdraw Simulation

Baslangic bakiye 1000. Ayni anda birden fazla cekim istegi simule edilir. Vulnerable modda kontrol ve guncelleme ayrik oldugu icin race olusabilir.

Ogrenme Hedefleri

  • Check-then-act paternindeki race riskini gormek
  • Concurrent istekte tutarsiz bakiye sorununu anlamak
  • Lock/atomik islemlerle problemi cozmeyi ogrenmek
  • Fix sonrasi tutarlilik retesti yapmak

Bu Hata Neden Olustu?

  • Bakiye kontrolu ve dusurme islemi atomik degildi.
  • Ayni anda gelen istekler ayni bakiye snapshot'ini okudu.
  • Lost update nedeniyle final bakiye beklenenden farkli oldu.

Nasil Cozuldu?

  1. Kritik bolge lock ile seri hale getirildi.
  2. Check ve update tek atomik adimda uygulandi.
  3. Gercek sistemde DB transaction + satir kilidi kullanimi onerilir.

Adim Adim Yol Haritasi

01 Vulnerable simuleyi calistir
02 Yüksek istek sayisiyla sonucu gozlemle
03 Kök nedeni analiz et
04 Lock/atomik guncelleme ekle
05 Secure modda retest yap
06 DB transaction stratejisini not et