Cara menutup Bug Sql injection di website



 Selamat Datang di Blogspot Kandol Techo

 Di artikel sebelumnya saya sudah membahas Macam - Macam Bug Sql Injection jadi terasa Kurang lengkap jika saya tidak menambahkan Bagaimana Cara menutup Bug Sql Injection.


Sql injection adalah jenis serangan Hacking yang memanfaatkan Suatu celah untuk mendaptkan data pada website.
Sql injection juga hampir mirip dengan serangan Cross-site scripting atau biasa disebut dengan XSS bahwa seorang hacktivist memanfaatkan aplikasi vektor dan juga comand dalam serangan tersebut. Contohnya adalah sebagai berikut : 

  1. SQL Map


  SQL Map adalah tools opensource yang digunakan oleh seorang hacktivist untuk mendeteksi dan melakukan exploit pada bug SQL injection secara otomatis. dengan melakukan serangan SQL injection seorang hacktivist dapat mengambil alih dan memanipulasi sebuah database di dalam sebuah server.

  1. Havij

 Havij adalah sebuah software untuk melakukan aktivitas Hacking seperti SQL Injection atau menguji penetrasi untuk menemukan dan mengeksploitasi kerentanan SQL Injection pada suatu halaman website.

Dan berikut adalah Contoh script yang vuln terhadap SQLi:

<?php$id = $_GET['id'];
$db = mysql_connect('localhost', 'admin', '123456');
mysql_select_db("bug", $db);
$query = "SELECT * FROM pengguna WHERE id = '".$id."'";
$hasil = mysql_query($query);
echo $hasil;
?>

Di view-source code diatas terlihat tidak adanya filter untuk karakter seperti ( ' ), ( - ), ( -- ) sehingga bisa disisipi dengan perintah SQL injection. Lalu pertanyaannya adalah bagaimana cara menutup bug tersebut? Kali ini saya akan menggunakan method mudah untuk menutup bug tersebut. Silakan simak baik baik.


  1. Memasukan filter  karakter seperti (-) terlebih dahulu.
  2. if($id_anu < 0) {
       echo "Patched.";
       exit;
    }
    *note Jika nilai $id kurang dari 0, maka akan tampil "Patched." | Mencegah karakter (-).
    1. Memasukan perintah is_numeric. 
      if(!is_numeric($id_anu)) {
         echo "Patched.";
         exit;
      }
      *note Jika nilai $id bukan golongan dari numeric atau angka, maka akan tampil "Patched."
    2. Memberi fungsi mysql_real_escape_string.
      mysql_real_escape_string adalah fungsi PHP yang digunakan untuk memberi backslash di beberapa kode untuk ditampilkan pada halaman, namun saat menyimpan menuju sql, kode akan tetap normal tanpa ada backslash.
    $id_anu = mysql_real_escape_string($_GET['$id_anu']);

    Mungkin Sekian Pembahasan nya, Mohon maaf bila ada kesalahan Dalam penulisan ataupun Bahasa yang kurang dimengerti Baca juga artikel saya sebelumnya mengenai Macam Macam Serangan Sql injection. Saya RooT@Kandol ucapkan terimakasih

1 Response to "Cara menutup Bug Sql injection di website"

Iklan Atas Artikel

Iklan Tengah

Iklan Tengah Artikel 2

Iklan Bawah Artikel