• 30-08-2009, 21:23:13
    #1
    Üyeliği durduruldu
    İki gündür görsel eğitim setlerinden yararlanarak PHP çalışıyorum arada kafama takılan sorular oluyor o yüzden bu kısımda sanırım artık çok başlık açıcam, arama ile sonuç elde edemediğim için başlık açıyorum.

    site.com/admin.php "admin.php isimli bir php dosyam var"

    Şimdi

    Burda giriş için kullanıcağım inputboxlardan veriyi kontrol.php'ye gönderip POST methodu ile verileri çekip doğruluk kontrolü yapmammı daha güvenli olur?

    Yoksa

    action="admin.php?sayfa=kontrol" yapıp
    get methodu ile adresi aldıktan sonra kontrolleri yapsammı daha güvenli olur?


    Bunlar arasında güvenlikle ilgili farklar varmıdır? sonuç olarak sayfa içerisinde formdan gelen verileri tekrar POST methodu ile çekicem GET methodu kullanıp bu verileri adres satırına yazdırmıcam.

    Bu konu hakkında bilgi verebilirseniz sevinirim.

    Teşekkürler.
  • 30-08-2009, 21:30:40
    #2
    iki türlüde veriyi html veya kodlardan kurtardıktan sonra güvenlidir.

    $sayfa=strip_tags($_GET['s']); // güvenlik önlemleri : strip_tags();
    ama ilk yol daha mantıklı gibi geldi .

    bu arada aramıza hoşgledin
  • 30-08-2009, 21:49:16
    #3
    Üyeliği durduruldu
    RSCA adlı üyeden alıntı: mesajı görüntüle
    iki türlüde veriyi html veya kodlardan kurtardıktan sonra güvenlidir.

    $sayfa=strip_tags($_GET['s']); // güvenlik önlemleri : strip_tags();
    ama ilk yol daha mantıklı gibi geldi .

    bu arada aramıza hoşgledin
    Hoşbulduk.

    Henüz strip_tags(); fonksiyonu hakkında falan bilgim yok şuanki bilgim ile anca kendim bi fonksiyon yazıp zararlı olabilcek kelimeleri süzebilirim sqlinj önlem alabilmek için falan daha çok ayrıntılı bilmiyorum öyle .

    Ben öyle bir sürü sayfa oluşturmak istemiyorum mecbur olup olmadığım konusunda çelişkide kalmıştım.Güvenlik konusunda farkı olmadığını öğrendiğim iyi oldu.

    Teşekkürler tekrar.
  • 30-08-2009, 21:53:31
    #4
    rica ederim
  • 30-08-2009, 23:20:41
    #5
    Eposta Aktivasyonu Gerekmekte
    usta bi de kontrol yaptığın sayfada ref kontrölü yap.$_SERVER["referer"] ileydi sanırım tam hatırlamıyorum. referer de o sayfaya hangi sayfadan geldiysen o adresi taşır.bot ile yada formu pc sinden göndermesine karşın.gene curl ile aşılır ama hiç yoktan iyidir. örnek vermek gerekiyorsa
    giris.php de form var
    kontrol.php de de kontrolleri yapıyorsun.
    kontrol.php den bakıcaksın refe kullanıcı nerden geliyor diye giris.php den ise devam ediceksin.
  • 31-08-2009, 00:13:34
    #6
    Üyeliği durduruldu
    Dualwarior adlı üyeden alıntı: mesajı görüntüle
    usta bi de kontrol yaptığın sayfada ref kontrölü yap.$_SERVER["referer"] ileydi sanırım tam hatırlamıyorum. referer de o sayfaya hangi sayfadan geldiysen o adresi taşır.bot ile yada formu pc sinden göndermesine karşın.gene curl ile aşılır ama hiç yoktan iyidir. örnek vermek gerekiyorsa
    giris.php de form var
    kontrol.php de de kontrolleri yapıyorsun.
    kontrol.php den bakıcaksın refe kullanıcı nerden geliyor diye giris.php den ise devam ediceksin.
    Biraz karışık anlatmışsın ama ne demek istediğini anladım zorda olsa , birşeyler yazcak düzeye geldiğimde dediğinide yaparım.

    Teşekkürler.
  • 31-08-2009, 00:22:18
    #7
    bunlara ek olarak;
    giriş formunu oluşturan php sayfasında,bir hidden içine
    <?php
    $Token = md5(time());
    $_SESSION["token"] = $Token;
    ?>
    <input type="hidden" name="token" value="<?php echo $Token;?>">
    şeklinde bir kod oluşturup bu kodu session a attıktan sonra, formun post edildiği sayfa yani kontrol sayfasında

    $Islem = false;
    if((string)$_POST["token"]==(string)$_SESSION["token"])
    {
    	$Islem = true;
    }
    #...................
    
    if((bool)$Islem)
    {
    	#................ GİRİŞ İŞLEMLERİ ................#
    }
    şeklinde kontrol edip farkı sayfalardan post gelmesini biraz önleyebilirsin.
  • 31-08-2009, 02:22:18
    #8
    aynı şekile token yerine :
    $session=md5(time());
    kullanarak her tıklamada tokenin değişmesini sağlayabilirsiniz. Google'de böyle bir sistem kullanıyor
  • 31-08-2009, 10:55:29
    #9
    Üyeliği durduruldu
    Saat 22:45 diyelim bunu md5'e çevirdim.Adam adam herhangi bir illegal girişimde bulunamadı, peki bu girişimi ertesi gün 22:45'te tekrar denerse başarılı olmazmı? Sonuç olarak 22:45'in md5li hali aynı olucak?