[Owasp-turkey] [netsec] Re: Under DDos Attack

Ferruh Mavituna ferruh at mavituna.com
Wed Nov 5 22:00:08 EST 2008


Simdi tabii ki haklisin firewall bu istekleri gorebiliyor ama isteklerin
gercek bir kullanicidan mi saldirgandan mi oldugunu bilmiyor. Dolayisiyla
firewall saldirganin yaptigi bit GET istegi ile gercek bir kullanicinin
yaptigi GET istegini ayirt edemeyecektir, bunu en iyi yapabilmek icin istegi
anlayabilmek lazim. Olay application seviyesine gelince session vs. gibi
cozumler isin icine giriyor.

Mesela diyelim ki firewall da 80 portuna 10 sn. 50 istek limiti koydunuz,
firewall bu istekler resimlere mi? Javascriptlere mi, yoksa PHP ye mi
yapiliyor bilemeyecek, yani PHP ye 50 GET istegi yapan kisi ile ana sayfayi
ziyaret edip 50 kaynaga istek yapan iki kiside banlanmis olacak ki, bu
kaynak tuketiminden daha gecerli bir DoS olabilir :)

Simdi Musa soylediklerine bakilirsa olay agir PHP de (Oscommerce hakikatan
hantal) ve MySQL de kitleniyor. Bunun anlami eger apache noktasinda bu ayrim
yapilabilirse sorun cikmayacaktir. Eger

Tabi binlerce ip adresinden gelecek birer istek karsisinda cok birsey
> yapamaz ama boyle bir saldiri tipi ile henuz karsilasmadim ben.


Acikcasi benim yakin donemde karsilastigim bir saldiri bu sekildeydi,
nitekim ne application seviyesinde ne de firewall seviyesinde elimizdeki
kisitli butce ile guzel bir cozum uretemedik, bir noktadan sonra DDoS
saldiri basarili ise, ayni OSYM ornegi gibi konu tamamen fiziksel donanim ve
uygulamanin kalitesine dayaniyor. Bunun bir ornegi de Iframe ile DoS yapmak.


Mesela ebay' i hack etti birisi ebay' in anasayfasina iframe ile sizin
sayfayi acti. Bunun anlami ebay' in trafiginin %50 sinin size gelmesi demek
bu da slashdot effect gibi bir durum, 10 dk. icerisinde sistem cokecek cunku
yapabilecek cok bir sey yok. Bu application seviyesinde (bir noktaya kadar)
cozulebilir ama firewall seviyesinde bu ayrimi yapmak mumkun degil.

OSYM orneginde yapilacak sey buyuk sitelerin yaptigi, load balancer arkasina
gerektigi kadar web server ve database clustering. Ve uygulamaya gore
donanim, mesela uygulama tum datayi RAM de tutabilecek gibiyse ona gore
donanima agirlik vermek.

2008/11/5 Huzeyfe ONAL <huzeyfe at lifeoverip.net>

> Selamlar,
>
> bir saldirgan GET flood islemini nasil yapabilir dusunelim;
>
> ilk bakista benim aklima bu isin farkli IP adreslerinden yuzlerce/binlerce
> http istegi olusturrarak yapilmasi geliyor.
>
> Oncelikle GET flood yapabilmesi icin TCP 3way handshake islemini tamamlamak
> zorundadir. Demekki yapilacak her GET flood islemi bizim Firewall tarafindan
> gorulecek.
>
> Yani ben Firewallumda SYNProxy ve stateful tracking ozelliklerini
> kullanarak farkli ip adreslerinden gelecek get floodlarini TCP/IP
> seviyesinde gorebilecegim icin daha web sunucuya ulastirmadan
> engelleyebilirim. Tabi binlerce ip adresinden gelecek birer istek karsisinda
> cok birsey yapamaz ama boyle bir saldiri tipi ile henuz karsilasmadim ben.
>
>
> Firewalllar icin Linux Iptables'in tarpitting patch'i var, Free/OpenBSD
> Packet Filter tum bu ozellikleri yamasiz sagliyor.
>
>
> Ferruh Mavituna wrote:
>
>>
>>    Benim gordugum DDOS konusunda yapilan en buyuk yanlis islem
>>    saldiriyi application seviyesinde eritmeye calismak ki bu da
>>    network seviyesine gore %60-%70 daha pahaliya mal oluyor.
>>
>>
>> Durumuna gore degisir tabii ki, ama hafif zeki olan herhangi bir GET
>> istegi bazli DDoS da firewall bazinda engelleme yapmak (/firewall cok zeki
>> bir sey degils/e) pek mumkun degil. Tahminim buradaki durumda o. Ama HTTP
>> istegini analiz edebilen cozumler varsa sonuc uretecektir, bu konuda oneri
>> varsa acikcasi bende merak ediyorum. Cunku sık sık karsima gelen konulardan
>> biri ve maalesef pek basit bir cozumu yok.
>>
>>
>> 2008/11/5 Huzeyfe ONAL <huzeyfe at lifeoverip.net <mailto:
>> huzeyfe at lifeoverip.net>>
>>
>>
>>    Musa selamlar,
>>
>>    mumkunse kullanilan software firewall'un ismini ogrenebilir miyim?
>>    Zira bana degerler cok az geldi. Yani en basit Firewall bile bu
>>    degerler karsisinda rahatlikla ayakta durur. Es zamanli 30000~
>>    paket ya da ortalama 20000~ state durumunda bile %5 civarinda CPU
>>    harcayan software firewallar var.
>>
>>    Mesela OpenBSD Packet Filter ve benzeri firewallar icin yogun
>>     paketler 80. port(uygulamaya ulasmadan)a gitmeden network
>>    seviyesinde bloklanabilir. Bunun icin firewall'a  tek bir ip
>>    adresinden su porta max baglanti sayisi y dir demek yeterli.
>>
>>    Paketler uygulama seviyesine ciktiginda engellemek hem daha zor
>>    hem de cok daha fazla kaynak tuketiyorlar.
>>
>>    Benim gordugum DDOS konusunda yapilan en buyuk yanlis islem
>>    saldiriyi application seviyesinde eritmeye calismak ki bu da
>>    network seviyesine gore %60-%70 daha pahaliya mal oluyor.
>>
>>
>>
>>
>>    Musa Ulker wrote:
>>
>>        Tekrar merhabalar,
>>
>>        Ferruh; Çok ilginçtir denediğim modlar kaldıramadı apachede
>>        ciddi yük
>>        durmaya devam etti.  Buradaki bottleneck software firewall
>>        atakları
>>        durdurmadı yeterli olmadı. Yüklenen ip sayısı başta 1 5 10
>>        diye değil
>>        de aynı anda 100+ şeklinde olunca ve iplerde değiştiği için
>>        çok kısa
>>        aralıklarla (1dkdan az süre için) yeni ipleri yakalayamadı ve
>>        apacheyi, apachede çalışan uygulama da mysql i kilitledi..
>>
>>        Benim örnek verdiğim %30 sadece bir tane apache forku için.
>>        Maksimum
>>        olanı içindi. Firewall çalışmadan sistem kitleniyordu, ssha bile
>>        erişilmiyordu. Firewallla CPU kullanımı %80-85 civarında
>>        seyretmeye
>>        başladı. Aynı anda mevcut 80 portuna connection sayısı 200+
>>        civarındaydı..
>>
>>        Saldırı detayı: Connect flood. Sürekli GET isteği. Saldırı çalışan
>>        uygulama üzerinden mysql i devre dışı bırakmaya yönelik olduğunu
>>        düşünüyorum. Daha önceden benzer bir saldırrıyla karşılaşmıştım..
>>        Gelen paketler gayet normal gözüküyor. Arada malformed
>>        requestlerde
>>        geliyordu ama başka bir kaynaktan olabilir.
>>
>>        Kubilay; Rusya IP blokları konusunda araştırma yaparken şöyle bir
>>        siteyle karşılaştım, incelemenizi tavsiye ederim:
>>        http://www.countryipblocks.net/
>>
>>        Bedirhan; Apache KeepAlive konfigurasyonda kapalıydı. Apache
>>        backdoor
>>        module gibi birşeyler buldum ama bulduğum apache üzerinden
>>        backdoor
>>        açan bir moduledu. Senin bahsettiğin modülü paylaşır mısın?
>>
>>        DNS güncellemsi aklıma geldi ama zararlarını kıyaslayınca çözümler
>>        arasından çıkardım..
>>
>>        Aklın yolu bir: HW firewallarla çözüldü olay. Reverse proxy
>>        ile başka
>>        bir sunucuya yönlendirildi istekler ve o sunucu önünde Layer 7
>>        filtering yapıldı. (Juniper üzerinden custom filterlarla)
>>
>>        Herkese gösterdiği açılımlar ve verdiği cevaplardan dolayı
>>        teşekkür ediyorum..
>>
>>        Selamlar,
>>
>>        M.Musa Ülker
>>
>>
>>        2008/11/4 Ferruh Mavituna <ferruh at mavituna.com
>>        <mailto:ferruh at mavituna.com>>:
>>
>>            Merhabalar Musa,
>>
>>            Benim merak ettigim esas kilit noktasi neresi? (gavurlarin
>>            tabiri ile
>>            bottleneck). Yani application da mi is kitleniyor, ondeki
>>            firewall mu
>>            sapitmaya basliyor, load balancer mi vs. ?
>>
>>            Apache process' i %30 ise , uygulamada veya Apache de bir
>>            sorun  yok diye
>>            varsayiyorum. Database server ne alemde onda da ciddi bir
>>            yuklenme yok mu?
>>
>>            Bir de saldirinin detaylari ne? Syn-flood, connect-flood,
>>            yogun application
>>            istekleri (HTTP vs.)?  veya baska bir port acikta onun
>>            uzerinden mi bir sey
>>            yapiliyor? gelen paketlerin tum degerleri normal mi?
>>            Mesela tuhaf window
>>            size lari var mi vs.
>>
>>            Sonucta DDoS ataklari engellemek cok zor olabiliyor ama bu
>>            bilgileri
>>            verirsen daha detayli yardimci olunabilir sanirim.
>>
>>            Iyi Calismalar,
>>
>>            2008/11/4 Musa Ulker <musaulker at gmail.com
>>            <mailto:musaulker at gmail.com>>
>>
>>                Merhabalar,
>>
>>                Dedicated bir sunucuya bir çok koldan DDos saldırısı
>>                gerçekleştiriliyor. En çok yük Apache üzerinde. Apache
>>                CPU load'ı %30u
>>                geçebiliyor farklı apache processleri çalışıyor. Türlü
>>                çalışmalar
>>                yaptım; firewallar (salt iptables, apf, csf vs)
>>                denedim, ddos
>>                protectionları test ettim ama saldırıyı tam olarak
>>                kesemedim. Birazcık
>>                yükü hafifletebildim. Zombie makinalar üzerinden
>>                saldırı halen devam
>>                ediyor.
>>
>>                Bu konuda nasıl bir yol izlemem gerekiyor?
>>
>>                Teşekkürler
>>
>>                --
>>                M.Musa Ülker
>>                _______________________________________________
>>                Owasp-turkey mailing list
>>                Owasp-turkey at lists.owasp.org
>>                <mailto:Owasp-turkey at lists.owasp.org>
>>                https://lists.owasp.org/mailman/listinfo/owasp-turkey
>>
>>
>>            --
>>            Ferruh Mavituna
>>            http://ferruh.mavituna.com
>>
>>
>>
>>
>>    ---------------------------------------------------------------------
>>    To unsubscribe, e-mail: netsec-unsubscribe at lifeoverip.net
>>    <mailto:netsec-unsubscribe at lifeoverip.net>
>>    For additional commands, e-mail: netsec-help at lifeoverip.net
>>    <mailto:netsec-help at lifeoverip.net>
>>
>>
>>
>>
>> --
>> Ferruh Mavituna
>> http://ferruh.mavituna.com
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: netsec-unsubscribe at lifeoverip.net
> For additional commands, e-mail: netsec-help at lifeoverip.net
>
>


-- 
Ferruh Mavituna
http://ferruh.mavituna.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.owasp.org/pipermail/owasp-turkey/attachments/20081106/d313535e/attachment.html 


More information about the Owasp-turkey mailing list