IMPLEMENTASI WEB VULNERABILITY SCANNER SEBAGAI ADD ONS MOZILLA FIREFOX.
IMPLEMENTASI WEB VULNERABILITY SCANNER
SEBAGAI ADD ONS MOZILLA FIREFOX
SKRIPSI
Oleh :
ARDI MARTONO
0734010030
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
2011
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
IMPLEMENTASI WEB VULNERABILITY SCANNER
SEBAGAI ADD ONS MOZILLA FIREFOX
SKRIPSI
Diajukan Untuk Memenuhi Sebagian Persyar atan
Dalam Memperoleh Gelar Sar jana Komputer
J urusan Teknik Infor matika
Oleh :
ARDI MARTONO
0734010030
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
2011
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
ABSTRAKSI
Ar di Mar tono, 2011. Implementasi Web Vulnerability Scanner sebagai Add
Ons Mozilla Firefox (dibimbing oleh Nur Cahyo Wibowo,S.Kom.,M.Kom
dan Achmad J unaidi, S.Kom)
Internet pada era ini, sudah menyebar di semua kalangan masyarakat.
Sehingga para pengguna internet masih belum memperhatikan segi keamanan
dari sebuah website, khususnya mengenai penyerangan SQL Injection dan XSS
Injection. Sehingga perlu dikembangkan aplikasi Web Vurnerability Scanner
sebagai Add Ons Mozilla Firefox dengan model pendeteksian yang bisa
mengetahui kelemahan website tersebut. Sehingga website yang masih
mempunyai kelemahan terhadap SQL Injection dan XSS Injection dapat segera di
deteksi dan diperbaiki.
Dalam Tugas akhir ini, aplikasi dirancang dengan bahasa pemrograman
JavaScript dan HTML. Aplikasi ini mencari perbedaan antara proses URL asli
dan URL setelah mengalami pendeteksian. Aplikasi tersebut melakukan scanning
secara Online. Hasil scanning ditampilkan langsung oleh aplikasi untuk
dipergunakan serta untuk menambah wawasan tentang pengemasan aplikasi
secara sederhana.
Dilakukan ujicoba terhadap aplikasi ini dengan beberapa website. Dari
beberapa website yang diacak untuk dilakukan testing dan ditemukan rata-rata
hasil proses lebih banyak dibandingkan hasil akhir dari perolehan pendeteksian
kelemahan.
Keyword: Web Vulnerability Scanner, XSS Injection dan SQL Injection.
xvi
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
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 “IMPLEMENTASI WEB VULNERABILITY SCANNER
SEBAGAI ADD ONS MOZILLA FIREFOX” yang merupakan persyaratan dalam
memperoleh gelar Sarjana Komputer di Universitas Pembangunan Nasional
“VETERAN” Jatim.
Penulis mengucapkan terima kasih yang sebesar-besarnya kepada pihakpihak yang telah membantu baik materiil maupun dorongan spirituil untuk
menyelesaikan penulisan kerja praktek ini, terutama kepada:
1. Orang Tua dan keluarga atas motivasi dan doanya sehingga semua yang
dikerjakan dapat berjalan lancar.
2. Bapak Achmad Junaidi, S.Kom, dan Bapak Nur Cahyo Wibowo,
S.Kom,.M.Kom. selaku Dosen Pembimbing yang telah meluangkan waktu
untuk memberikan bimbingan selama proses pelaksanaan Tugas Akhir
penulis.
3. Bapak Prof. Dr. Ir. Teguh Soedarto, MP, selaku Rektor UPN “Veteran” Jatim.
4. Bapak Ir. Sutiyono, MT selaku DEKAN FTI UPN “VETERAN” Jatim.
5. Ibu Dr. Ir. Ni Ketut Sari, MT. Selaku Kepala Jur. Teknik Informatika, FTI
UPN “VETERAN” Jatim
6. Special to: Aditya Wardana yang banyak sekali memberi motivasi dan
membantu saya dalam menemukan solusi didalam pengerjaan tugas akhir ini
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
i
dan laptop Lenovo Intel Centrino Core I 3 yang selalu setia menemani saya
untuk mengerjakan ini semua.
7. Dosen-dosen Teknik Informatika dan Sistem Informasi, staff dan segenap
akademika UPN “VETERAN” Jatim.
8. Teman-teman
baik
saya
yang
setia
menemani
mencari
inspirasi
gigih,Nanang,Yudith,Yursa,Malik,Sueb,Trea,Faisol,Novan,Rizal,Tobib,Candr
a,Bayu,Adi,Rezky,Dadus,Rahendra,Erik,Adit.
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, 09 Oktober 2011
Penulis
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
ii
DAFTAR ISI
Halaman
HALAMAN JUDUL
LEMBAR PENGESAHAN
LEMBAR PENGESAHAN DAN PERSETUJUAN
KETERANGAN REVISI
MOTTO
KATA PENGANTAR .............................................................................
i
DAFTAR ISI .............................................................................................
iii
DAFTAR TABEL ....................................................................................
vi
DAFTAR GAMBAR ...............................................................................
vii
ABSTRAKSI ............................................................................................ xvi
BAB I
PENDAHULUAN .....................................................................
1
1.1
Latar Belakang Masalah ....................................................
1
1.2
Perumusan Masalah ...........................................................
2
1.3
Batasan Masalah ................................................................
3
1.4
Tujuan ................................................................................
3
1.5
Manfaat Sistem Bagi Pengguna .........................................
3
1.6
Metodelogi .........................................................................
4
BAB II TINJAUAN PUSTAKA..............................................................
7
2.1
Sejarah Website dan Browser ............................................
6
2.2
Injeksi SQL ........................................................................
8
2.3
Injeksi XSS .........................................................................
8
2.4
Pengertian Scanning............................................................. 13
2.5
Contoh Penyerangan XSS.............. ....................................
14
2.6
Pembuatan Add-Ons Firefox..............................................
17
BAB III PERANCANGAN .....................................................................
21
3.1 Desain Sistem .....................................................................
21
3.2 Perancangan Sistem ............................................................
23
3.3 Perancangan Input …….......................................................
23
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
iii
3.4 Perancangan Proses .............................................................
24
3.4.1 Proses Scanning ......................................................
24
3.5 Perancangan Antar Muka ....................................................
33
3.5.1 Blok Arsitektur Sistem……………........................
33
3.5.2 Tampilan Antar Muka Aplikasi ............................... 34
3.5.3 Perancangan Uji Coba .............................................
35
BAB IV IMPLEMENTASI ...................................................................... 38
4.1 Implementasi Sistem ...........................................................
38
4.1.1 Interface utama .......................................................
38
4.1.2 Interface Scanning SQL Injection pada URL ...........
39
4.1.3 Interface Scanning SQL Injection pada PAGE ........
41
4.1.4 Interface Scanning SQL Injection pada SITE ..........
43
4.1.5 Interface Scanning XSS Injection pada URL ...........
47
4.1.6 Interface Scanning XSS Injection pada PAGE ........
48
4.1.7 Interface Scanning XSS Injection pada SITE ..........
51
4.1.8 Interface Get Info about Domain Website ...............
54
4.1.9 Interface Get Info about Client Connection ............
56
4.1.10 Interface Get Information about Cookie ...............
58
4.1.11 Interface Scanning Terakhir ...................................
60
BAB V PENGUJIAN DAN ANALISIS .................................................
61
5.1 Lingkup Pengujian ........................................................
61
5.2 Uji Coba ..............................................................................
61
5.2.1 Aplikasi Web Vulnerability Scanner ......................
61
5.2.2 Proses Scanning Secara Online ..............................
62
1) Scanning SQL Injection pada URL ...............
64
2) Scanning SQL Injection pada PAGE .........;..
66
3) Scanning SQL Injection pada SITE secara
cepat ..............................................................
68
4) Scanning SQL Injection pada SITE secara
penuh ............................................................
70
5) Scanning XSS Injection pada URL ...............
72
6) Scanning XSS Injection pada PAGE ............
74
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
iv
7) Scanning XSS Injection pada SITE secara
cepat ..............................................................
76
8) Scanning XSS Injection pada SITE secara
penuh
.....................................................
78
Get Info about Domain Website ..................
81
10) Get Info about Client Connection ................
82
11) Get Information about Cookie .....................
83
5.3 Analisis .............................................................................
84
BAB VI PENUTUP ................................................................................
86
6.1 Kesimpulan ........................................................................
86
6.2 Saran ..................................................................................
86
9)
DAFTAR PUSTAKA
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
v
DAFTAR TABEL
Halaman
Tabel 5.1
Daftar alamat website uji coba ……....................................
63
Tabel 5.2
Hasil Scanning pada berbagai website.................................
83
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
vi
DAFTAR GAMBAR
Halaman
Gambar 2.1 Informasi yang valid dari website (SQL)............................
10
Gambar 2.2 Informasi yang tidak valid dari website (SQL)....................
10
Gambar 2.3 Informasi yang valid dari website (XSS).............................
12
Gambar 2.4 Informasi yang tidak valid dari website .(XSS)…...............
13
Gambar 2.5 Coding XML register ESET….. .......................................... 15
Gambar 2.6 Coding PHP penyimpanan LOG........................................... 15
Gambar 2.7 Fake Register ESET……………........................................... 16
Gambar 2.8 Hasil LOG pada fake register………..................................... 17
Gambar 2.9 Komponen pendukung Add-Ons.......................................... 18
Gambar 2.10 Coding XML pada browser.xul……..................................... 18
Gambar 2.11 Komponen javascript pendukung ......................................... 19
Gambar 2.12 Tampilan icon pendukung……….......................................... 19
Gambar 2.13 Tampilan instalasi Add-Ons……………….......................... 20
Gambar 2.13 Tampilan hasil instalasi…………………….......................... 20
Gambar 3.1 Perancangan system secara global……………...................... 22
Gambar 3.2 Diagram alur scan XSS………………………...................... 25
Gambar 3.3 Diagram alur scan URL...........……...................................... 27
Gambar 3.4 Diagram alur scan PAGE……….......................................... 28
Gambar 3.5 Diagram alur scan SITE………………………. .................. 30
Gambar 3.6 Diagram alur scan SITE-fast…………………...................
31
Gambar 3.7 Diagram alur info Domain…………………………………
32
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
vii
Gambar 3.8
Diagram alur informasi client…………………………….
33
Gambar 3.9
Arsitektur Sistem Vulnerability Scanner ……...................
33
Gambar 3.10 Tampilan antar muka aplikasi………………….................
34
Gambar 3.11 Tampilan antar muka hasil scanning…………………….
35
Gambar 4.1
Tampilan menu utama……………………………………
38
Gambar 4.2
Halaman scanning SQL injection (URL)..........................
39
Gambar 4.3
Potongan Source Code SQL (URL)...................................
40
Gambar 4.4
Halaman Scanning SQL (page)…………..........................
41
Gambar 4.5
Potongan Source Code SQL (page)....................................
42
Gambar 4.6
Halaman Scanning SQL (SITE_fast).................................
43
Gambar 4.7
Halaman Scanning SQL (SITE_full)................................... 44
Gambar 4.8
Potongan Code Scanning SQL Site………………............
Gambar 4.9
Halaman Scanning XSS (URL)……………...................... 47
Gambar 4.10
Potongan Code Scanning XSS (URL)………. ................
47
Gambar 4.11
Halaman Scanning XSS (PAGE)…….............................
48
Gambar 4.12
Potongan Code Scanning XSS(PAGE)….......................
49
Gambar 4.13
Halaman Scanning XSS (SITE_fast)……........................
51
Gambar 4.14
Halaman Scanning XSS (SITE_full) ……......................
51
Gambar 4.15
Potongan kode Scanning XSS site..................................
53
Gambar 4.16 Halaman Info Domain …………………………….........
54
Gambar 4.17 Potongan Kode Info Domain ...........................................
55
Gambar 4.18 Halaman Info Client ……………………………….........
56
45
Gambar 4.19 Potongan Kode Info Client ................................................ 57
Gambar 4.20 Halaman Get Cookie ……………………………….........
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
viii
58
Gambar 4.21 Potongan Kode Get Cookie ................................................ 58
Gambar 4.22 Halaman Proses serta Hasil Scanning ………………......... 59
Gambar 5.1
Tampilan menu utama Addons. ......................................... 60
Gambar 5.2
Tampilan sebelum diinjeksi oleh SQL (URL)…................ 64
Gambar 5.3
Tampilan sesudah diinjeksi SQL ....................................... 64
Gambar 5.4
Tampilan sebelum diinjeksi SQL (page) ........................... 65
Gambar 5.5
Tampilan hasil scanning SQL (page) …............................
66
Gambar 5.6
Tampilan setelah diinjeksi ................................................
66
Gambar 5.7
Tampilan sebelum diinjeksi SQL SITE (fast)....................
67
Gambar 5.8
Tampilan hasil scanning SQL SITE (fast)..... .................... 68
Gambar 5.9
Tampilan setelah diinjeksi ..............................................
68
Gambar 5.10 Tampilan sebelum diinjeksi XSS SITE (FULL) ...............
69
Gambar 5.11 Hasil Scanning XSS Injection pada SITE (full) ................
70
Gambar 5.12 Tampilan diinjeksi XSS SITE (full) .................................. 70
Gambar 5.13 Tampilan sebelum diinjeksi XSS (URL) ........................... 72
Gambar 5.14 Hasil scanning XSS...........................................................
73
Gambar 5.15 Tampilan sesudah diinjeksi XSS (URL).................... .......
73
Gambar 5.16 Tampilan sebelum diinjeksi XSS (page) …………............ 73
Gambar 5.17 Tampilan hasil scanning XSS (page) ……………….......... 74
Gambar 5.18 Tampilan sesudah diinjeksi XSS(page) ……….................. 75
Gambar 5.19 Tampilan sebelum diinjeksi XSS SITE (fast)...................... 76
Gambar 5.20 Tampilan hasil scanning XSS SITE (fast)............................ 76
Gambar 5.21 Tampilan sesudah diinjeksi XSS SITE (fast) ….................. 77
Gambar 5.22 Tampilan sebelum diinjeksi XSS SITE( full)........................ 78
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
ix
Gambar 5.23 Hasil scanning XSS SITE (full) ........................................... 78
Gambar 5.24 Tampilan sesudah diinjeksi XSS SITE (full)........................ 79
Gambar 5.25 Tampilan Informasi website................................................. 80
Gambar 5.26 Tampilan info client…………………………………......... 81
Gambar 5.27 Hasil get cookie……………………………………............ 82
Gambar 5.28 Perbandingan hasil proses dan hasil scan…….................... 84
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
x
BAB I
PENDAHULUAN
1.1 Latar belakang
Di zaman yang semakin maju seperti sekarang ini perkembangan
teknologi internet telah menyebar diseluruh dunia dan kita mengenal telah
mengenal yaitu website, dimana website ini sudah meluas diseluruh dunia.
Bahkan kita bisa memanfaatkan sebuah teknologi internet untuk mengakses
website tersebut dan website tersebut dapat diakses dari berbagai lapisan
masyarakat dan usia, sudah bisa menggunakan fasilitas-fasilitas dalam
browsing dan download. Dalam hal ini akan membahas tentang internet
adalah sistem global dari seluruh jaringan komputer yang saling terhubung
menggunakan standar untuk melayani para pengguna diseluruh dunia. Banyak
dari para user internet sekarang ini belum menyadari tentang segi
keamanannya.
Untuk mengantisipasi adanya tindakan yang merugikan keamanan web,
user minimal harus mengetahui beberapa konsep, yaitu memastikan siapa
yang diajak untuk berkomunikasi di dunia internet, melindungi data-data yang
sangat penting, dan memastikan bahwa web yang diakses aman untuk
melakukan browsing, karena apabila user terlalu bebas dalam memberikan
informasi, maka hal terbesar adalah pengambilan informasi secara paksa atau
lebih dikenal dengan hacking.
Vulnerability scanner adalah alat yang digunakan untuk mengecek sebuah
website atau computer pada sebuah jaringan dan situs internet untuk diketahui
kelemahan tersebut. Hacker juga biasanya menggunakan port scanner. Port
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan
sumber.
1
2
scanner ini adalah alat untuk melihat port pada komputer tertentu untuk
mengakses komputer, dan kadang-kadang akan mendeteksi program nomor
versinya.
Sehingga diberikan firewall untuk melindungi komputer dari penyusup
dengan membatasi akses ke port, seorang hacker web biasanya menggunakan
beberapa metode yang diyakini bisa mendeteksi kelemahan sebuah website
yakni dengan metode SQL injection dan metode XSS.
Seiring perkembangan zaman yang semakin pesat terdapat beberapa cara
yang lebih sederhana untuk mengemas web vulnerability scanner ini menjadi
lebih mudah untuk digunakan yakni dengan menjadikan web tersebut sebagai
add-ons sebuah browser. Dimana tujuan dari pembuatan add-ons ini adalah
membantu user dan developer website untuk lebih berfokus kepada tingkat
keamanan sebuah web.
1.2 Rumusan Masalah
Dari latar belakang yang telah dijelaskan untuk membuat sebuah Add Ons
pada browser Mozilla firefox dengan menerapkan proses Vulnerability scanner
terdapat rumusan masalah. Adapun beberapa permasalahan yang ada sebagai
berikut:
a. Bagaimana mengemas suatu website kedalam sebuah addons yang
menerapkan proses vulnerability scanner yang dapat mendeteksi
kelemahan website.
b. Bagaimana addons tersebut dapat menerapkan pola pendeteksian
kelemahan sebuah web terhadap SQL Injection dan XSS (Cross Site
Scripting) pada alamat web yang diakses
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
3
c. Bagaimana add-ons tersebut bisa menampilkan hasil dari Vulnerability
Scanner untuk dapat diketahui oleh user.
1.3 Batasan Masalah
Dalam penyusunan tugas akhir ini, untuk mengatasi permasalahan yang
ada maka disusun beberapa batasan masalah sebagai berikut :
a. Aplikasi ini mendeteksi alamat URL pada sebuah website yang
memiliki kelemahan.
b. Aplikasi web yang dapat discan adalah alamat website yang dituliskan
kepada tag HTML dengan penulisan url yang disesuaikan dengan
penulisan html tersebut.
c. Kelemahan yang dibahas adalah menggunakan SQL injection dan
XSS.
d. Browser yang digunakan adalah Mozilla Firefox 3.6
1.4 Tujuan Penelitian
Adapun tujuan dari penelitian Tugas akhir ini yakni membuat sebuah addons vulnerability scanner yang dapat digunakan pada Browser Mozilla Firefox
yang membantu developer dan user untuk mengetahui kelemahan sebuah
website. Serta memberikan wawasan tentang pengemasan suatu aplikasi
kedalam bentuk yang sederhana sehingga lebih efisien dan mudah untuk
digunakan.
1.5 Manfaat Penelitian
Manfaat yang dapat diambil dari pembuatan add-ons vulnerability scanner:
a. Diharapkan untuk selanjutnya penyedia website lebih mementingkan segi
keamanan agar data yang dimiliki oleh user tetap terjaga keamanannya
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
4
b. Mengenai
segi
keamanan
tersebut
pembuat
website
minimal
memperhatikan script yang akan dibuat agar para hacker tidak dapat
menembus web tersebut.
c. Kepada user dan developer sebagai penambahan wawasan bahwa
vulnerability scanner ini tidak hanya dibuat secara web tetapi juga dapat
dikemas dengan sederhana menggunakan add-ons pada sebuah browser
Mozilla Firefox.
1.6 Metode Penelitian
Metode yang dilaksanakan dalam penelitian ini adalah.
a. Studi Literatur
Dilakukan dengan cara mencari segala macam informasi secara riset
keperpustakaan dan mempelajari buku-buku yang berhubungan dengan
masalah yang dihadapi, sehingga didapatkan sebuah materi serta
literatur yang jelas dan akurat.
b. Pengumpulan dan Analisa Data
Pengumpulan data dilakukan dengan cara : observasi, identifikasi dan
klasifikasi melalui studi literatur. Dari pengumpulan data tersebut
dapat dilakukan analisa data yaitu dalam proses pembuatan add ons
vulnerability scanner pada mozilla firefox.
c. Perancangan Program
Melakukan analisa awal tentang add ons yang akan dibuat yaitu suatu
pemecahan masalah yang dilakukan melalui system online dengan cara
pembuatan add ons vulnerability scanner pada Mozilla firefox dimana
add-ons tersebut dapat mendeteksi kelemahan sebuah website yang
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
5
dituliskan pada halaman browser serta memberikan hasil output dari
proses hasil scan yang dihasilkan oleh add ons tersebut yang dapat
dimanfaatkan.
d. 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.
e. Kesimpulan
Dibuat kesimpulan dari pengujian sistem tugas akhir dengan menguji
apakah hasilnya sesuai dengan yang diharapkan pada tujuan tugas
akhir.
1.7. Sistematika Penulisan
Dalam laporan tugas akhir ini, pembahasan disajikan dalam enam bab
dengan sitematika pembahasan sebagai berikut :
BAB I
PENDAHULUAN
Berisi latar belakang yang menjelaskan tentang tugas akhir yang
dilakukan, rumusan masalah, tujuan, manfaat dan sistematika
penulisan yang digunakan dalam laporan kerja praktek ini.
BAB II
TINJAUAN PUSTAKA
Berisi tentang materi-materi penunjang pengerjaan tugas akhir tersebut.
BAB III
PERANCANGAN
Berisi tentang perancangan tugas akhir dari berupa sebuah diagram
alur serta penjelasan proses addons tersebut berjalan.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
6
BAB IV
IMPLEMENTASI
Berisi tentang implementasi addons yang telah dikerjakan sebelumnya
yang didalamnya berisi tentang interface dan beberapa potongan coding
program.
BAB V
PENGUJ IAN DAN ANALISA
Pada babi ni akan dijelaskan tentang skenario penyerangan terhadap
addons vulnerability scanner pada sebuah website yang diduga memiliki
kelemahan dan memiliki celah untuk di hack.
BAB VI
PENUTUP
Bab ini berisi tentang kesimpulan yang dapat diambil dari keseluruhan isi
dari laporan dan tugas akhir serta Saran yang disampaikan penulis demi
kesempurnaan sistem yang lebih baik.
DAFTAR PUSTAKA
Pada bagian ini akan dipaparkan tentang sumber-sumber literatur yang
digunakan dalam pembutan laporan ini.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB II
TINJ AUAN PUSTAKA
2.1 Sejarah Web Dan Serta Br owser
Sejarah web browser dimulai pada akhir tahun 80-an, ketika berbagai
teknologi baru menjadi dasar pembuatan web browser pertama di dunia,
WorldWideWeb(WWW), oleh Tim Berners-Lee pada tahun 1991.Browser
tersebut menggabungkan beberapa teknologi software dan hardware yang
sudah diciptakan maupun masih baru diciptakan pada waktu itu
Diperkenalkannya web browser NCSA Mosaic pada tahun 1993 salah satu
web browser grafis pertama – memulai ledakan penggunaan web browser.
Marc Andreessen, pimpinan tean Mosaic di NCSA kemudian mendirikan
perusahaannya sendiri, Netscape dan meluncurkan Netscape Navigator pada
tahun 1994. Dengan cepat Netscape Navigator menjadi browser paling
populer di dunia, pada masa jayanya digunakan oleh 90% pengguna web
browser.
Microsoft pun merespon dengan web browser-nya, Internet Explorer (IE)
pada tahun 1995, sehingga mencetuskan perang browser pertama di dunia. IE
dengan Windows, Microsoft mampu mengambil alih posisi pemimpin pasar
web browser. Pada tahun 2002, IE digunakan oleh lebih dari 95% pengguna.
Dari beberapa browser yang sangat diminati oleh para user di internet
adalah Mozilla Firefox dimana browser tersebut memiliki banyak nama
sebelum berganti dengan nama yang
sudah kita kenal secara familiar
sekarang, Browser ini mempunyai 2 nama sebelum akhirnya menjelma dengan
7
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
8
nama Mozilla Firefox Nama awalnya adalah Phoenix dan kemudian berganti
lagi dengan dikenal sebagai Mozilla Firebird.
Sebelum rilis versi 1.0-nya pada 9 November 2004, Firefox telah
mendapatkan sambutan yang sangat bagus dari pihak media. Dikarenakan
Firefox adalah open source application maka dalam waktu yang singkat
aplikasi browser ini telah didownload lebih dari 5 juta download dalam 12
hari pertama rilisnya dan 6 juta hingga 24 November 2004.
Melalui Firefox, Yayasan Mozilla betujuan untuk mengembangkan sebuah
browser web yang kecil, cepat, sederhana, dan sangat bisa dikembangkan
(terpisah dari Mozilla Suite yang lebih besar). Firefox telah menjadi fokus
utama perkembangan Mozilla bersama dengan client e-mail Mozilla
Thunderbird, dan telah menggantikan Mozilla Suite sebagai rilis browser
resmi yayasan Mozilla.
Mozilla merilis versi terbaru browser populernya, Firefox 3.6. Dengan
sangat baik, Mozilla mengklaim Firefox 3.6 adalah browser terbaik di dunia,
seperti terpajang di situs Mozilla Firefox. Dilihat dari tampilan, Firefox 3.6
yang sudah bisa diunduh ini tidak jauh beda dibanding dengan edisi 3.5.
Namun dari sisi kemampuan, beberapa hal baru telah ditambahkan di
dalamnya Menurut Mozilla, Firefox 3.6 ditingkatkan sisi performa maupun
stabilitasnya serta dilengkapi beberapa fitur baru bagi user maupun developer.
Software browser internet ini tersedia baik untuk Windows, MacOS maupun
Linux, waktu respons dan performa JavaScript yang lebih baik, membuat
Mozilla memperkirakan Firefox 3.6 lebih cepat 20 persen dari sebelumnya
dan merupakan Firefox yang sangat support dengan addons apapun, fitur baru
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
9
yang disematkan antar lain tool tema baru, yang memungkinkan user
mengedit dan memasang tema visual tanpa perlu restart browser. Selain itu,
Firefox 3.6 juga bisa mendeteksi otomatis jika ada plug-ins yang perlu
diupdate.
2.2 Injeksi SQL
Injeksi SQL adalah sebuah teknik yang memanfaatkan sebuah celah
keamanan yang terjadi dalam lapisan basis data sebuah aplikasi. Celah ini
terjadi ketika masukan pengguna tidak disaring secara benar dari karakterkarakter bentukan string yang ditambahkan dalam pernyataan SQL atau
inputan pengguna tidak bertipe kuat dan karenanya dijalankan tidak sesuai
harapan. Ini sebenarnya adalah sebuah contoh dari sebuah kategori celah
keamanan yang lebih umum yang dapat terjadi setiap kali sebuah bahasa
pemrograman.
Bentuk injeksi SQL ini terjadi ketika inputan user berupa karakter yang
tidak disaring dari karakter-karakter lemah dan kemudian diteruskan ke dalam
sebuah pernyataan SQL. Ini menimbulkan potensi untuk memanipulasi
pernyataan-pernyataan yang dilakukan pada basis data oleh pengguna akhir
aplikasi.
Berikut ini contoh sederhana dari penginjeksian SQL pada sebuah website
yang mempunyai kelemahan terhadap injeksi SQL melalui alamat URL.
Apabila sebuah halaman pada website diakses secara benar sesuai aturan
website tersebut maka hasil informasi yang ditampakkan juga benar sesuai
permintaan pengguna.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
10
Gambar 2.1 Informasi Sebenarnya Website
Tetapi apabila dilakukan perubahan terhadap alamat URL maka akan
muncul sebuah pesan error dari website yang dapat dipergunakan oleh hacker
untuk melakukan peretasan terhadap website tersebut.
Gambar 2.2 Informasi Setelah Proses Pendeteksian
Hacker tinggal mengubah simbol (‘) pada alamat URL dengan beberapa
query SQL untuk mendapatkan informasi penting yang ditampilkan website
tersebut tanpa ijin dari hasil query SQL yang dieksekusi oleh website tersebut.
2.3 Injeksi XSS
XSS merupakan kependekan yang digunakan untuk istilah Cross-site
scripting (XSS) adalah jenis kerentanan keamanan komputer biasanya
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
11
ditemukan dalam aplikasi web yang memungkinkan penyerang untuk
menginjeksi script sisi klien ke dalam halaman web dilihat oleh pengguna lain.
Sebuah kerentanan cross-site scripting dapat digunakan oleh penyerang untuk
memotong kontrol akses tersebut sebagai kebijakan asal yang sama. Cross-site
scripting dilakukan pada website adalah sekitar 80% dari semua kerentanan
keamanan didokumentasikan oleh Symantec pada 2007. Pengaruh mereka bisa
berkisar dari gangguan kecil dengan resiko keamanan yang signifikan,
tergantung pada kepekaan data ditangani oleh situs yang rentan dan sifat dari
setiap mitigasi keamanan yang dilaksanakan oleh pemilik situs.
Celah Cross-site scripting adalah celah keamanan aplikasi web yang
memungkinkan penyerang untuk mem-bypass mekanisme klien-sisi keamanan
biasanya dikenakan pada konten web oleh browser modern. Dengan mencari
cara menyuntikkan script ke dalam halaman web, seorang penyerang bisa
mendapatkan hak akses diangkat ke sensitif-konten halaman tertentu, session
cookies, dan berbagai informasi lainnya yang dikelola oleh browser atas nama
pengguna.
XSS memiliki macam yakni cross-site scripting non-persistent (atau
tercermin) sejauh ini jenis yang paling umum diketahui. Lubang ini muncul
ketika data yang diberikan oleh klien web, yang paling umum dalam
parameter permintaan HTTP atau dalam pengiriman form HTML, adalah
digunakan langsung oleh script sisi server untuk menghasilkan halaman hasil
untuk user tersebut, tanpa pembenaran sanitasi permintaan tersebut.
Karena dokumen HTML memiliki struktur, datar yang menggabungkan
laporan kontrol, format, dan isi yang sebenarnya, setiap data yang disediakan
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
12
pengguna non-divalidasi termasuk dalam halaman hasil tanpa pengkodean
HTML yang tepat, dapat menyebabkan markup injeksi. Sebuah contoh klasik
dari sebuah vektor potensial adalah mesin pencari situs, jika seseorang
mencari sebuah string, string pencarian biasanya akan ditampilkan kembali
kata demi kata pada halaman hasil untuk menunjukkan apa yang dicari. jika
jawaban ini tidak benar melarikan diri atau menolak karakter HTML kontrol,
kelemahan cross-site scripting akan terjadi.
Berikut ini contoh sederhana dari penginjeksian XSS pada sebuah website
yang mempunyai kelemahan terhadap injeksi XSS melalui alamat URL.
Apabila sebuah halaman pada website diakses secara benar sesuai aturan
website tersebut maka hasil informasi yang ditampakkan juga benar sesuai
permintaan pengguna.
Gambar 2.3 Informasi Sebenarnya Website
Tetapi apabila dilakukan perubahan terhadap alamat URL maka akan
muncul sebuah tulisan yang tidak semestinya muncul sesuai data pada sistem
website tersebut. Hal itu yang akan dipergunakan oleh peretas untuk
melakukan peretasan terhadap website tersebut.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
13
Gambar 2.4 Informasi Setelah Proses Pendeteksian
Dari gambar tersebut hacker tinggal menambahkan script yang berisikan
code javascript pada alamat URL untuk mendapatkan informasi penting yang
ditampilkan website tersebut tanpa ijin dari hasil script yang dieksekusi oleh
website tersebut.
2.4 Pengertian Scanning
Pengertian Scanning adalah Aktifitas yang dilakukan untuk mendapatkan
informasi target. dimana pada proses scanning tersebut terdapat target yang
dicari yakni :
1. IP address
2. Sistem operasi
3. Arsitektur system
Di dalam model scanning tersebut terdapat beberapa tipe scanning yang
berbeda dan memiliki metode dan cara yang berbeda, yaitu:
1. Port scanning
2. Network scanning
3. Vulnerability scanning
Dari scanning tersebut memiliki macam kalisifikasi yang memiliki fungsi
yang berbeda pula dimana disetiap scanning tersebut, fungsi tersebut bisa
digunakan untuk bermacam-macam kegunaan yang berbeda tergantung dari
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
14
user tersebut menggunakanya, dari beberapa macam scanner tersebut yang
paling banyak digunakan oleh pengguna adalah.
1. TCP connect () scanning
2. Half open/TCP syn scanning
3. Stealth scanning
4. UDP scanning
2.5 Contoh penyer angan XSS
Sesuai dengan namanya Cross Site Scripting yang berasal dari kata
“Cross” berarti silang atau menyilang, “Site” berarti tempat(halaman website),
“Scripting” berarti pengkodean atau penulisan kode. Dari sini user dapat
mendefinisikan bahwa Cross Site Scripting atau yang lebih dikenal dengan XSS
berarti penyilangan suatu kode pada halaman website. XSS bisa juga diartikan
penulisan kode pada sebuah halaman website agar berbelok ke target yang di
inginkan. XSS bekerja pada sisi client. Meskipun XSS ini bekerja pada sisi
client tetapi efek yang dihasilkan akan memaksa server untuk menjalankan
kode yang dimasukkan.
XSS bisa berjalan melalui 3 cara :
1. Pemanfaatan Tools
2. Penulisan pada source code
3. Penulisan pada URL
Berikut adalah contoh menggunakan vulnerable XSS dari website
www.eset.com.mx, ESET merupakan salah satu perusahaan AntiVirus yang
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
15
juga sangat terkenal di Dunia, namun memiliki kelemahan juga di
websitenya.Test XSS apakah bisa berjalan di website, berikut contohnya:
http://www.eset.com.mx/xtrasappz/evalform/index.php?t=emav&pr omo
code=% 22% 3E% 3Ccenter% 3E% 3Cfont% 20size=% 22300% 22% 3EBinus%
20Hacker% 20Ada% 20Disini% 3Cbr% 3Ehttp://www.binushacker .net% 3C/f
ont% 3E% 3C/center% 3E% 3C/
1. Test cookie
2. Buat coding untuk halaman register di ESET
Gambar 2.5 Coding XML Register ESET
Pada gambar diatas merupakan proses dalam pembuatan halaman fake
register pada situs ESET yang memanfaatkan metode XSS dimana fake
register tersebut digunakan untuk mengelabuhi user .
3. Kemudian membuat php untuk menerima hasil & menyimpannya di log
Gambar 2.6 Coding PHP Penyimpanan LOG
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
16
Pada gambar diatas menjelaskan tentang potongan coding php untuk
memasukkan log palsu yang merupakan hasil injeksi dari metode XSS.
4. Sebelum melakukan proses, maka coding XSS yang didapatkan pada
penyerangan tersebut yakni :
<iframe sr c=http://restinpeace.biz/eset/r egister.php
width=1500>
Di encode menjadi :
% 3Ciframe% 20sr c% 3Dhttp% 3A% 2F% 2Fr estinpeace.biz% 2Feset%
2Fr egister .php% 20width% 3D1500% 3E <iframe
src=http://r estinpeace.biz/eset/register .php width=1500>
<iframe sr c=http://restinpeace.biz/eset/setfree.()php
width=1500>
Gambar 2.7 Fake Register ESET
Berikut adalah gambar fake register eset yang merupakan hasil dari
injeksi pada situs ESET, dimana pada situs tersebut telah dimasuki coding
buatan untuk masuk kedalam registerpada situs ESET tersebut.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
17
5. Selanjutnya cek log yang masuk
Gambar 2.8 Hasil LOG Pada Fake Register
Gambar diatas adalah hasil log yang masuk yang didapatkan dari user
yang memasukkan register tersebut dan didalam log tersebut terdapat
informasi pengguna yang memiliki e-mail dan password
2.6 Pembuatan add-ons seder hana pada mozilla fir efox
Plugin atau Add-ons mozilla adalah tool menu tambahan yang bisa
di tambahkan di MOZILLA FIREFOX BROWSER. Mencari sebuah
plugin untuk keperluan tertentu dari mozilla anda bisa melalui Menu
Tools ( disebelah Help) Add ons atau langsung masuk ke alamat Add-ons
mozilla. Dalam hal soal internet, user memang lebih sering memakai
mozilla karena cepat, mudah, dan adanya add-ons yang banyak pilihan
membuat pekerjaan lebih mudah.
Berikut ini adalah cara sederhana membuat sebuah add-ons pada
Mozilla firefox:
1. Buatlah folder pendukung add-ons dimana pada folder tersebut akan
terdapat komponen yang harus dibuat agar add-ons dapat berjalan
dengan baik.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
18
Gambar 2.9 Komponen Pendukung Add-ons
2. Tentukan file-file yang harus dibuat untuk mendukung add ons dalam
hal ini adalah (install.r df, chrome manifest) dimana kedua file
tersebut digunakan untuk instalasi dan memberikan fungsi pada addons.
3. Membuat overlay dasar (browser .xul) yang di dalamnya terdapat
kumpulan coding pendukung yang berfungsi sebagai pemanggilan
fungsi sistem javascript. Contoh sederhana pembuatan br owser.xul
adalah:
Gambar 2.10 Coding XML Yang Terletak Pada Browser.XUL
4. Buatlah beberapa coding sederhana dalam bentuk (.js) dalam menu
content yang merupakan fungsi yang akan dipanggil pada browser.xul
untuk diaplikasikan
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
19
Gambar 2.11Komponen Javascript Pendukung Add-ons
5. Buatlah beberapa image sederhana dalam bentuk (.png) dalam menu
content yang merupakan fungsi yang akan dipanggil pada browser.xul
untuk diaplikasikan kedalam toolbar.
Gambar 2.12 Tampilan Icon Pendukung
6. Sertakan (.css) untuk membuat toolbar icon tersebut kedalam sebuah
add ons.
7. Daftarkan (.CSS,.JS) kedalam (.XUL) agar fungsi tersebut dapat di
panggil dan dapat di install kedalam file (install.rdf).
8. Kemas satu paket add-ons tersebut kedalam file extension (.XPI) agar
lebih mudah dikenal oleh firefox.
9. Drag file (.xpi) tersebut kedalam mozilla firefox dan akan terinstall
secara otomatis dan restart firefox
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
20
Gambar 2.13 Tampilan Instalasi Add-ons
10.
Add-ons firefox siap untuk di gunakan
Gambar 2.13 Tampilan Hasil Instalasi Add-ons
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB III
PERANCANGAN
3.1 Desain Sistem
Desain system merupakan prosedur perancangan sistem secara umum
untuk membangun sebuah add-ons Web Vulnearbility Scanner pada Mozilla
firefox terhadap kelemahan web dengan menggunakan XSS dan SQL Injection
dimana pada perancangan tersebut akan dijelaskan tahap-tahap serta alur yang
digunakan pada add ons Vulnerability scanner tersebut dan memiliki beberapa
tahap, antara lain:
a. Data Scan
Perancangan data yaitu perancangan data-data yang berkaitan dengan
pembuatan aplikasi add ons tersebut, meliputi :
1. Input
Data input yang di dalamnya terdapat data-data penunjang
sebagai inputan pembuatan sistem. Dalam add ons ini data yang
dibutuhkan adalah berupa alamat URL yang didapatkan dari tab
jendela website yang sedang diakses.
2. Output
Dari proses inputan tersebut, Sistem akan menggunakannya
sampai didapatkan hasil yaitu output. Dalam aplikasi ini hasil
proses ditampilkan secara new tab yang berisi proses serta hasil
dari proses tersebut..
21
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
22
b. Proses
Perancangan proses yaitu bagaimana sistem akan bekerja serta
proses-proses yang digunakan, dari masuknya inputan yang diproses oleh
addons sampai outputnya.
c. Antar muka
Perancangan
antarmuka
menjelaskan
tentang
desain
dan
implementasi addons yang digunakan dalam sistem yang dibuat secara
keseluruhan perancangan.
Hasil Injeksi
Gambar 3.1 Perancangan Sistem Secara Global
Dari Gambar 3.1 tersebut :
1. Aplikasi add ons tersebut melakukan permintaan data ke server web
berupa alamat URL yang diminta.
2. Server akan memberikan balasan berupa teks Tag HTML.
3. Add ons memproses hasil tersebut, kemudian mendapatkan struktur URL
dari hasil pencarian dan menginjeksi struktur URL tersebut.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
23
4. Add ons mengirim request ke server berupa struktur hasil pencarian yang
telah diinjeksi.
5. Server mengirim hasil injeksi ke aplikasi.
6. Add ons memberikan report proses keseluruhan.
3.2 Per ancangan Sistem
Perancangan sistem ini yang akan diuraikan pada sub bab di bawah ini
yakni :
3.2.1
Addons Vulnerability Scanner Ber basis Online
Pada Web Vulnerability Scanner berbasis online ini berjalan secara
online. Begitu juga dengan web yang akan di scan juga harus terhubung
dengan internet. Input dari addons vulnerability scanner ini adalah berupa
URL dari web yang akan di scan.
3.3 Per ancangan Input
Dalam perancangan input, akan dijelaskan mengenai inputan yang terdapat
dalam aplikasi sesuai dengan fungsinya.
1. Input Web Vulnerability Scanning
Untuk menjalankan web vulnerability scanner berbasis online ini
menggunakan input berupa :
a. URL
Pada aplikasi ini alamat URL akan didapatkan secara otomatis
pada tab window yang sedang diakses. kemudian dilakukan proses
request kepada server sehingga server tersebut memberikan respon
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
24
berupa HTML kepada client. Dan respon berupa Tag HTML tersebut
itulah yang akan dilakukan proses scanning.
3.4 Per ancangan Pr oses
Perancangan proses pada bagian ini akan menjelaskan tentang bagaimana
permintaan dari user sesuai dengan menu yang ada pada add ons tersebut
yang akan diproses menjadi sebuah output.
3.4.1 Pr oses Scanning
Pada perancangan sistem ini, terdapat menu utama dan tambahan. Pada
menu utama terdapat dua menu yaitu pencarian kelemahan terhadap injeksi
SQL dan pencaharian kelemahan terhadap injeksi XSS.
Pada menu pencarian kelemahan terhadap injeksi SQL terdapat empat
sub menu diantaranya pencarian pada alamat URL yang sedang dibuka,
pencarian pada page yang sedang dibuka, pencarian pada seluruh halaman
dalam satu website dengan site fast, dan pencarian pada seluruh halaman
dalam satu website site full.
Pada menu XSS juga terdapat pencarian kelemahan dimana pada menu
XSS injection tersebut terdapat 4 sub menu dimana fungsinya juga sama
dengan SQL injection tetapi memiliki cara-cara yang berbeda didalam
pencarian kelemahan.
Pada perancangan sistem aplikasi ini, diambil dari sebuah langkah
sederhana dalam mencari kelemahan terhadap injeksi SQL maupun XSS yang
sudah dibuat sebelumnya. Berikut diagram alur dari prosenya yang akan di
gambarkan pada diagram alur :
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
25
ya
Tidak
Gambar 3.2 Diagram Alur Scan
Penjelasan dari Gambar 3.2 adalah
1. Addons Vulnerability Scanning melakukan request ke server berupa
URL yang telah di inputkan oleh pengguna.
2. Server memberi respon berupa File HTML yang di minta aplikasi
Vulnerability Scanning sesuai input URL.
3. Kemudian aplikasi Vulnerability Scanning mencari kelemahan
setiap File HTML yang telah diberikan oleh server.
4. Addons Vulnerability Scanning menangkap semua tag dari File
HTML sudah didapatkan dari server.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
26
5. Proses pengecekan apakah terdapat parameternya atau tidak, jika
tidak ada maka aplikasi akan kembali lagi melakukan proses
selanjutnya jika ada tanda yang dimaksud maka akan lanjut ke
proses selanjutnya.
6. Proses selanjutnya aplikasi menulis ulang parameter tersebut
dengan script injeksi.
7. Selanjutnya aplikasi mengirim ulang ke server berupa URL yang
parameternya telah di injeksi.
8. Server memberikan respon berupa HTML, kemudian HTML
tersebut di scan.
9. Apakah pada respon HTML tersebut terdapat script yang
diinjeksikan, jika ya maka web tersebut mempunyai kelemahan dan
jika tidak maka web tersebut tidak mempunyai kelemahan terhadap
serangan XSS.
Dilakukan pengembangan terhadap proses diatas yang dijelaskan
sebelumnya dimana addons ini terdiri dari beberapa menu. Addons ini
terdapat empat macam cara pencarian yaitu pencarian terhadap alamat URL
yang sedang aktif, Page yang sedang dibuka, seluruh alamat URL (link)
dalam satu website baik secara Site Fast atau Site Full. Setiap menu tersebut
diciptakan sesuai kebutuhan pengguna dalam hal efisiensi waktu yang
dibutuhkan untuk proses pendeteksian. Dari empat macam pendeteksian
memiliki waktu yang berbeda dalam prosesnya masing-masing. Aplikasi ini
juga ditambahkan beberapa menu tambahan yaitu menu untuk mendaptkan
informasi mengenai domain yang digunakan oleh website tersebut, informasi
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
27
client yang dipergunakan oleh user, dan informasi cookie pada browser
Mozilla firefox yang sesuai dengan nama website yang sedang dibuka.
Berikut adalah pembahasan empat sub menu pada menu pencarian kelemahan
terhadap injeksi SQL maupun XSS. Sub menu pertama adalah pencarian pada
alamat URL yang sedang dibuka. Proses submenu ini sebagai berikut :
Gambar 3.3 Diagram Alur Scan URL
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
28
Aplikasi membutuhkan data masukan tetapi data masukan langsung
diambilkan dari alamat URL pada tab yang sedang aktif. Jika alamat URL
tersebut terdapat simbol “=” maka aplikasi akan membuat beberapa alamat
URL baru dari hasil pengubahan terhadap alamat URL yang sebenarnya.
Aplikasi akan mengakses halaman dengan alamat URL yang belum dan
sudah diubah. Hasil dari akses terhadap alamat URL yang diubah dengan
yang belum diubah akan dideteksi apakah terdapat positif ciri-ciri injeksi
SQL maupun XSS atau tidak.
Submenu kedua adalah pencarian kelemahan terhadap injeksi SQL
maupun XSS pada halaman yang sedang dibuka. Proses submenu ini sebagai
berikut :
T
Gambar 3.4 Diagram Alur Scan Pada PAGE
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
29
Proses yang terjadi pada gambar diatas hampir sama dengan proses
pencarian kelemahan terhadap SQL maupun XSS sebelumnya dimana
perbedaannya adalah proses pencarian dilakukan berulang sesuai banyaknya
URL pada page yang dibuka dan masih dalam satu website. Setiap URL
dilakukan pencarian sampai sem
SEBAGAI ADD ONS MOZILLA FIREFOX
SKRIPSI
Oleh :
ARDI MARTONO
0734010030
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
2011
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
IMPLEMENTASI WEB VULNERABILITY SCANNER
SEBAGAI ADD ONS MOZILLA FIREFOX
SKRIPSI
Diajukan Untuk Memenuhi Sebagian Persyar atan
Dalam Memperoleh Gelar Sar jana Komputer
J urusan Teknik Infor matika
Oleh :
ARDI MARTONO
0734010030
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
2011
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
ABSTRAKSI
Ar di Mar tono, 2011. Implementasi Web Vulnerability Scanner sebagai Add
Ons Mozilla Firefox (dibimbing oleh Nur Cahyo Wibowo,S.Kom.,M.Kom
dan Achmad J unaidi, S.Kom)
Internet pada era ini, sudah menyebar di semua kalangan masyarakat.
Sehingga para pengguna internet masih belum memperhatikan segi keamanan
dari sebuah website, khususnya mengenai penyerangan SQL Injection dan XSS
Injection. Sehingga perlu dikembangkan aplikasi Web Vurnerability Scanner
sebagai Add Ons Mozilla Firefox dengan model pendeteksian yang bisa
mengetahui kelemahan website tersebut. Sehingga website yang masih
mempunyai kelemahan terhadap SQL Injection dan XSS Injection dapat segera di
deteksi dan diperbaiki.
Dalam Tugas akhir ini, aplikasi dirancang dengan bahasa pemrograman
JavaScript dan HTML. Aplikasi ini mencari perbedaan antara proses URL asli
dan URL setelah mengalami pendeteksian. Aplikasi tersebut melakukan scanning
secara Online. Hasil scanning ditampilkan langsung oleh aplikasi untuk
dipergunakan serta untuk menambah wawasan tentang pengemasan aplikasi
secara sederhana.
Dilakukan ujicoba terhadap aplikasi ini dengan beberapa website. Dari
beberapa website yang diacak untuk dilakukan testing dan ditemukan rata-rata
hasil proses lebih banyak dibandingkan hasil akhir dari perolehan pendeteksian
kelemahan.
Keyword: Web Vulnerability Scanner, XSS Injection dan SQL Injection.
xvi
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
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 “IMPLEMENTASI WEB VULNERABILITY SCANNER
SEBAGAI ADD ONS MOZILLA FIREFOX” yang merupakan persyaratan dalam
memperoleh gelar Sarjana Komputer di Universitas Pembangunan Nasional
“VETERAN” Jatim.
Penulis mengucapkan terima kasih yang sebesar-besarnya kepada pihakpihak yang telah membantu baik materiil maupun dorongan spirituil untuk
menyelesaikan penulisan kerja praktek ini, terutama kepada:
1. Orang Tua dan keluarga atas motivasi dan doanya sehingga semua yang
dikerjakan dapat berjalan lancar.
2. Bapak Achmad Junaidi, S.Kom, dan Bapak Nur Cahyo Wibowo,
S.Kom,.M.Kom. selaku Dosen Pembimbing yang telah meluangkan waktu
untuk memberikan bimbingan selama proses pelaksanaan Tugas Akhir
penulis.
3. Bapak Prof. Dr. Ir. Teguh Soedarto, MP, selaku Rektor UPN “Veteran” Jatim.
4. Bapak Ir. Sutiyono, MT selaku DEKAN FTI UPN “VETERAN” Jatim.
5. Ibu Dr. Ir. Ni Ketut Sari, MT. Selaku Kepala Jur. Teknik Informatika, FTI
UPN “VETERAN” Jatim
6. Special to: Aditya Wardana yang banyak sekali memberi motivasi dan
membantu saya dalam menemukan solusi didalam pengerjaan tugas akhir ini
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
i
dan laptop Lenovo Intel Centrino Core I 3 yang selalu setia menemani saya
untuk mengerjakan ini semua.
7. Dosen-dosen Teknik Informatika dan Sistem Informasi, staff dan segenap
akademika UPN “VETERAN” Jatim.
8. Teman-teman
baik
saya
yang
setia
menemani
mencari
inspirasi
gigih,Nanang,Yudith,Yursa,Malik,Sueb,Trea,Faisol,Novan,Rizal,Tobib,Candr
a,Bayu,Adi,Rezky,Dadus,Rahendra,Erik,Adit.
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, 09 Oktober 2011
Penulis
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
ii
DAFTAR ISI
Halaman
HALAMAN JUDUL
LEMBAR PENGESAHAN
LEMBAR PENGESAHAN DAN PERSETUJUAN
KETERANGAN REVISI
MOTTO
KATA PENGANTAR .............................................................................
i
DAFTAR ISI .............................................................................................
iii
DAFTAR TABEL ....................................................................................
vi
DAFTAR GAMBAR ...............................................................................
vii
ABSTRAKSI ............................................................................................ xvi
BAB I
PENDAHULUAN .....................................................................
1
1.1
Latar Belakang Masalah ....................................................
1
1.2
Perumusan Masalah ...........................................................
2
1.3
Batasan Masalah ................................................................
3
1.4
Tujuan ................................................................................
3
1.5
Manfaat Sistem Bagi Pengguna .........................................
3
1.6
Metodelogi .........................................................................
4
BAB II TINJAUAN PUSTAKA..............................................................
7
2.1
Sejarah Website dan Browser ............................................
6
2.2
Injeksi SQL ........................................................................
8
2.3
Injeksi XSS .........................................................................
8
2.4
Pengertian Scanning............................................................. 13
2.5
Contoh Penyerangan XSS.............. ....................................
14
2.6
Pembuatan Add-Ons Firefox..............................................
17
BAB III PERANCANGAN .....................................................................
21
3.1 Desain Sistem .....................................................................
21
3.2 Perancangan Sistem ............................................................
23
3.3 Perancangan Input …….......................................................
23
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
iii
3.4 Perancangan Proses .............................................................
24
3.4.1 Proses Scanning ......................................................
24
3.5 Perancangan Antar Muka ....................................................
33
3.5.1 Blok Arsitektur Sistem……………........................
33
3.5.2 Tampilan Antar Muka Aplikasi ............................... 34
3.5.3 Perancangan Uji Coba .............................................
35
BAB IV IMPLEMENTASI ...................................................................... 38
4.1 Implementasi Sistem ...........................................................
38
4.1.1 Interface utama .......................................................
38
4.1.2 Interface Scanning SQL Injection pada URL ...........
39
4.1.3 Interface Scanning SQL Injection pada PAGE ........
41
4.1.4 Interface Scanning SQL Injection pada SITE ..........
43
4.1.5 Interface Scanning XSS Injection pada URL ...........
47
4.1.6 Interface Scanning XSS Injection pada PAGE ........
48
4.1.7 Interface Scanning XSS Injection pada SITE ..........
51
4.1.8 Interface Get Info about Domain Website ...............
54
4.1.9 Interface Get Info about Client Connection ............
56
4.1.10 Interface Get Information about Cookie ...............
58
4.1.11 Interface Scanning Terakhir ...................................
60
BAB V PENGUJIAN DAN ANALISIS .................................................
61
5.1 Lingkup Pengujian ........................................................
61
5.2 Uji Coba ..............................................................................
61
5.2.1 Aplikasi Web Vulnerability Scanner ......................
61
5.2.2 Proses Scanning Secara Online ..............................
62
1) Scanning SQL Injection pada URL ...............
64
2) Scanning SQL Injection pada PAGE .........;..
66
3) Scanning SQL Injection pada SITE secara
cepat ..............................................................
68
4) Scanning SQL Injection pada SITE secara
penuh ............................................................
70
5) Scanning XSS Injection pada URL ...............
72
6) Scanning XSS Injection pada PAGE ............
74
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
iv
7) Scanning XSS Injection pada SITE secara
cepat ..............................................................
76
8) Scanning XSS Injection pada SITE secara
penuh
.....................................................
78
Get Info about Domain Website ..................
81
10) Get Info about Client Connection ................
82
11) Get Information about Cookie .....................
83
5.3 Analisis .............................................................................
84
BAB VI PENUTUP ................................................................................
86
6.1 Kesimpulan ........................................................................
86
6.2 Saran ..................................................................................
86
9)
DAFTAR PUSTAKA
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
v
DAFTAR TABEL
Halaman
Tabel 5.1
Daftar alamat website uji coba ……....................................
63
Tabel 5.2
Hasil Scanning pada berbagai website.................................
83
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
vi
DAFTAR GAMBAR
Halaman
Gambar 2.1 Informasi yang valid dari website (SQL)............................
10
Gambar 2.2 Informasi yang tidak valid dari website (SQL)....................
10
Gambar 2.3 Informasi yang valid dari website (XSS).............................
12
Gambar 2.4 Informasi yang tidak valid dari website .(XSS)…...............
13
Gambar 2.5 Coding XML register ESET….. .......................................... 15
Gambar 2.6 Coding PHP penyimpanan LOG........................................... 15
Gambar 2.7 Fake Register ESET……………........................................... 16
Gambar 2.8 Hasil LOG pada fake register………..................................... 17
Gambar 2.9 Komponen pendukung Add-Ons.......................................... 18
Gambar 2.10 Coding XML pada browser.xul……..................................... 18
Gambar 2.11 Komponen javascript pendukung ......................................... 19
Gambar 2.12 Tampilan icon pendukung……….......................................... 19
Gambar 2.13 Tampilan instalasi Add-Ons……………….......................... 20
Gambar 2.13 Tampilan hasil instalasi…………………….......................... 20
Gambar 3.1 Perancangan system secara global……………...................... 22
Gambar 3.2 Diagram alur scan XSS………………………...................... 25
Gambar 3.3 Diagram alur scan URL...........……...................................... 27
Gambar 3.4 Diagram alur scan PAGE……….......................................... 28
Gambar 3.5 Diagram alur scan SITE………………………. .................. 30
Gambar 3.6 Diagram alur scan SITE-fast…………………...................
31
Gambar 3.7 Diagram alur info Domain…………………………………
32
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
vii
Gambar 3.8
Diagram alur informasi client…………………………….
33
Gambar 3.9
Arsitektur Sistem Vulnerability Scanner ……...................
33
Gambar 3.10 Tampilan antar muka aplikasi………………….................
34
Gambar 3.11 Tampilan antar muka hasil scanning…………………….
35
Gambar 4.1
Tampilan menu utama……………………………………
38
Gambar 4.2
Halaman scanning SQL injection (URL)..........................
39
Gambar 4.3
Potongan Source Code SQL (URL)...................................
40
Gambar 4.4
Halaman Scanning SQL (page)…………..........................
41
Gambar 4.5
Potongan Source Code SQL (page)....................................
42
Gambar 4.6
Halaman Scanning SQL (SITE_fast).................................
43
Gambar 4.7
Halaman Scanning SQL (SITE_full)................................... 44
Gambar 4.8
Potongan Code Scanning SQL Site………………............
Gambar 4.9
Halaman Scanning XSS (URL)……………...................... 47
Gambar 4.10
Potongan Code Scanning XSS (URL)………. ................
47
Gambar 4.11
Halaman Scanning XSS (PAGE)…….............................
48
Gambar 4.12
Potongan Code Scanning XSS(PAGE)….......................
49
Gambar 4.13
Halaman Scanning XSS (SITE_fast)……........................
51
Gambar 4.14
Halaman Scanning XSS (SITE_full) ……......................
51
Gambar 4.15
Potongan kode Scanning XSS site..................................
53
Gambar 4.16 Halaman Info Domain …………………………….........
54
Gambar 4.17 Potongan Kode Info Domain ...........................................
55
Gambar 4.18 Halaman Info Client ……………………………….........
56
45
Gambar 4.19 Potongan Kode Info Client ................................................ 57
Gambar 4.20 Halaman Get Cookie ……………………………….........
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
viii
58
Gambar 4.21 Potongan Kode Get Cookie ................................................ 58
Gambar 4.22 Halaman Proses serta Hasil Scanning ………………......... 59
Gambar 5.1
Tampilan menu utama Addons. ......................................... 60
Gambar 5.2
Tampilan sebelum diinjeksi oleh SQL (URL)…................ 64
Gambar 5.3
Tampilan sesudah diinjeksi SQL ....................................... 64
Gambar 5.4
Tampilan sebelum diinjeksi SQL (page) ........................... 65
Gambar 5.5
Tampilan hasil scanning SQL (page) …............................
66
Gambar 5.6
Tampilan setelah diinjeksi ................................................
66
Gambar 5.7
Tampilan sebelum diinjeksi SQL SITE (fast)....................
67
Gambar 5.8
Tampilan hasil scanning SQL SITE (fast)..... .................... 68
Gambar 5.9
Tampilan setelah diinjeksi ..............................................
68
Gambar 5.10 Tampilan sebelum diinjeksi XSS SITE (FULL) ...............
69
Gambar 5.11 Hasil Scanning XSS Injection pada SITE (full) ................
70
Gambar 5.12 Tampilan diinjeksi XSS SITE (full) .................................. 70
Gambar 5.13 Tampilan sebelum diinjeksi XSS (URL) ........................... 72
Gambar 5.14 Hasil scanning XSS...........................................................
73
Gambar 5.15 Tampilan sesudah diinjeksi XSS (URL).................... .......
73
Gambar 5.16 Tampilan sebelum diinjeksi XSS (page) …………............ 73
Gambar 5.17 Tampilan hasil scanning XSS (page) ……………….......... 74
Gambar 5.18 Tampilan sesudah diinjeksi XSS(page) ……….................. 75
Gambar 5.19 Tampilan sebelum diinjeksi XSS SITE (fast)...................... 76
Gambar 5.20 Tampilan hasil scanning XSS SITE (fast)............................ 76
Gambar 5.21 Tampilan sesudah diinjeksi XSS SITE (fast) ….................. 77
Gambar 5.22 Tampilan sebelum diinjeksi XSS SITE( full)........................ 78
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
ix
Gambar 5.23 Hasil scanning XSS SITE (full) ........................................... 78
Gambar 5.24 Tampilan sesudah diinjeksi XSS SITE (full)........................ 79
Gambar 5.25 Tampilan Informasi website................................................. 80
Gambar 5.26 Tampilan info client…………………………………......... 81
Gambar 5.27 Hasil get cookie……………………………………............ 82
Gambar 5.28 Perbandingan hasil proses dan hasil scan…….................... 84
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
x
BAB I
PENDAHULUAN
1.1 Latar belakang
Di zaman yang semakin maju seperti sekarang ini perkembangan
teknologi internet telah menyebar diseluruh dunia dan kita mengenal telah
mengenal yaitu website, dimana website ini sudah meluas diseluruh dunia.
Bahkan kita bisa memanfaatkan sebuah teknologi internet untuk mengakses
website tersebut dan website tersebut dapat diakses dari berbagai lapisan
masyarakat dan usia, sudah bisa menggunakan fasilitas-fasilitas dalam
browsing dan download. Dalam hal ini akan membahas tentang internet
adalah sistem global dari seluruh jaringan komputer yang saling terhubung
menggunakan standar untuk melayani para pengguna diseluruh dunia. Banyak
dari para user internet sekarang ini belum menyadari tentang segi
keamanannya.
Untuk mengantisipasi adanya tindakan yang merugikan keamanan web,
user minimal harus mengetahui beberapa konsep, yaitu memastikan siapa
yang diajak untuk berkomunikasi di dunia internet, melindungi data-data yang
sangat penting, dan memastikan bahwa web yang diakses aman untuk
melakukan browsing, karena apabila user terlalu bebas dalam memberikan
informasi, maka hal terbesar adalah pengambilan informasi secara paksa atau
lebih dikenal dengan hacking.
Vulnerability scanner adalah alat yang digunakan untuk mengecek sebuah
website atau computer pada sebuah jaringan dan situs internet untuk diketahui
kelemahan tersebut. Hacker juga biasanya menggunakan port scanner. Port
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan
sumber.
1
2
scanner ini adalah alat untuk melihat port pada komputer tertentu untuk
mengakses komputer, dan kadang-kadang akan mendeteksi program nomor
versinya.
Sehingga diberikan firewall untuk melindungi komputer dari penyusup
dengan membatasi akses ke port, seorang hacker web biasanya menggunakan
beberapa metode yang diyakini bisa mendeteksi kelemahan sebuah website
yakni dengan metode SQL injection dan metode XSS.
Seiring perkembangan zaman yang semakin pesat terdapat beberapa cara
yang lebih sederhana untuk mengemas web vulnerability scanner ini menjadi
lebih mudah untuk digunakan yakni dengan menjadikan web tersebut sebagai
add-ons sebuah browser. Dimana tujuan dari pembuatan add-ons ini adalah
membantu user dan developer website untuk lebih berfokus kepada tingkat
keamanan sebuah web.
1.2 Rumusan Masalah
Dari latar belakang yang telah dijelaskan untuk membuat sebuah Add Ons
pada browser Mozilla firefox dengan menerapkan proses Vulnerability scanner
terdapat rumusan masalah. Adapun beberapa permasalahan yang ada sebagai
berikut:
a. Bagaimana mengemas suatu website kedalam sebuah addons yang
menerapkan proses vulnerability scanner yang dapat mendeteksi
kelemahan website.
b. Bagaimana addons tersebut dapat menerapkan pola pendeteksian
kelemahan sebuah web terhadap SQL Injection dan XSS (Cross Site
Scripting) pada alamat web yang diakses
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
3
c. Bagaimana add-ons tersebut bisa menampilkan hasil dari Vulnerability
Scanner untuk dapat diketahui oleh user.
1.3 Batasan Masalah
Dalam penyusunan tugas akhir ini, untuk mengatasi permasalahan yang
ada maka disusun beberapa batasan masalah sebagai berikut :
a. Aplikasi ini mendeteksi alamat URL pada sebuah website yang
memiliki kelemahan.
b. Aplikasi web yang dapat discan adalah alamat website yang dituliskan
kepada tag HTML dengan penulisan url yang disesuaikan dengan
penulisan html tersebut.
c. Kelemahan yang dibahas adalah menggunakan SQL injection dan
XSS.
d. Browser yang digunakan adalah Mozilla Firefox 3.6
1.4 Tujuan Penelitian
Adapun tujuan dari penelitian Tugas akhir ini yakni membuat sebuah addons vulnerability scanner yang dapat digunakan pada Browser Mozilla Firefox
yang membantu developer dan user untuk mengetahui kelemahan sebuah
website. Serta memberikan wawasan tentang pengemasan suatu aplikasi
kedalam bentuk yang sederhana sehingga lebih efisien dan mudah untuk
digunakan.
1.5 Manfaat Penelitian
Manfaat yang dapat diambil dari pembuatan add-ons vulnerability scanner:
a. Diharapkan untuk selanjutnya penyedia website lebih mementingkan segi
keamanan agar data yang dimiliki oleh user tetap terjaga keamanannya
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
4
b. Mengenai
segi
keamanan
tersebut
pembuat
website
minimal
memperhatikan script yang akan dibuat agar para hacker tidak dapat
menembus web tersebut.
c. Kepada user dan developer sebagai penambahan wawasan bahwa
vulnerability scanner ini tidak hanya dibuat secara web tetapi juga dapat
dikemas dengan sederhana menggunakan add-ons pada sebuah browser
Mozilla Firefox.
1.6 Metode Penelitian
Metode yang dilaksanakan dalam penelitian ini adalah.
a. Studi Literatur
Dilakukan dengan cara mencari segala macam informasi secara riset
keperpustakaan dan mempelajari buku-buku yang berhubungan dengan
masalah yang dihadapi, sehingga didapatkan sebuah materi serta
literatur yang jelas dan akurat.
b. Pengumpulan dan Analisa Data
Pengumpulan data dilakukan dengan cara : observasi, identifikasi dan
klasifikasi melalui studi literatur. Dari pengumpulan data tersebut
dapat dilakukan analisa data yaitu dalam proses pembuatan add ons
vulnerability scanner pada mozilla firefox.
c. Perancangan Program
Melakukan analisa awal tentang add ons yang akan dibuat yaitu suatu
pemecahan masalah yang dilakukan melalui system online dengan cara
pembuatan add ons vulnerability scanner pada Mozilla firefox dimana
add-ons tersebut dapat mendeteksi kelemahan sebuah website yang
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
5
dituliskan pada halaman browser serta memberikan hasil output dari
proses hasil scan yang dihasilkan oleh add ons tersebut yang dapat
dimanfaatkan.
d. 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.
e. Kesimpulan
Dibuat kesimpulan dari pengujian sistem tugas akhir dengan menguji
apakah hasilnya sesuai dengan yang diharapkan pada tujuan tugas
akhir.
1.7. Sistematika Penulisan
Dalam laporan tugas akhir ini, pembahasan disajikan dalam enam bab
dengan sitematika pembahasan sebagai berikut :
BAB I
PENDAHULUAN
Berisi latar belakang yang menjelaskan tentang tugas akhir yang
dilakukan, rumusan masalah, tujuan, manfaat dan sistematika
penulisan yang digunakan dalam laporan kerja praktek ini.
BAB II
TINJAUAN PUSTAKA
Berisi tentang materi-materi penunjang pengerjaan tugas akhir tersebut.
BAB III
PERANCANGAN
Berisi tentang perancangan tugas akhir dari berupa sebuah diagram
alur serta penjelasan proses addons tersebut berjalan.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
6
BAB IV
IMPLEMENTASI
Berisi tentang implementasi addons yang telah dikerjakan sebelumnya
yang didalamnya berisi tentang interface dan beberapa potongan coding
program.
BAB V
PENGUJ IAN DAN ANALISA
Pada babi ni akan dijelaskan tentang skenario penyerangan terhadap
addons vulnerability scanner pada sebuah website yang diduga memiliki
kelemahan dan memiliki celah untuk di hack.
BAB VI
PENUTUP
Bab ini berisi tentang kesimpulan yang dapat diambil dari keseluruhan isi
dari laporan dan tugas akhir serta Saran yang disampaikan penulis demi
kesempurnaan sistem yang lebih baik.
DAFTAR PUSTAKA
Pada bagian ini akan dipaparkan tentang sumber-sumber literatur yang
digunakan dalam pembutan laporan ini.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB II
TINJ AUAN PUSTAKA
2.1 Sejarah Web Dan Serta Br owser
Sejarah web browser dimulai pada akhir tahun 80-an, ketika berbagai
teknologi baru menjadi dasar pembuatan web browser pertama di dunia,
WorldWideWeb(WWW), oleh Tim Berners-Lee pada tahun 1991.Browser
tersebut menggabungkan beberapa teknologi software dan hardware yang
sudah diciptakan maupun masih baru diciptakan pada waktu itu
Diperkenalkannya web browser NCSA Mosaic pada tahun 1993 salah satu
web browser grafis pertama – memulai ledakan penggunaan web browser.
Marc Andreessen, pimpinan tean Mosaic di NCSA kemudian mendirikan
perusahaannya sendiri, Netscape dan meluncurkan Netscape Navigator pada
tahun 1994. Dengan cepat Netscape Navigator menjadi browser paling
populer di dunia, pada masa jayanya digunakan oleh 90% pengguna web
browser.
Microsoft pun merespon dengan web browser-nya, Internet Explorer (IE)
pada tahun 1995, sehingga mencetuskan perang browser pertama di dunia. IE
dengan Windows, Microsoft mampu mengambil alih posisi pemimpin pasar
web browser. Pada tahun 2002, IE digunakan oleh lebih dari 95% pengguna.
Dari beberapa browser yang sangat diminati oleh para user di internet
adalah Mozilla Firefox dimana browser tersebut memiliki banyak nama
sebelum berganti dengan nama yang
sudah kita kenal secara familiar
sekarang, Browser ini mempunyai 2 nama sebelum akhirnya menjelma dengan
7
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
8
nama Mozilla Firefox Nama awalnya adalah Phoenix dan kemudian berganti
lagi dengan dikenal sebagai Mozilla Firebird.
Sebelum rilis versi 1.0-nya pada 9 November 2004, Firefox telah
mendapatkan sambutan yang sangat bagus dari pihak media. Dikarenakan
Firefox adalah open source application maka dalam waktu yang singkat
aplikasi browser ini telah didownload lebih dari 5 juta download dalam 12
hari pertama rilisnya dan 6 juta hingga 24 November 2004.
Melalui Firefox, Yayasan Mozilla betujuan untuk mengembangkan sebuah
browser web yang kecil, cepat, sederhana, dan sangat bisa dikembangkan
(terpisah dari Mozilla Suite yang lebih besar). Firefox telah menjadi fokus
utama perkembangan Mozilla bersama dengan client e-mail Mozilla
Thunderbird, dan telah menggantikan Mozilla Suite sebagai rilis browser
resmi yayasan Mozilla.
Mozilla merilis versi terbaru browser populernya, Firefox 3.6. Dengan
sangat baik, Mozilla mengklaim Firefox 3.6 adalah browser terbaik di dunia,
seperti terpajang di situs Mozilla Firefox. Dilihat dari tampilan, Firefox 3.6
yang sudah bisa diunduh ini tidak jauh beda dibanding dengan edisi 3.5.
Namun dari sisi kemampuan, beberapa hal baru telah ditambahkan di
dalamnya Menurut Mozilla, Firefox 3.6 ditingkatkan sisi performa maupun
stabilitasnya serta dilengkapi beberapa fitur baru bagi user maupun developer.
Software browser internet ini tersedia baik untuk Windows, MacOS maupun
Linux, waktu respons dan performa JavaScript yang lebih baik, membuat
Mozilla memperkirakan Firefox 3.6 lebih cepat 20 persen dari sebelumnya
dan merupakan Firefox yang sangat support dengan addons apapun, fitur baru
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
9
yang disematkan antar lain tool tema baru, yang memungkinkan user
mengedit dan memasang tema visual tanpa perlu restart browser. Selain itu,
Firefox 3.6 juga bisa mendeteksi otomatis jika ada plug-ins yang perlu
diupdate.
2.2 Injeksi SQL
Injeksi SQL adalah sebuah teknik yang memanfaatkan sebuah celah
keamanan yang terjadi dalam lapisan basis data sebuah aplikasi. Celah ini
terjadi ketika masukan pengguna tidak disaring secara benar dari karakterkarakter bentukan string yang ditambahkan dalam pernyataan SQL atau
inputan pengguna tidak bertipe kuat dan karenanya dijalankan tidak sesuai
harapan. Ini sebenarnya adalah sebuah contoh dari sebuah kategori celah
keamanan yang lebih umum yang dapat terjadi setiap kali sebuah bahasa
pemrograman.
Bentuk injeksi SQL ini terjadi ketika inputan user berupa karakter yang
tidak disaring dari karakter-karakter lemah dan kemudian diteruskan ke dalam
sebuah pernyataan SQL. Ini menimbulkan potensi untuk memanipulasi
pernyataan-pernyataan yang dilakukan pada basis data oleh pengguna akhir
aplikasi.
Berikut ini contoh sederhana dari penginjeksian SQL pada sebuah website
yang mempunyai kelemahan terhadap injeksi SQL melalui alamat URL.
Apabila sebuah halaman pada website diakses secara benar sesuai aturan
website tersebut maka hasil informasi yang ditampakkan juga benar sesuai
permintaan pengguna.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
10
Gambar 2.1 Informasi Sebenarnya Website
Tetapi apabila dilakukan perubahan terhadap alamat URL maka akan
muncul sebuah pesan error dari website yang dapat dipergunakan oleh hacker
untuk melakukan peretasan terhadap website tersebut.
Gambar 2.2 Informasi Setelah Proses Pendeteksian
Hacker tinggal mengubah simbol (‘) pada alamat URL dengan beberapa
query SQL untuk mendapatkan informasi penting yang ditampilkan website
tersebut tanpa ijin dari hasil query SQL yang dieksekusi oleh website tersebut.
2.3 Injeksi XSS
XSS merupakan kependekan yang digunakan untuk istilah Cross-site
scripting (XSS) adalah jenis kerentanan keamanan komputer biasanya
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
11
ditemukan dalam aplikasi web yang memungkinkan penyerang untuk
menginjeksi script sisi klien ke dalam halaman web dilihat oleh pengguna lain.
Sebuah kerentanan cross-site scripting dapat digunakan oleh penyerang untuk
memotong kontrol akses tersebut sebagai kebijakan asal yang sama. Cross-site
scripting dilakukan pada website adalah sekitar 80% dari semua kerentanan
keamanan didokumentasikan oleh Symantec pada 2007. Pengaruh mereka bisa
berkisar dari gangguan kecil dengan resiko keamanan yang signifikan,
tergantung pada kepekaan data ditangani oleh situs yang rentan dan sifat dari
setiap mitigasi keamanan yang dilaksanakan oleh pemilik situs.
Celah Cross-site scripting adalah celah keamanan aplikasi web yang
memungkinkan penyerang untuk mem-bypass mekanisme klien-sisi keamanan
biasanya dikenakan pada konten web oleh browser modern. Dengan mencari
cara menyuntikkan script ke dalam halaman web, seorang penyerang bisa
mendapatkan hak akses diangkat ke sensitif-konten halaman tertentu, session
cookies, dan berbagai informasi lainnya yang dikelola oleh browser atas nama
pengguna.
XSS memiliki macam yakni cross-site scripting non-persistent (atau
tercermin) sejauh ini jenis yang paling umum diketahui. Lubang ini muncul
ketika data yang diberikan oleh klien web, yang paling umum dalam
parameter permintaan HTTP atau dalam pengiriman form HTML, adalah
digunakan langsung oleh script sisi server untuk menghasilkan halaman hasil
untuk user tersebut, tanpa pembenaran sanitasi permintaan tersebut.
Karena dokumen HTML memiliki struktur, datar yang menggabungkan
laporan kontrol, format, dan isi yang sebenarnya, setiap data yang disediakan
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
12
pengguna non-divalidasi termasuk dalam halaman hasil tanpa pengkodean
HTML yang tepat, dapat menyebabkan markup injeksi. Sebuah contoh klasik
dari sebuah vektor potensial adalah mesin pencari situs, jika seseorang
mencari sebuah string, string pencarian biasanya akan ditampilkan kembali
kata demi kata pada halaman hasil untuk menunjukkan apa yang dicari. jika
jawaban ini tidak benar melarikan diri atau menolak karakter HTML kontrol,
kelemahan cross-site scripting akan terjadi.
Berikut ini contoh sederhana dari penginjeksian XSS pada sebuah website
yang mempunyai kelemahan terhadap injeksi XSS melalui alamat URL.
Apabila sebuah halaman pada website diakses secara benar sesuai aturan
website tersebut maka hasil informasi yang ditampakkan juga benar sesuai
permintaan pengguna.
Gambar 2.3 Informasi Sebenarnya Website
Tetapi apabila dilakukan perubahan terhadap alamat URL maka akan
muncul sebuah tulisan yang tidak semestinya muncul sesuai data pada sistem
website tersebut. Hal itu yang akan dipergunakan oleh peretas untuk
melakukan peretasan terhadap website tersebut.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
13
Gambar 2.4 Informasi Setelah Proses Pendeteksian
Dari gambar tersebut hacker tinggal menambahkan script yang berisikan
code javascript pada alamat URL untuk mendapatkan informasi penting yang
ditampilkan website tersebut tanpa ijin dari hasil script yang dieksekusi oleh
website tersebut.
2.4 Pengertian Scanning
Pengertian Scanning adalah Aktifitas yang dilakukan untuk mendapatkan
informasi target. dimana pada proses scanning tersebut terdapat target yang
dicari yakni :
1. IP address
2. Sistem operasi
3. Arsitektur system
Di dalam model scanning tersebut terdapat beberapa tipe scanning yang
berbeda dan memiliki metode dan cara yang berbeda, yaitu:
1. Port scanning
2. Network scanning
3. Vulnerability scanning
Dari scanning tersebut memiliki macam kalisifikasi yang memiliki fungsi
yang berbeda pula dimana disetiap scanning tersebut, fungsi tersebut bisa
digunakan untuk bermacam-macam kegunaan yang berbeda tergantung dari
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
14
user tersebut menggunakanya, dari beberapa macam scanner tersebut yang
paling banyak digunakan oleh pengguna adalah.
1. TCP connect () scanning
2. Half open/TCP syn scanning
3. Stealth scanning
4. UDP scanning
2.5 Contoh penyer angan XSS
Sesuai dengan namanya Cross Site Scripting yang berasal dari kata
“Cross” berarti silang atau menyilang, “Site” berarti tempat(halaman website),
“Scripting” berarti pengkodean atau penulisan kode. Dari sini user dapat
mendefinisikan bahwa Cross Site Scripting atau yang lebih dikenal dengan XSS
berarti penyilangan suatu kode pada halaman website. XSS bisa juga diartikan
penulisan kode pada sebuah halaman website agar berbelok ke target yang di
inginkan. XSS bekerja pada sisi client. Meskipun XSS ini bekerja pada sisi
client tetapi efek yang dihasilkan akan memaksa server untuk menjalankan
kode yang dimasukkan.
XSS bisa berjalan melalui 3 cara :
1. Pemanfaatan Tools
2. Penulisan pada source code
3. Penulisan pada URL
Berikut adalah contoh menggunakan vulnerable XSS dari website
www.eset.com.mx, ESET merupakan salah satu perusahaan AntiVirus yang
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
15
juga sangat terkenal di Dunia, namun memiliki kelemahan juga di
websitenya.Test XSS apakah bisa berjalan di website, berikut contohnya:
http://www.eset.com.mx/xtrasappz/evalform/index.php?t=emav&pr omo
code=% 22% 3E% 3Ccenter% 3E% 3Cfont% 20size=% 22300% 22% 3EBinus%
20Hacker% 20Ada% 20Disini% 3Cbr% 3Ehttp://www.binushacker .net% 3C/f
ont% 3E% 3C/center% 3E% 3C/
1. Test cookie
2. Buat coding untuk halaman register di ESET
Gambar 2.5 Coding XML Register ESET
Pada gambar diatas merupakan proses dalam pembuatan halaman fake
register pada situs ESET yang memanfaatkan metode XSS dimana fake
register tersebut digunakan untuk mengelabuhi user .
3. Kemudian membuat php untuk menerima hasil & menyimpannya di log
Gambar 2.6 Coding PHP Penyimpanan LOG
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
16
Pada gambar diatas menjelaskan tentang potongan coding php untuk
memasukkan log palsu yang merupakan hasil injeksi dari metode XSS.
4. Sebelum melakukan proses, maka coding XSS yang didapatkan pada
penyerangan tersebut yakni :
<iframe sr c=http://restinpeace.biz/eset/r egister.php
width=1500>
Di encode menjadi :
% 3Ciframe% 20sr c% 3Dhttp% 3A% 2F% 2Fr estinpeace.biz% 2Feset%
2Fr egister .php% 20width% 3D1500% 3E <iframe
src=http://r estinpeace.biz/eset/register .php width=1500>
<iframe sr c=http://restinpeace.biz/eset/setfree.()php
width=1500>
Gambar 2.7 Fake Register ESET
Berikut adalah gambar fake register eset yang merupakan hasil dari
injeksi pada situs ESET, dimana pada situs tersebut telah dimasuki coding
buatan untuk masuk kedalam registerpada situs ESET tersebut.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
17
5. Selanjutnya cek log yang masuk
Gambar 2.8 Hasil LOG Pada Fake Register
Gambar diatas adalah hasil log yang masuk yang didapatkan dari user
yang memasukkan register tersebut dan didalam log tersebut terdapat
informasi pengguna yang memiliki e-mail dan password
2.6 Pembuatan add-ons seder hana pada mozilla fir efox
Plugin atau Add-ons mozilla adalah tool menu tambahan yang bisa
di tambahkan di MOZILLA FIREFOX BROWSER. Mencari sebuah
plugin untuk keperluan tertentu dari mozilla anda bisa melalui Menu
Tools ( disebelah Help) Add ons atau langsung masuk ke alamat Add-ons
mozilla. Dalam hal soal internet, user memang lebih sering memakai
mozilla karena cepat, mudah, dan adanya add-ons yang banyak pilihan
membuat pekerjaan lebih mudah.
Berikut ini adalah cara sederhana membuat sebuah add-ons pada
Mozilla firefox:
1. Buatlah folder pendukung add-ons dimana pada folder tersebut akan
terdapat komponen yang harus dibuat agar add-ons dapat berjalan
dengan baik.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
18
Gambar 2.9 Komponen Pendukung Add-ons
2. Tentukan file-file yang harus dibuat untuk mendukung add ons dalam
hal ini adalah (install.r df, chrome manifest) dimana kedua file
tersebut digunakan untuk instalasi dan memberikan fungsi pada addons.
3. Membuat overlay dasar (browser .xul) yang di dalamnya terdapat
kumpulan coding pendukung yang berfungsi sebagai pemanggilan
fungsi sistem javascript. Contoh sederhana pembuatan br owser.xul
adalah:
Gambar 2.10 Coding XML Yang Terletak Pada Browser.XUL
4. Buatlah beberapa coding sederhana dalam bentuk (.js) dalam menu
content yang merupakan fungsi yang akan dipanggil pada browser.xul
untuk diaplikasikan
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
19
Gambar 2.11Komponen Javascript Pendukung Add-ons
5. Buatlah beberapa image sederhana dalam bentuk (.png) dalam menu
content yang merupakan fungsi yang akan dipanggil pada browser.xul
untuk diaplikasikan kedalam toolbar.
Gambar 2.12 Tampilan Icon Pendukung
6. Sertakan (.css) untuk membuat toolbar icon tersebut kedalam sebuah
add ons.
7. Daftarkan (.CSS,.JS) kedalam (.XUL) agar fungsi tersebut dapat di
panggil dan dapat di install kedalam file (install.rdf).
8. Kemas satu paket add-ons tersebut kedalam file extension (.XPI) agar
lebih mudah dikenal oleh firefox.
9. Drag file (.xpi) tersebut kedalam mozilla firefox dan akan terinstall
secara otomatis dan restart firefox
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
20
Gambar 2.13 Tampilan Instalasi Add-ons
10.
Add-ons firefox siap untuk di gunakan
Gambar 2.13 Tampilan Hasil Instalasi Add-ons
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB III
PERANCANGAN
3.1 Desain Sistem
Desain system merupakan prosedur perancangan sistem secara umum
untuk membangun sebuah add-ons Web Vulnearbility Scanner pada Mozilla
firefox terhadap kelemahan web dengan menggunakan XSS dan SQL Injection
dimana pada perancangan tersebut akan dijelaskan tahap-tahap serta alur yang
digunakan pada add ons Vulnerability scanner tersebut dan memiliki beberapa
tahap, antara lain:
a. Data Scan
Perancangan data yaitu perancangan data-data yang berkaitan dengan
pembuatan aplikasi add ons tersebut, meliputi :
1. Input
Data input yang di dalamnya terdapat data-data penunjang
sebagai inputan pembuatan sistem. Dalam add ons ini data yang
dibutuhkan adalah berupa alamat URL yang didapatkan dari tab
jendela website yang sedang diakses.
2. Output
Dari proses inputan tersebut, Sistem akan menggunakannya
sampai didapatkan hasil yaitu output. Dalam aplikasi ini hasil
proses ditampilkan secara new tab yang berisi proses serta hasil
dari proses tersebut..
21
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
22
b. Proses
Perancangan proses yaitu bagaimana sistem akan bekerja serta
proses-proses yang digunakan, dari masuknya inputan yang diproses oleh
addons sampai outputnya.
c. Antar muka
Perancangan
antarmuka
menjelaskan
tentang
desain
dan
implementasi addons yang digunakan dalam sistem yang dibuat secara
keseluruhan perancangan.
Hasil Injeksi
Gambar 3.1 Perancangan Sistem Secara Global
Dari Gambar 3.1 tersebut :
1. Aplikasi add ons tersebut melakukan permintaan data ke server web
berupa alamat URL yang diminta.
2. Server akan memberikan balasan berupa teks Tag HTML.
3. Add ons memproses hasil tersebut, kemudian mendapatkan struktur URL
dari hasil pencarian dan menginjeksi struktur URL tersebut.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
23
4. Add ons mengirim request ke server berupa struktur hasil pencarian yang
telah diinjeksi.
5. Server mengirim hasil injeksi ke aplikasi.
6. Add ons memberikan report proses keseluruhan.
3.2 Per ancangan Sistem
Perancangan sistem ini yang akan diuraikan pada sub bab di bawah ini
yakni :
3.2.1
Addons Vulnerability Scanner Ber basis Online
Pada Web Vulnerability Scanner berbasis online ini berjalan secara
online. Begitu juga dengan web yang akan di scan juga harus terhubung
dengan internet. Input dari addons vulnerability scanner ini adalah berupa
URL dari web yang akan di scan.
3.3 Per ancangan Input
Dalam perancangan input, akan dijelaskan mengenai inputan yang terdapat
dalam aplikasi sesuai dengan fungsinya.
1. Input Web Vulnerability Scanning
Untuk menjalankan web vulnerability scanner berbasis online ini
menggunakan input berupa :
a. URL
Pada aplikasi ini alamat URL akan didapatkan secara otomatis
pada tab window yang sedang diakses. kemudian dilakukan proses
request kepada server sehingga server tersebut memberikan respon
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
24
berupa HTML kepada client. Dan respon berupa Tag HTML tersebut
itulah yang akan dilakukan proses scanning.
3.4 Per ancangan Pr oses
Perancangan proses pada bagian ini akan menjelaskan tentang bagaimana
permintaan dari user sesuai dengan menu yang ada pada add ons tersebut
yang akan diproses menjadi sebuah output.
3.4.1 Pr oses Scanning
Pada perancangan sistem ini, terdapat menu utama dan tambahan. Pada
menu utama terdapat dua menu yaitu pencarian kelemahan terhadap injeksi
SQL dan pencaharian kelemahan terhadap injeksi XSS.
Pada menu pencarian kelemahan terhadap injeksi SQL terdapat empat
sub menu diantaranya pencarian pada alamat URL yang sedang dibuka,
pencarian pada page yang sedang dibuka, pencarian pada seluruh halaman
dalam satu website dengan site fast, dan pencarian pada seluruh halaman
dalam satu website site full.
Pada menu XSS juga terdapat pencarian kelemahan dimana pada menu
XSS injection tersebut terdapat 4 sub menu dimana fungsinya juga sama
dengan SQL injection tetapi memiliki cara-cara yang berbeda didalam
pencarian kelemahan.
Pada perancangan sistem aplikasi ini, diambil dari sebuah langkah
sederhana dalam mencari kelemahan terhadap injeksi SQL maupun XSS yang
sudah dibuat sebelumnya. Berikut diagram alur dari prosenya yang akan di
gambarkan pada diagram alur :
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
25
ya
Tidak
Gambar 3.2 Diagram Alur Scan
Penjelasan dari Gambar 3.2 adalah
1. Addons Vulnerability Scanning melakukan request ke server berupa
URL yang telah di inputkan oleh pengguna.
2. Server memberi respon berupa File HTML yang di minta aplikasi
Vulnerability Scanning sesuai input URL.
3. Kemudian aplikasi Vulnerability Scanning mencari kelemahan
setiap File HTML yang telah diberikan oleh server.
4. Addons Vulnerability Scanning menangkap semua tag dari File
HTML sudah didapatkan dari server.
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
26
5. Proses pengecekan apakah terdapat parameternya atau tidak, jika
tidak ada maka aplikasi akan kembali lagi melakukan proses
selanjutnya jika ada tanda yang dimaksud maka akan lanjut ke
proses selanjutnya.
6. Proses selanjutnya aplikasi menulis ulang parameter tersebut
dengan script injeksi.
7. Selanjutnya aplikasi mengirim ulang ke server berupa URL yang
parameternya telah di injeksi.
8. Server memberikan respon berupa HTML, kemudian HTML
tersebut di scan.
9. Apakah pada respon HTML tersebut terdapat script yang
diinjeksikan, jika ya maka web tersebut mempunyai kelemahan dan
jika tidak maka web tersebut tidak mempunyai kelemahan terhadap
serangan XSS.
Dilakukan pengembangan terhadap proses diatas yang dijelaskan
sebelumnya dimana addons ini terdiri dari beberapa menu. Addons ini
terdapat empat macam cara pencarian yaitu pencarian terhadap alamat URL
yang sedang aktif, Page yang sedang dibuka, seluruh alamat URL (link)
dalam satu website baik secara Site Fast atau Site Full. Setiap menu tersebut
diciptakan sesuai kebutuhan pengguna dalam hal efisiensi waktu yang
dibutuhkan untuk proses pendeteksian. Dari empat macam pendeteksian
memiliki waktu yang berbeda dalam prosesnya masing-masing. Aplikasi ini
juga ditambahkan beberapa menu tambahan yaitu menu untuk mendaptkan
informasi mengenai domain yang digunakan oleh website tersebut, informasi
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
27
client yang dipergunakan oleh user, dan informasi cookie pada browser
Mozilla firefox yang sesuai dengan nama website yang sedang dibuka.
Berikut adalah pembahasan empat sub menu pada menu pencarian kelemahan
terhadap injeksi SQL maupun XSS. Sub menu pertama adalah pencarian pada
alamat URL yang sedang dibuka. Proses submenu ini sebagai berikut :
Gambar 3.3 Diagram Alur Scan URL
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
28
Aplikasi membutuhkan data masukan tetapi data masukan langsung
diambilkan dari alamat URL pada tab yang sedang aktif. Jika alamat URL
tersebut terdapat simbol “=” maka aplikasi akan membuat beberapa alamat
URL baru dari hasil pengubahan terhadap alamat URL yang sebenarnya.
Aplikasi akan mengakses halaman dengan alamat URL yang belum dan
sudah diubah. Hasil dari akses terhadap alamat URL yang diubah dengan
yang belum diubah akan dideteksi apakah terdapat positif ciri-ciri injeksi
SQL maupun XSS atau tidak.
Submenu kedua adalah pencarian kelemahan terhadap injeksi SQL
maupun XSS pada halaman yang sedang dibuka. Proses submenu ini sebagai
berikut :
T
Gambar 3.4 Diagram Alur Scan Pada PAGE
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
29
Proses yang terjadi pada gambar diatas hampir sama dengan proses
pencarian kelemahan terhadap SQL maupun XSS sebelumnya dimana
perbedaannya adalah proses pencarian dilakukan berulang sesuai banyaknya
URL pada page yang dibuka dan masih dalam satu website. Setiap URL
dilakukan pencarian sampai sem