Mencegah SQL Injection


Siapa yang tidak tahu tentang Tehnik SQL Injection Di kalangan Developer Web.

Penyebab utama dari celah ini adalah variable yang kurang di filter. Misal

<?php $id=$_GET[id];$query="select * from table where id=$id; ?>

Nah, jelas bahwa variable $id tidak di filter sama sekali.
Karena biasanya variabel ini diharapkan berbentuk angka. Tapi tanpa filter seperti itu, pengunjung bisa saja memasukkan query tambahan (sql injection). So, ini salah satu cara pencegahannya.

Buat agar nilai $id selalu berbentuk angka.

 


<?php
$id=(int)($_GET[id]);

echo "id = ".$id;

?>

Coba save jadi test.php. Kemudian akses "localhost/test.php?id=1cde"
nilai yang kan muncul hanya angka paling depan yaitu 1, sedangkan yang bukan angka tidak akan menjadi bagian dari variabel $id.
Namun tu semua masih bisa di masukan tehnik sql Injection dengan cara membuat Variabel $id menjadi Negatif.
Maka Rubahlah Script php tadi ditambah abs


<?php
$id=abs((int) $_GET[id]);

echo "id = ".$id;

?>

0 Response to "Mencegah SQL Injection"