19 Juli 2013

Cara Membuat Form Login Yang Aman (Secure From SQL Injection) VB6/VBNET

Secara singkat sql injection adalah menambahkan perintah sql query melalui input box (textbox, combobox, dll) dengan tujuan untuk memodifikasi sql query yang sudah ada atau menciptakan sql query baru. Biasanya orang yang baru belajar programming sering mengabaikan masalah security ini, contoh kasus:
Sintak/sql quer untuk Login biasanya seperti ini :

"SELECT USER_ID, PASSWORD FROM MS_USER WHERE USER_ID='" + Txt_User.Text + "' AND PASSWORD='" + Txt_Pass.Text + "'"

Nah jika user/operator menginputkan pada Txt_User dan Txt_Pass seperti ini : ' OR '1'='1
Maka setelah aplikasi/program Run, sintak/sql query tersebut akan berubah menjadi seperti ini :

"SELECT USER_ID, PASSWORD FROM MS_USER WHERE USER_ID='' OR '1'='1' AND PASSWORD='' OR '1'='1'"
Dan ini akan menghasilkan nilai TRUE, sehingga user (anonymous) akan dapat masuk sesuka hati tanpa harus tahu user id dan password-nya.
Ada beberapa solusi untuk mengatasi masalah ini, diantaranya adalah :
  1. Menghilangkan (Replace) karakter kutip satu (') dengan karakter kosong, contoh :
    Txt_User.Text.Replace("'", "")
  2. Memendekan MaxLength TextBox sesuai dengan field database, contoh jika di table field User_Id = Varchar(10), maka Txt_User pun harus MaxLenght=10 juga agar user tidak bebas/kepanjangan menginput sesuatu/apapun pada textbox tersebut.
  3. Mengubah sintak/sqlquery menjadi seperti ini :
"SELECT USER_ID, PASSWORD FROM MS_USER WHERE USER_ID='" + Txt_User.Text.Replace("'", "") + "'"
'...sintak anda untuk mengecek keberadaan user, Jika User Ada Maka Cek Password, Contoh :
IF reader.Item("PASSWORD") = Txt_Pass.Text.Replace("'", "") Then
    '...sintak anda jika login SUKSES
Else
    '...sintak anda jika login GAGAL
End IF
3 cara diatas adalah sebagian dari banyak cara yang dapat anda lakukan untuk mencegah terjadinya sql injection dari tangan tangan yang jahil dan tidak bertanggung jawab. Semoga artikel saya ini bermanfat ntuk anda. Terimakasih.
 

0 komentar:

Poskan Komentar

Silahkan TInggalkan Komentar Anda di Blog Saya..
No SPAM and No PORN...
Terimakasih Telah meninggalkan Jejak Anda

Related Posts Plugin for WordPress, Blogger...
Award Pertama
Photobucket
Langganan Artikel Si Boersan :

Enter your email address:

Delivered by FeedBurner

Monggo Di Copy Linknya :
Text Link

Banner Link

Komunitas Blogger Indonesia Komunitas Blogwalking