ASP Rehberi , ASPRehberi.Net - ASP ve ASP.NET Konuları , Scriptleri , Hosting , Programlar , Araçlar

 # 8 Eylul 2008, Pazartesi
 
 #  Kategoriler » ASP » Makaleler
 

Flood koruması Bu içeriğin puanı : 4,4 5257 Görüntülenme
Evet Flood ile yapılan saldırılardan bahsedeceğim.ılk önce Flood'un nasıl çalıştığı ve etkilerinden bahsedeceğim.

Flood'un amacı aynı verileri çok fazla göndererek veritabanın çökmesine yol açmaktır.Ama bunu yapmakta kolay değildir.Çünkü SQL server'larda nerdeyse sınırsız denilebilecek kadar veri tutulabiliyor.
Ben size Access de olsa veritabanınız nasıl önleyebileceğinizden bahsediceğim.
Kendi geliştirdiğim bir yöntem ve sizinle paylaşmak istiyorum.

Bunu şu şekilde düşündüm.

Siz bir form'dan gelen bilgilerinizi alıyorsunuz ve veritabanınıza kayıt yaptırıyorsunuz.

Diyelimki form ismimiz "mesaj" olsun(Ziyaretçi Defteri olabilir yada forum gibi).

Bu doldurulan form ise kaydet.asp ye gidecek ve mesaj adlı form'umumuz post yöntemiyle gönderilecek.Yada farketmez Get yöntemi ile de olur.Seçim sizin

Bu form, kaydet.asp ye gönderilirken Sunucu değişkenimiz olan "Session.sessionID" de gönderilecektir.Örnek vereyim birtane.

<form method="POST" action="kaydet.asp?SID=<%=session.sessionID%>">

Böylece kaydet.asp'ye "SID" adlı değişkenimizle birlikte gönderilecek bilgilerimiz.

Gelelim kaydet.asp'ye

kaydet.asp de kayıt işlemimizi bir if'li komut ile yapacağız'ki aksi durumda kayıt yapılmasın.
ılk önce SID değişkenini querystring yardımıyla alacağız ve gerçek "session.sessionID" ile aynı olup olmadığını kontrol ettireceğiz.Bunun anlamı ise bilgilerin bir önceki sayfadan gelip gelmediğini kontrol etmektir.Dışarıdan gönderilen bir veride hata mesajı verdireceğiz ve kayıt yaptırtmayacağız.

Gelelim kodlarımıza

<%
if NOT request.querystring("SID") = session.sessionID then
response.write "Bu form bilgilerini başka yerden gelmiştir."
response.end
else

' kayıt işlemlerimiz

end if
%>

Böylece herkişiye siteye girişinde verilen sessionID'miz gönderilen ile eşit değilse kayıt işlemine izin verilmiyor.

Kısaca Flood sorununu önlemiş olduk.

Herkese Mutlu yıllar...

 Telif : Serdar Toros | Eklenme : 1 Ocak 2005, Cumartesi
 
 

Bu içerik hakkında 8 yorum yapılmış

 

 
İsminiz :
Mail Adresiniz :
Yorum
:
   

     

// Gizle
ASP Rehberi Mini Editör

  Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle
Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle
 Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle  Form 'a gülücük ekle Form 'a gülücük ekle Form 'a gülücük ekle


 
 
Yorumlar(8) Not : Yorumlar zamana göre son yorumdan ilk yoruma doğru(azalan) biçimde sıralanmıştır.
Yorumlarınız site yöneticileri tarafından onaylandıktan sonra eklenecektir.
+ En güzel flood koruması (Yani Site Dışından Gelenler için)
Referer URL kullanımıdır

Örnek : <%
nereden=Request.ServerVariables("HTTP_REFERER")
If not nereden="http://www.orneksite.com/Register.asp" Then
Response.Redirect "http://www.ornek.com/Register.asp"
Response.End
End if
%>
Yazan : Fatih KARA | Zaman : 28 Ocak 2007 Pazar, Saat 11:38
 
+ sonuçta client a gidecek olan veri session id dir.

<form name="hede" kaydet.asp?SID=105151> gibi bir veri gider. ben çok rahatlıkla gelen verideki sid değerini alıp tekrar karşı tarafa yollattırabilirim?
Yazan : kıvanc | Zaman : 31 Ağustos 2006 Perşembe, Saat 15:43
 
+ Gürkan.. session id verince her hangi bir programdan binlerce kayıt gönderemiyorlar.. böylece db şişmiyor ve çökmüyor...
Yazan : Melih Uçar | Zaman : 17 Eylül 2005 Cumartesi, Saat 18:18
 
+ Merhaba,
  Bu flood olayını biraz daha açarmısınız lütfen?yani ben tam olarak bilmiyorum nasıl bir saldırı olacak,sizin session ile atadığınız takdirde nasıl bir engelleme oluyor?ben şu an dosyalarıma ekledim sizin kodunuzu teşekkür ederim.
Yazan : Gürkan | Zaman : 17 Eylül 2005 Cumartesi, Saat 02:11
 
+ Güzel Makale Ama Bunu da Aşmanın Bir Yolu Vardır Sanırım
Yazan : ScorLeX | Zaman : 28 Ağustos 2005 Pazar, Saat 13:00
 
+ güzel bi makale.. sitede köyü olan ne var ki



Yazan : a | Zaman : 28 Ağustos 2005 Pazar, Saat 01:26
 
 .: Sayfalar  1. 2.
 
# Kategori'nin Yenileri

İsim

Hit

Turuncu Galeri (tr)

3590

Haydi okullar internete.... (tr)

264

rc0der Reklam Sistemi v1.0 (tr)

811

HiddenChest İş ve Bayilik Başvuru Formu (tr)

1714

TradeSE E-Ticaret Yazılımı (tr)

459

Link Portal 2007 3 Temalı (tr)

1980

Gupse Medya Linkleri v0.1 (tr)

536

HiddenChest Ziyaretçi Defteri (tr)

1834

HiddenChest Kayan Haber (tr)

2377

HiddenChest Aktif/Pasif Haber Sistemi 1.1 (tr)

1133

 
 
# Kategori'nin Popülerleri

İsim

Hit

IIS Kurulumu ve Yazma İzni

76702

Üyelik Sistemi Yapımı

55501

Veritabanı Tablo İşlemleri

35241

MS SQL Server - 1

33812

Hazır Site v2.1 (tr)

29613

Klasör Şeklinde Linkler(404 Yönetimi)

24578

Sayfaları şifreleme(ENCODE)

22319

MS SQL Server - 2

21984

Include Yöntemleri

18090

MS SQL Server - 3

15660

 
  # AKTİF ÜYELER
Aktif üye yok
 
 
 

 
 ASP Rehberi © 2004 - 2008
 Tasarım ve Programlama : Serdar TOROS
 ASPRehberi.Net web sitesi SiDEnet sunucularından yayınlanmaktadır.

[ 0,16 ]    ASPRehberi.NET RSS Kaynağı   Bu site Microsoft SQL Server Veritabanı kullanmaktadır

eXTReMe Tracker