Muratcan Atak | Webmaster Blogu

Son Twitler


Reklam


SoundCloud


Php Güvenlik Önlemleri

Muratcan AtakMuratcan Atak

php

 

Php web sayfalarınızı oluştururken pek çok noktada kullanıcı ile etkileşim içinde olursunuz. Bu durum web sitelerimizin dinamikliği açısından bize artı sağlasada her etkileşim noktası bizim birer güvenlik açığımız olabilir ve kötü niyetli kullanıcılar aralanmış bir kapı halini alabilir. Bu etkileşim noktalarımızı ince eleyip sık dokuyarak kötü niyetli kullanıcıların hayallerini suya düşürebiliriz. Peki bu noktalar nedir ve nasıl güvenlik önlemi alınır hemen inceleyelim.

Php nin bir betik dili olduğunu unutmayalım. Yazdığımız her kod web sunucumuza gider ve işlenip çıktısı kullanıcıya yazdırılır. Bu durumda iki yönlü bir filitre uygulamamız söz konusu. 1. filitremizi kullanıcıdan gelen verilerle birlikte sunucuya gönderilen bilgilere , 2. filitremizide sunucudan gelen çıktımızın kullanıcıya gösterilmeden önce koymalıyız. Bunları ayrı başlıklar altında inceleyelim.

1)Değişken içeriklerinin uygunluğu : Kullanıcıdan gelen bir bilginin istenilen tipte olup olmadığını kontrol etmemiz gereklidir. Eğer bir isim istiyorsak kullanıcın bize gönderdiği verilerin string değerde olması ve özel karakterler içermemesi gerekir. Eğer kullanıcı bize sayı veya bir özel karakter gönderdiyse bunları farklı fonksiyonlarla köreltip güvenli forma sokmalıyız. Aynı zamanda bu veriyi kesinlikle işleme sokmamalıyız. Örnek vererek açıklayalım.

$email = strip_tags(addslashes(trim($_POST[“email”])));

Yukarıdaki örnekte 3 tane fonksiyon ile güvenlik önlemi alınmış daha sonrada bunun bir email olup olmadığı kontrol etmek için valid() fonksiyonuna sokuyorum fakat o kısım şuan bizim konumuz ile alakalı değil. Şimdi yukarıda kullandığım fonksiyonların ne işe yaradıklarını açıklayalım.

trim() Fonksiyonu

trim fonksiyonu girilen verideki boşlukları temizler. Email adreslerinde boşluk bulunamayacağı göz önüne alındığında her email için kontrol edilmesi gereken ufak bir önlem. Aynı şekilde parola ve website adresi isterken de bu kontrolü gerçekleştirmekte fayda var.

addslashes() Fonksiyonu

Bu fonksiyon ise çift tırnak ve tek tırnak kullanımından doğan sıkıntıları ortadan kaldırmak için kullanılır. Bu sıkıntı en fazla Sql injection ile web programcılarının başına bela oluyor. Gönderilen verideki tırnak işaretlerinin önüne /”backslash” ekleyerek onları zararsız forma sokar.

strip_tags() Fonksiyonu

Bu fonksiyonun işlevi verideki html taglarını temizlemektir. Kötü niyetli kullanıcılar verilerimize html tag ekleyerek sitemizde kendi istedikleri içeriğin görünmesini sağlayabilir hatta sitemizin yapısını bozabilir. Bu nedenle html taglarını içerikten yok etmemiz gerekir.

Yazı Hakkında Yorumlar 0
Henüz bu makalaye yorum yapan olmadı, ilk sen yapmak istermisin ?