AbstrakSaat ini penggunaan aplikasi web dinamis selalu XSS adalah suatu teknik yang memanfaatkan situs web
mengalami peningkatan. Hal tersebut terjadi karena untuk menampilkan malicious code yang kemudian dieksekusi
penggunaannya dapat memudahkan segala kebutuhan pengguna pada peramban pengguna. Menurut data dari White Hat
baik dalam menyediakan maupun manipulasi sumber daya dari
Security, XSS [3] merupakan celah serangan yang paling
server. Berkembangnya fitur-fitur yang didukung oleh peramban
juga menciptakan suatu interaksi yang lebih beranekaragam banyak ditemukan. Pada tahun 2012, sebanyak 47% dari total
dalam layanan berbasis web. Di Indonesia sendiri, pengguna serangan merupakan celah serangan XSS. Oleh karena itu
Mozilla Firefox mencapai 300 juta orang. Namun, penggunaan diperlukan suatu mekanisme perlindungan untuk mendeteksi
aplikasi web dinamis juga meningkatkan ancaman eksploitasi XSS pada peramban pengguna sehingga pengguna dapat
web, salah satunya adalah Cross Site Scripting (XSS). XSS terhindar dari ancaman XSS.
merupakan jenis serangan injeksi code yang memanfaatkan celah
Makalah ini membahas rancang bangun add-ons deteksi
suatu situs web di mana seolah-olah serangan berasal dari situs
tersebut. Untuk itu diperlukan suatu mekanisme perlindungan XSS pada peramban Mozilla Firefox. Sistem dibuat dalam
pengguna terhadap XSS pada peramban Mozilla Firefox. Sistem bentuk add-ons untuk meningkatkan kemampuan yang dimiliki
dapat mendeteksi XSS secara adaptif tanpa perlu menyimpan oleh Mozilla Firefox. Aplikasi ini akan memberikan notifikasi
daftar situs yang terinfeksi XSS terlebih dahulu. Sistem kepada pengguna apabila pengguna mengakses halaman yang
diimplementasikan dalam bentuk add-ons untuk meningkatkan terinfeksi XSS.
kemampuan Mozilla Firefox. Pada aplikasi deteksi XSS ini,
digunakan metode Naive Bayes sebagai klasifikator dan 10-fold
Cross Validation sebagai metode evaluasi model. Di mana, dari II. TINJAUAN PUSTAKA
hasil uji coba terhadap sistem, diperoleh tingkat akurasi sebesar
89%. A. Cross Site Scripting (XSS)
Kata kunci Keamanan Jaringan, Mozilla Firefox, XSS Cross Site Scripting (XSS) adalah adalah suatu teknik
penyerangan yang memaksa suatu situs web untuk
menampilkan malicious code yang kemudian dieksekusi pada
I. PENDAHULUAN peramban pengguna. Penyerangan XSS dapat dilakukan
dengan cara memasukkan kode JavaScript, HTML atau
W ORLD wide web atau yang lebih dikenal dengan www
merupakan suatu ruang informasi yang digunakan untuk
menyediakan data dan informasi yang dapat digunakan
menggunakan pihak ketiga sebagai sumber ke suatu situs di
mana serangan seolah-olah datang dari situs tersebut seperti
bersama. Pada awalnya hanya terdapat web statis yang digambarkan pada Gambar 1. XSS dapat diklasifikasikan
digunakan untuk memberikan informasi berupa teks dan grafis. menjadi tiga jenis yaitu Persistent, Reflective, dan DOM based
Akan tetapi dengan semakin berkembangnya jaman, situs web [2].
yang ada menjadi semakin profesional dan dinamis. Layanan 1. Persistent XSS
Celah Persistent XSS muncul ketika sebuah program web
online yang sering digunakan seperti jejaring sosial, e-
commerce, blog dan forum juga menggunakan aplikasi server menyimpan input pengguna dalam suatu basis data,
dinamis dalam berinteraksi dengan pengguna. Pengguna di mana data yang tersimpan tersebut diakses oleh
menggunakan aplikasi web untuk berkomunikasi dengan program dan dapat dilihat oleh pengguna yang berbeda.
pengguna lain via instant messaging, membuat spreadsheets, 2. Reflective XSS
presentasi, mengirim e-mail, membaca berita dan lain Pada Reflective XSS, celah muncul ketika server
sebagainya. Berkembangnya peramban yang ada juga membuka suatu halaman web yang parameter HTTP
memudahkan penggunaan internet yang ada, salah satunya request-nya terinjeksi malicious code.
Mozilla Firefox. Dari 450 juta pengguna peramban Mozilla 3. DOM based XSS
Firefox, 65% merupakan penduduk Indonesia [1]. Akan tetapi Celah DOM based XSS muncul ketika terdapat script
seiring dengan perkembangan layanan-layanan web, ancaman yang merujuk pada input pengguna yang diperoleh dari
terhadap terjadi eksploitasi seperti pencurian data pribadi juga struktur DOM (Document Object Model) tanpa validasi
ikut meningkat.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print) 2
yang tepat sehingga script berbahaya dapat disisipkan ke 1. Bagi dataset menjadi 10 bagian dengan ukuran yang
dalam DOM tersebut pada sisi pengguna. sama.
Trusted
User
Use
r Attackers Trusted
Trusted
Deteksi XSS
Server Server
Server Pengecekan Hasil Deteksi
User
Request halaman web
1: User visits the Mengakses halaman web legitimate Url halaman web Respon halaman web
attackers Web site Mengakses halaman web XSS
Hasil deteksi
Notifikasi XSS
Server XSS
Web Server
2: User clicks on a malicious link and an HTTP request
containing JavaScript code is sent to the trusted server
4: The JavaScript code is executed and the user 2. Lakukan training dataset pertama terhadap sembilan
cookie associated with the trusted server is sent
to the attackers server
dataset lainnya.
3. Ulangi training dataset sebanyak 10 kali dan hitung
rata-rata akurasinya.
Jumlah kasus halaman web tidak terserang XSS dan 3. Peningkatan akurasi dengan penambahan data training.
hasil tes menyatakan tidak terserang XSS.
4. False Negative (FN)
Jumlah kasus pasien yang terserang XSS, tetapi hasil UCAPAN TERIMA KASIH
tes menyatakan tidak terserang XSS. Penulis Y.T.W mengucapkan terima kasih kepada Tuhan
Dalam pengujian ini digunakan 10-fold cross Yang Maha Esa, kedua orangtua dan keluarga penulis, dosen
validation sebagai metode evaluasi dan menggunakan metode pembimbing, seluruh dosen Teknik Informatika ITS, kerabat
klasifikasi Naive Bayes dan K-Nearest Neighbor sebagai dekat, serta berbagai pihak yang telah membantu penulis
pembanding. Untuk pengujian metode K-Nearest Neighbor dalam menyelesaikan penelitian ini.
digunakan alat bantu Weka.
Tabel 2 menggambarkan perbandingan hasil klasifikasi
DAFTAR PUSTAKA
antara metode Naive Bayes dan K-Nearest Neighbor, di mana
metode Naive Bayes lebih unggul dalam perhitungan akurasi [1] "Browsers in Indonesia". StatCounter Global Stats. StatCounter.
Retrieved August 24, 2012.
dan recall. Selain itu dapat dilihat pula bahwa metode Naive [2] G. e. S. Z Waserman, "Static Detection of Cross-Site Scripting
Bayes memberikan hasil akurasi yang baik yaitu sebesar 89%. Vulnerabilities Investigation," in 30th International Conference of
Software Engineering, 2008.
2) Uji Coba Kecepatan [3] White Hat Security. White Hat Security. [Online].
https://www.whitehatsec.com/ [Diakses 1 Juli 2013].
Uji coba kecepatan diperlukan untuk mengetahui [4] A. E., Souto, A. E., Santos, Eulanda M., Feitosa, Eduardo Nunan,
kecepatan proses deteksi dari aplikasi. Perhitungan waktu "Automatic Classification of Cross Site Scripting in Web Pages Using
dimulai sejak add-ons Mozilla mengirim data url halaman web Document-based and URL-based Features," IEEE, 2012.
sampai dengan menerima hasil deteksi XSS halaman web dari [5] J., Hansen R., Petkov, D.P., Rager, A. e Fogie, S. Grossman, Cross Site
Scripting Attack: XSS Exploit and Defense. Burlington, MA, EUA:
server. Pengujian dilakukan dengan mengambil 5 data url Syngress Publishing Inc, 2007.
normal dan 5 data url yang terindikasi XSS. Hasil uji coba [6] XSS Database Archive. XSS Database Archive. [Online].
menunjukkan selisih response time antara peramban yang http://xssed.com/ [Diakses 1 Juli 2013].
menggunakan add-ons pendeteksi XSS dan tidak, rata-rata [7] The Lemur Project. [Online]. http://lemurproject.org/clueweb09/
[Diakses 1 Juli 2013].
sebesar 712,4 ms.
A. Kesimpulan
Dari hasil pengamatan selama perancangan, implementasi,
dan pengujian perangkat lunak, dapat diambil kesimpulan
sebagai berikut:
1. Sistem telah diimplementasikan dan dapat berjalan
dengan baik dalam mendeteksi XSS dalam suatu
halaman web.
2. Sistem deteksi XSS yang dibuat sudah mampu
mendeteksi XSS dengan tipe Reflektif dengan tingkat
akurasi dan ketelitian sebesar 89% dan 97%.
3. Aplikasi ini mampu memberikan notifikasi XSS ketika
pengguna mengakses halaman yang termasuk kategori
XSS.
4. Kecepatan proses deteksi tidak berpengaruh besar
terhadap response time, yakni selisihnya hanya sebesar
712,4 ms.
B. Saran
Berikut merupakan beberapa saran untuk pengembangan
sistem di masa yang akan datang, berdasar pada hasil
perancangan, implementasi, dan pengujian yang telah
dilakukan:
1. Pengembangan aplikasi pendeteksi XSS untuk tipe
Persistent dan DOM.
2. Peningkatan kecepatan proses deteksi dengan
mengimplementasikan thread untuk proses ekstraksi
sehingga proses ekstraksi dapat dilakukan secara
paralel.