24 Temmuz 2021 Cumartesi

SQL Injection dan Korunma Yöntemi. Pdo Kullanımı - Php Security..!






SQL Injection’dan Korunma(www.sechunterz.pw)

PDO’nun en sevdiğim yanı diyebilirim hemen örnek bir saldırı senaryosu oluşturalım.


MYSQL


$connect = mysql_connect("localhost","root","root");


mysql_select_db("portal",$connect);


$sql= "SELECT * FROM uyeler WHERE id = '$_GET[id]'";


$result= mysql_query($sql,$connect);


while ($row=mysql_fetch_array($result))


{


 echo $row['isim']." ";


 echo $row['soyisim']."<br />";


}


echo "<br />";


echo "çalıştırılan sorgu : ".$sql;



Yukarıda yazmış olduğumuz kod çok kolay şekilde ByPasslanmaktadır nasıl diye soracak olursanız id değerine ‘OR ‘x’=’x değerlerini girmeniz yeterli olacaktır uyeler tablosunda ki tüm kullanıcıları listeleyecektir.

PDO ile bu durumu nasıl düzeltebiliriz hemen yazalım



try {


     $db = new PDO("mysql:host=localhost;dbname=portal", "root", "root");


} catch ( PDOException $e ){


     print $e->getMessage();


}


$Gelen = $_GET["id"];


 


$Ara = $db->prepare("SELECT * FROM uyeler WHERE uyeler_id=:id");


 


$Ara->execute(array("id" => $Gelen));


 


$Liste = $Ara->fetchAll(PDO::FETCH_ASSOC);


 


if($Ara->rowCount() != "0"){


 


foreach($Liste as $Bas){


echo $Bas['uyeler_isim'];


echo $Bas['uyeler_soyisim'];


}


else


{


echo " Kullanıcı Bulunamadı";


}



PDO Candır diyerek konumu sonlandırıyorum görüşmek üzere.(www.sechunterz.pw)

0 comments:

Yorum Gönder