Langsung ke konten utama

Mengenal Lebih Dekat Dengan yang Namanya SQL Injection Part 1


SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya. Perintah yang umum dilakukan adalah:



•   SELECT untuk menampilkan data
•   INSERT untuk menambahkan data baru
•   UPDATE untuk mengubah data yang sudah ada
•   DELETE untuk menghapus data
.
Karena hampir semua program yang ada memakai SQL sebagai database, maka “attacker” biasanya memanfaatkan kelemahan pada sistem ini.

SQL INJECTION
Sql injection merupakan salah satu tekhnik penyerangan pada bug SQL. Secara dasar sql injection adalah memasukan (inject) perintah sql pada suatu statement Sql yang ada pada sistem yang berjalan. Pada dasarnya hal ini terjadi karena programer tidak menyaring (filter) karakter yang dapat di input seperti double minus (–),single quote ('), kesahan pemanggilan sql pada coding program, sehingga attacker dapat memasukan perintah sql untuk menembus sistem pertahanan.
 
Default Setting SQL

Seperti yang kita ketahui bahwa tehnik SQL injection ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account. Salah satunya yaitu default setting SQL.Default setting SQL yang paling berbahaya adalah menggunakan adminID = sa dan password blank alias (kosong), apabila ada direktori sebuah situs yang disitu ada input untuk adminnya maka kalau kita isi id-nya dengan = 'sa' dan passwordnya =' ' maka kita langsung masuk sebagai admin, ini kalau default setting-nya belum diubah. Namun ada lagi string yang bisa kita input untuk akses sebagai web admin yaitu dengan string ' OR 1=1-- apabila ada input web admin yang input box-nya adalah User dan Password maka apabila kita masukan string ' OR 1=1-- di input box user dan masukan foobar di input box password, maka akan membuat SQL query-nya bingung diakibatkan jadi  SQL Query membacanya sebagai:


SELECT * from users where User ='' or 1=1-- and Password ='foobar'

yang artinya sqlnya men-SELECT semua query dari user yang user-nya '' (kosong) atau (OR) 1=1 (true) -- (tanda -- adalah mark dari  SQL seperti halnya di C/C++ marknya // atau /*)
Jadi kalau diuraikan logikanya adalah bahwa  SQL-nya menganggap 1=1 sebagai true sehingga kolom itu di-bypass lalu kolom password-nya diabaikan karena setelah 1=1 terdapat mark SQL ( -- ), sehingga password itupun diabaikan. Lalu apakah hanya itu string-nya dalam menginjeksi sebuah situs? Tentu saja tidak. Inti dari injeksi dalam langkah awalnya adalah memaksa keluar sebuah error page yang berisi informasi struktur database situs itu dan kalau kita ingin melihatnya kita harus men-debug-nya. Jadi yang kita masukkan adalah string debugging SQL code, yaitu ' having 1=1-- , ini adalah string yang harus dimasukkan kalau kita ingin melihat error page dari situs sasaran.
Sehingga dapat dikatakan bahwa teknik ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account. Selain itu SQL injection juga memungkinkan seseorang merubah, menghapus, maupun menambahkan data–data yang berada didalam database. Bahkan yang lebih berbahaya lagi yaitu mematikan database itu sendiri, sehingga tidak bisa memberi layanan kepada web server.



Komentar

Postingan populer dari blog ini

database Splitter di MS Access 2007

Split database di microsoft acces ternyata hal tidak terlalu sulit, yang ada hanya perlukan objec-object yang ada di access seperti Table, Query, Form, Macro, Report, dalam proses split database memungkin kan aplikasi yang di buat di MS Acces menjadi aplikasi multi user, pembagianya pun sebagai berikut : => Back end    database hanya berisi table => Front end   database berisi  all aplikasi kecuali table dan link terhadap table yang ada di Back end langkahnya pun ternyata simple banget : 1. pilih dari Tab database Tool kemudian Pilih database access seperti gambar di bawah : Langkah selanjutnya tinggal ikuti wizard yang sudah di sediakan : Klik Split Database terus tinggal berinama untuk back end database, banck end database ini bisa kita simpen di computer server sehingga bisa di acces beberapa client : Setelah di simpan tinggal tunggu deh sampai muncul konfirmasi seperti berikut : Nah sekarang tinggal kalian buka database front end maka akan tampak ...

Mengaktifkan Mod Rewrite di Os Distro Linux Debian / Ubuntu

Oke saya posting ini karena kebetuluan beberapa hari yang lalu saya bikin web dan saya coba menggunakan metode penyederhanaan link sehingga membantu untuk meningkatkan SEOnya,, dengan menggunakan file *. htacces yang isinya redirect link gitu... tapi ketika saya hosting ke server ... kebetulan os yang di gunakan menggunakan distro linux debian... tapi saya juga coba di distro linux ubuntu teryata sama walhasil website yang saya buat  error dengan pesan kesalah bahwa link yang di panggil tidak tersedia... setelah saya serching sana-sini akhirnya ketemu nih jurus manjurnya... mudah-mudahan bisa bermanfaat . >> Masuk ke super user dengan perintah      sudo su >> selanjutnya gunakan perintah locate untuk menemukan lokasi mod_rewrite.so pada server     locate   mod_rewrite.so >> ketemu, lokasinya di “/usr/lib/apache2/modules” >> selanjutnya masuk ke direktori mods-enabled     cd   /etc/apache2/mod...

Mengenal Karakteristik Dan Siklus Hidup worm , virus, trojan horse, ataupun malcode lainnya

pada umumnya worm memiliki kemampuan dasar sebagai berikut : 1.        KEMAMPUAN REPRODUKSI DAN DISTRIBUSI Yaitu kemampuan yang mutlak dimiliki oleh worm untuk membuat salinan dirinya sendiri, sekaligus mendistribusikan salinan tersebut pada system yang lain baik   melalui media penyimpanan   seperti flasdisk, disket dll, maupun melalui jaringan komputer, walau pun memiliki rutin untuk menginfeksi program lain namun tidak bertujuan menjadikan file program terinfeksi sebagi file infektor. Pada awalnya wor dibuat dengan aksi memnuhi hardisk dan jaringan, namun seiringnya perkembangan jaman   dan teknologi informasi hal ini di tinggalkan oleh para worm writter   karena malah akan mengurangi kemampuan worm itu sendiri dalam menyembunyikan dirinya sendiri, yang akan berakibat worm tersebut cepat terendus oleh advance user ataupun oleh para vendor pembuat anti virus. 1.        KEMAMPUAN REKAYASA SOSIAL K...