Cara Memperbaiki Bug SQL Injection Pada Website

Cara patch bug SQL Injection ada beberapa cara dan yang ini adalah salah satunya, Yaitu dengan cara yang paling mudah dan sederhana.
 

Hallo, 
Kembali lagi di Defnilay - Blog, Oke pada artikel kali ini Gua ingin sedikit sharing untuk menambal/patch bug SQL Injection agar terhindar dari serangan hacker.

Cara patch bug SQL Injection ada beberapa cara dan yang ini adalah salah satunya, Yaitu dengan cara yang paling mudah dan sederhana.

Oke langsung aja ke cara patchnya.

PHP Code Sebelum Di Patch

Sebelum menambal/patch bug ini, Ada baiknya Kita melihat PHP Code sebelum bug ini ditutup (Masih ada celah SQL Injection) agar lebih mudah dipahami.

PHP Code sebelum di patch adalah sebagai berikut:
include('connect.php');
$CIId = $_GET['CIId'];
$sql ="select * from current_issues where CIId ='$CIId'";
$query=mysqli_query($con,$sql);
$rows = mysqli_fetch_assoc($query);
$CIId = $rows['CIId'];
$CIDate = $rows['CIDate'];
$CITopic = $rows['CITopic'];
$CIDetail = $rows['CIDetail'];
Perhatikan code diatas, variabel $CIId yang berisi $_GET['CIId']; tidak difilter terlebih dahulu. Kemungkinan besar terdapat celah SQL Injection disitu.


Yapss, setelah Admin masukkan tanda petik 1 [ ' ] website tersebut menampilkan SQL Error berupa Path dari file tersebut.

Patch Bug SQL Injection

Jika sudah mengetahui bahwa website memiliki celah SQL Injection, Maka sebaiknya Kita patch bugnya agar tidak terjadi hal-hal yang tidak di inginkan.

Cara patch nya sebenarnya ada banyak sekali cara, Namun disini Admin hanya menggunakan cara yang paling simpel dan sangat mudah sekali untuk dilakukan, Bahkan oleh seorang pemula (seperti Saya)

PHP Code setelah di Patch:
include('connect.php');
$CIId = abs($_GET['CIId']);
$sql ="select * from current_issues where CIId ='$CIId'";
$query=mysqli_query($con,$sql);
$rows = mysqli_fetch_assoc($query);
$CIId = $rows['CIId'];
$CIDate = $rows['CIDate'];
$CITopic = $rows['CITopic'];
$CIDetail = $rows['CIDetail'];
Simpel nya sih Kita filter di variabel tersebut dengan abs, Abs sendiri berfungsi untuk mengembalikan nilai absolut dari nilai negatif mau pun positif. Nilai absolut adalah suatu keadaan yang mana nilai akan senantiasa dianggap positif.


Yapsss, sudah tidak ada SQL Error yang muncul lagi setelah di filter menggunakan abs. Sekarang website sudah aman deh dari serangan Hacker, hehe 😂

Akhir Kata

Oke mungkin cukup sampai disini aja artikel tentang "Cara Memperbaiki Bug SQL Injection Pada Website".
Mohon maaf bila ada kesalahan kata dan sebagainya, Mohon dimaklumi karena Gua juga masih dalam tahap belajar.

Semoga bermanfaat dan Sampai jumpa di artikel selanjutnya!