APLIKASI WEB VULNERABILITY SCANNER UNTUK
SERANGAN SQL INJ ECTION MEMANFAATKAN GOOGLE
DORK “INURL”
TUGAS AKHIR
Oleh :
MASYITHA
0834010155
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
2012
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
APLIKASI WEB VULNERABILITY SCANNER UNTUK
SERANGAN SQL INJ ECTION MEMANFAATKAN GOOGLE
DORK “INURL”
TUGAS AKHIR
Diajukan Untuk Memenuhi Sebagian Per syar atan Dalam Memper oleh Gelar Sar jana Komputer
J ur usan Tek nik Infor matika
Oleh :
MASYITHA
0834010155
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
2012
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
i ABSTRAKSI
Hingga saat ini tindakan penyerangan pada suatu web semakin tinggi. Sering terlihat di media cetak,dan media elektronik begitu banyak berita yang memuat aksi-aksi penyerangan terhadap suatu situs web. Salah satu contoh faktor timbulnya tindakan hacking adalah kesalahan dalam scripting pembuatan web adalah hal terbanyak yang dimanfaatkan oleh para attacker, sehingga rata-rata web yang berhasil diserang melalui lubang ini. Kelemahan-kelemahan scripting yang ditemukan pada proses vulnerabilities scanning misalnya, SQLi.
Untuk mencegah tindakan tersebut dapat menggunakan jasa perusahaan audit keamanan web. Dan tentunya akan menghabiskan banyak biaya, untuk menghindari hal tersebut, dalam proyek akhir ini akan dibangun aplikasi web vulnerability scanner yang berfungsi untuk mendeteksi suatu kelemahan web terhadap kelemahan SQLi.
Maka dengan menggunakan aplikasi web vulnerability scanner dapat dideteksi suatu kelemahan web terhadap kelemahan SQLi dengan lebih dini sehingga dapat dicegah. Kedepannya aplikasi ini dapat melihat isi dari database website yang ditarget mempunyai kelemahan SQL Injection.
.
Kata kunci : SQLi ,Web Vulnerability Scanner.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
PEMBUATAN APLIKASI WEB VULNERABILITY SCANNER
TERHADAP KELEMAHAN XSS (Cr oss Site Scr ipting)
MENGGUNAKAN J AVA.
Disu su n O leh :
M O C H AM A D T R I J O K O
NP M . 0 534 0 1009 3
T ela h d isetu ju i m eng iku t i Ujia n Ne gara L isa n Ge lo mb ang I T a hu n A kad em ik 2 0 1 0 / 201 1
Pemb imb ing Ut ama
Ac hmad J u naid i, S.Ko m NPT . 3 788 110 4 4019 9
Pemb im b ing Pe nd amp in g
Chr yst ia Aji P, S.Ko m, NPT . 3861 0100 29 61
Meng etahu i,
Ketu a Pr o gr am Stud i Sistem Info r mas i
Un iv er sita s Pemb angu nan Nasio nal ”Veter a n” J awa T im u r
Basu ki Rah mat, S.Si, MT NPT . 36907060209
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
L E M BAR P E NG E SAH AN
PEMBUATAN APLIKASI WEB VULNERABILITY SCANNER
TERHADAP KELEMAHAN XSS (Cr oss Site Scr ipting)
MENGGUNAKAN J AVA.
Disu su n O leh :
M O C H AM A D T R I J O K O
NP M . 0 534 0 1009 3
Telah dipertahankan di hadapan dan diterima oleh Tim Penguji Tugas Akhir Jurusan Teknik Informatika Fakultas Teknologi Industri Universitas Pembangunan Nasional “Veteran” Jawa Timur
Pada Tanggal Februari 2010
Ir. Edi Purnomo Sasongko, MP NIP. 1 96 407 1 4198 80 31 001
Universitas Pembangunan Nasional “Veteran” Jawa Timur Surabaya
Ir. Sutiyono, MT NIP. 196007131987031001
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
KATA PENGANTAR
Alhamdulillah, dengan mengucapkan puji dan syukur kehadirat Allah
SWT atas rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan tugas
akhir ini dengan judul “APLIKASI WEB VULNERABILITY SCANNER
UNTUK SERANGAN SQL INJECTION MEMANFAATKAN GOOGLE DORK
”INURL”.
“yang merupakan persyaratan dalam memperoleh gelar Sarjana Komputer di
Universitas Pembangunan Nasional “VETERAN” Jatim.
Penulis mengucapkan terima kasih yang sebesar-besarnya kepada
pihak-pihak yang telah membantu baik materiil maupun dorongan spirituil untuk
menyelesaikan penulisan tugas akhir ini, terutama kepada:
1. Bapak Prof. Dr. Ir. Teguh Soedarto, MP, selaku Rektor UPN “Veteran” Jatim.
2. Bapak Ir. Sutiyono, MT, selaku DEKAN FTI UPN “VETERAN” Jatim.
3. Ibu Dr.Ir.Ni Ketut Sari, MT selaku Ketua Jurusan Teknik Infomatika UPN
“VETERAN” Jatim.
4. Bapak Hudan Studiawan, S.Kom, M.Kom selaku Dosen Pembimbing yang
telah meluangkan waktu untuk memberikan bimbingan selama proses
pelaksanaan Tugas Akhir penulis.
5. Special to: Orang Tua dan keluarga tercinta atas motivasi dan doanya sehingga semua yang dikerjakan dapat berjalan lancar.
6. Dosen-dosen Teknik Informatika, staff dan segenap civitas akademika UPN
“VETERAN” Jatim.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
iv
7. My best Friends: JOHN FAMILIEZ (Tini, Lebrina, Elly, Mita, Muji, Arvian, Awal), MAKCOMM (Fillah, Ika, Tika) dan tak lupa juga untuk seluruh
teman-teman TF angkatan 2008.Tidak lupa penulis ucapkan terima kasih
kepada teman-teman yang tidak dapat disebutkan satu persatu atas segala
bantuannya dalam menyelesaikan Tugas Akhir ini.
Penulis menyadari sepenuhnya masih banyak terdapat kekurangan dalam
penulisan Tugas Akhir ini. Oleh sebab itu kritik serta saran yang membangun dari
pembaca sangat membantu guna perbaikan dan pengembangan di masa yang akan
datang.
Akhirnya dengan ridho Allah penulis berharap semoga Tugas Akhir ini
dapat memberikan manfaat bagi pembaca sekalian terutama mahasiswa di bidang
komputer.
Surabaya, Juni 2012
Penulis
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
iv
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
iv
3.4.1 Data Input Web vulnerability Berbasis Online .... 42
3.4 Perancangan Proses ... 43
3.4.1 Proses Scanning ………... 43
3.5 Perancangan Antar Muka ….………….…..……….. 47
BAB IV IMPLEMENTASI ………..………. 49
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
vi
4.1 Implementasi Sistem ………. 49
BAB V PENGUJIAN DAN ANALISA ……….……….…. 53
5.1 Lingkungan Pengujian ……….. 53
5.2 Uji Coba ………..……….. 53
5.2.1 Aplikasi Web Vulnerability Scanner …….…..….. 54
5.2.2 Proses Scanning ………...………. 55
5.3 ANALISIS ……… 63
5.3.1 Analisis Scan SQL Injection ….……….…… 64
BAB VI PENUTUP……… ………...………. 65
6.1 Kesimpulan……… ………. 65
6.2 Saran……..……… ………. 65
DAFTAR PUSTAKA……… ………...………. 66
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
iv
DAF TAR TABEL
Halaman
Tabel 2.1 Perbandingan Antara Web Statis Dengan Web Dinamis... 9
Tabel 2.2 Tipe Data Dalam My SQL.. ……….…...… 27
Tabel 2.3 Simbol Flowchart …...……….…...… 32
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
viii
Gambar 3.1 Perancangan Sistem Secara Global ……….….. 41
Gambar 3.2 Diagram Alur Scan SQLi ... 44
Gambar 3.3 Hasil pencarian pada mesin bing bersarkan inputan Google dork ”inurl:article.php?id=” ...…... 45
Gambar 3.4 Website target belum terinjeksi ...…...… 46
Gambar 3.5 Website target sudah terinjeksi ………... 47
Gambar 3.6 Antarmuka Aplikasi WVS...….…….. 48
Gambar 4.1 Tampilan Utama Aplikasi..……….. 50
Gambar 4.2 Tampilan laporan scan sql injection ... 52
Gambar 5.1 Halaman Utama Aplikasi WVS…...…... 54
Gambar 5.2 Tampilan awal aplikasi …...…….... 55
Gambar 5.3a Proses Scanning ……... 56
Gambar 5.3b Proses Scanning ……...…... 56
Gambar 5.4 Report Scanning ...…...……... 57
Gambar 5.5 Tampilan Website Sebelum di Injeksi ...……... 58
Gambar 5.6 Tampilan website sesudah di injeksi ………... 58
Gambar 5.7 Proses scanning Google dork inurl:staff_id= .………...…. 59
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
iv
Gambar 5.8 Laporan scanning Google dork inurl:staff_id=……….. 60
Gambar 5.9 Tampilan website sebelum di injeksi... 60
Gambar 5.10 Tampilan website sesudah di injeksi... 61
Gambar 5.11 Proses scanning Google dork inurl:gallery.php?id=…………61
Gambar 5.12 Laporan scanning Google dork inurl:gallery.php?id=……… 62
Gambar 5.13 Tampilan website sebelum di injeksi... 63
Gambar 5.14 Tampilan website sesudah di injeksi... 63
Gambar 5.15 Halaman URL yang telah di injeksi... 64
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
BAB I
PENDAHULUAN
1.1 Latae Belakang
Perkembangan dalam dunia maya terjadi sangat pesat. Teknologi baru
dirancang dan diimplementasikan untuk memenuhi kebutuhan pengguna yang
semakin beragam. Teknologi halaman web termasuk didalamnya. Teknologi yang
ada kini telah revolusi menuju ke tingkatan yang berbeda. Halaman web kini tidak
lagi statis namun juga dinamis. Kini halaman web yang dinamis merupakan
pemandangan yang biasa dilihat ketika melakukan surfing menggunakan internet.
Halaman web yang dinamis merupakan teknologi yang memberi perubahan
penyediaan informasi, layanan, dan tampilan secara signifikan. Halaman web
yang dinamis memungkinkan interaksi yang lebih baik antara penyedia layanan
dengan penggunanya. Dengan menggunakan teknologi ini, halaman web akan
terlihat lebih manusiawi. Penyedia layanan dapat menambahkan konten yang
sebelumnya masih merupakan impian belaka.
Dalam computer system security, istilah vulnerability merupakan suatu
kelemahan yang memungkinkan seseorang untuk masuk dan mendapatkan hak
akses ke dalam komputer yang dituju (target). Vulnerability adalah kelemahan
yang dikarenakan kesalahan setting ataupun ketidaktahuan administrator.
(Prayitno Ahmad, 2009)
Hingga saat ini angka kejahatan di dunia maya tetap tinggi dan terus
meningkat. Sebuah penelitian yang dilakukan oleh Corsaire menunjukkan bahwa
sekitar 25% aplikasi berbasis web memiliki celah yang membuatnya jadi rentan
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
2
terhadap serangan yang dilakukan oleh para cracker. Corsaire mendasarkan hasil
temuan ini pada penelitian selama enam tahun terakhir.
Dalam menganalisis, Corsaire menggunakan sampel dari
perusahaan-perusahaan besar di beberapa tempat termasuk Inggris, Australia, Eropa, Asia dan
tentu saja Amerika Serikat. Hasil analisis menunjukkan bahwa meski ada usaha
untuk memperbaiki aplikasi berbasis web ini. Namun setidaknya masih ada sekitar
25% yang memiliki resiko tinggi.
Menurut berita yang dilansir ITNews hari Selasa (09/12/08) disebutkan
bahwa 25% aplikasi yang digolongkan dalam kategori resiko tinggi ini memiliki
celah yang membuat aplikasi tersebut rentan terhadap serangan yang bisa
mengakibatkan pencurian data dan pembobolan jenis lain. Sedangkan 75%
sisanya masih dipecah lagi dalam kategori medium dan low yang artinya masih
memiliki celah namun tak terlalu parah. Berikut merupakan data dari (Joe
McCormack, 2009) tentang statistik serangan terhadap aplikasi Web:
Ga mbar 1.1 Data Statistik Serangan terhadap Aplikasi Web
Dari Gambar 1.1 diatas diketahui bahwa serangan XSS dan SQL Injection
menempati urutan 2 besar. Para hacker berkonsentrasi melakukan eksploitasi pada
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
3
web-web di internet. Web yang tidak aman memberikan kemudahan akses kepada
hacker untuk memanipulasi informasi dan melakukan aktivitas ilegal dengan menggunakan situs yang telah diserang. Situs yang menjadi korban dapat
disalahgunakan untuk melakukan aktivitas criminal. Misalnya saja melakukan
phishing, pencurian informasi sensitif milik pengguna, memanen email pengguna
untuk keperluan spamming, dan lain-lain. Dalam kondisi ini, attacker dapat
membuat agar pemilik sah-nya yang bertanggung jawab atas tindak kejahatan
tersebut.
Para hacker telah memiliki banyak daftar serangan yang secara rutin
dilakukan pada situs-situs di internet termasuk SQL Injection. Dan para hacker
selalu memiliki update serangan-serangan terbaru terhadap situs-situs di internet.
Dilatarbelakangi permasalahan di atas, dalam proyek akhir ini dibangun
sebuah aplikasi yang berfungsi sebagai pendeteksi terhadap kelemahan SQL
Injection pada suatu aplikasi web, sehingga dengan bantuan aplikasi tersebut suatu
aplikasi web dapat dideteksi lebih dini terhadap kelemahan SQL Injection.
Selain itu, aplikasi ini juga memberikan info letak kelemahan suatu web
terhadap serangan SQL Injection. Dengan aplikasi ini, pengguna bisa mendeteksi
apakah web memiliki kelemahan SQL Injection atau tidak.
1.2 Rumusan Masalah
Dari latar belakang masalah yang telah dipaparkan, maka akan dibangun
aplikasi web vulnerability scanner untuk serangan SQL Injection memanfaatkan
Google. Adapun beberapa rumusan permasalahan yang ada dalam membangun
aplikasi web vulnerability scanner ini yaitu:
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
4
a) Bagaimana membangun web vulnerability scanner berdasarkan data masukan
dari pengguna untuk web vulnerability scanner berbasis online.
b) Bagaimana mengolah informasi dan menampilkan hasil scanning yang
dibutuhkan oleh pengguna.
1.3 Batasan Masalah
Sedangkan batasan masalah pada proyek akhir ini, antara lain yang
digunakan:
a) Bahasa yang digunakan adalah PHP dan software development yang
digunakan adalah Adobe Macromedia Dreamwaver.
b) Aplikasi web yang dapat dipindai adalah aplikasi web yang dibangun
dengan menggunakan bahasa pemrograman PHP dengan MySQL sebagai
DBMS.
c) Kelemahan yang dibahas adalah SQL Injection.
1.4 Tujuan
Tujuan proyek akhir ini adalah untuk membangun aplikasi web vulnerability
scanner menggunakan PHP. Adapun manfaat dengan dibangunnya aplikasi ini
adalah untuk mendeteksi kelemahan web terhadap serangan SQL Injection.
1.5 Manfaat
Berdasarkan dari latar belakang diatas maka dapat dirumuskan masalah
sebagai berikut:
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
5
a. Membangun web secara secure.
Membuat website dengan tingkat kemanan yang tinggi sehingga tidak
mudah untuk dirusak atau dimasuki oleh pihak – pihak tertentu.
b. Terhindar dari defacer website.
Website bebas dari para perusak tampilan pada website yang telah
dibangun, bahkan menghapus seluruh data yang ada di dalam database.
c. Mendeteksi kelemahan web terhadap serangan SQL Injection.
Mendeteksi salah satu jenis serangan web yang dilakukan dengan
memanfaatkan kelemahan pada suatu aplikasi web sehingga
memungkinkan aplikasi untuk menginjeksikan suatu tag HTML pada
aplikasi web tersebut dikarenakan adanya variabel yang tidak disanitasi
dengan baik.
1.6 Metodologi Penelitian
Dalam pengerjaan proyek akhir ini meliputi langkah-langkah sebagai
berikut:
1. Studi Liter atur
Pada tahap ini dilakukan studi literatur dari beberapa referensi baik itu
dari buku atau internet.
2. Per ancangan Sistem
Pada tahap ini dilakukan perancangan sistem yang akan dibangun,
meliputi perancangan database, perancangan sistem dan pembuatan user
interface.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
6
3. Per siapan Data
Data-data penunjang yang didapatkan berupa suatu kesimpulan,
fakta-fakta dan aturan yang mengatur proses pencarian data yang saling
berhubungan satu sama lain disimpan ke dalam basis data RDBMS
(Relational DataBase Management System) sebagai media penyimpanan.
4. Pengujian dan Analisa
Pengujian dan analisa dimaksudkan untuk mengetahui sejauh mana
sistem yang dibuat pada proyek akhir ini dapat berfungsi sesuai dengan
proses sistem yang diharapkan.
5. Kesimpulan
Dibuat kesimpulan dari pengujian sistem proyek akhir dengan
membandingkan apakah hasilnya seperti yang diharapkan pada tujuan
proyek akhir sebelumnya.
6. Pembuatan Lapor an
Membuat dokumentasi dari semua tahapan proses diatas berupa laporan
yang berisi tentang dasar teori, hasil proyek akhir dan hasil analisis.
1.7 Sistematika Penelitian
Sistematika pembahasan yang akan diuraikan dalam buku laporan proyek
akhir ini terbagi dalam beberapa bab yang akan dibahas sebagai berikut:
BAB I PENDAHULUAN
Bab ini berisi tentang pendahuluan yang terdiri dari latar belakang,
perumusan masalah, batasan masalah, tujuan dan sasaran,
metodologi, serta sistematika pembahasan dari proyek akhir ini.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :
7
BAB II TEORI PENUNJ ANG
Bab ini membahas mengenai teori-teori yang berkaitan dengan
penyelesaian proyek akhir, yang didapatkan dari berbagai macam
buku serta sumber-sumber terkait lainnya yang berhubungan
dengan pembuatan proyek akhir ini.
BAB III PERANCANGAN SISTEM
Bab ini membahas mengenai perancangan sistem, meliputi
perancangan hirarki, perancangan proses, dan perancangan user
interface.
BAB IV IMPLEMENTASI
Bab ini membahas mengenai implementasi sistem.
BAB V UJ I COBA DAN ANALISA
Bab ini menyajikan dan menjelaskan seluruh hasil dan analisa
dalam pembuatan proyek akhir ini dan bagaimana penyelesaian
dari setiap permasalahan error yang terjadi pada sistem operasi
Windows.
BAB VI PENUTUP
Bab ini berisi kesimpulan dari uji coba perangkat lunak, dan saran
untuk pengembangan, perbaikan serta penyempurnaan terhadap
aplikasi yang telah dibuat.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN "Veteran" Jatim :