
JurnalPost.com – Keamanan siber dan ancaman hacking kini tengah menjadi perhatian serius dalam lingkup keamanan informasi. Maraknya kasus pencurian data pribadi membuat kita perlu lebih waspada. Bahaya terbesar yang terkait dengan aktivitas hacking adalah kemampuannya untuk merampas data pribadi pengguna. Informasi seperti nomor identitas, detail keuangan, bahkan data kesehatan, dapat menjadi target empuk bagi pihak yang tidak bertanggung jawab.
Perlu dicatat bahwa metode hacking semakin canggih, di mana para pelaku dapat memanfaatkan celah keamanan dalam sistem atau mengimplementasikan strategi phishing yang mungkin sulit untuk dideteksi. Keberadaan masyarakat awam, termasuk generasi Z, dalam dunia digital ini membuat mereka rentan terhadap serangan siber, terutama jika pemahaman mereka terbatas dalam aspek keamanan siber. Oleh karena itu, penting bagi individu untuk meningkatkan kesadaran mereka terkait keamanan siber dan memahami praktik-praktik yang diperlukan untuk melindungi data pribadi dari ancaman hacking yang semakin meluas.
Salah satu ancaman keamanan siber yang akan kita bahas disini ialah XSS atau dengan kepanjangan Cross Site Scripting. Untuk mengetahui lebih detail mengenai metode hacking XSS ini, mari ikuti terus artikel ini hingga selesai.
1. Apasih XSS itu ?
Serangan Cross-Site Scripting (XSS) adalah jenis injeksi, di mana skrip berbahaya disuntikkan ke situs web yang tidak berbahaya dan tepercaya. Serangan XSS terjadi ketika penyerang menggunakan aplikasi web untuk mengirimkan kode berbahaya, umumnya dalam bentuk skrip sisi browser, ke pengguna akhir yang berbeda. Kelemahan yang memungkinkan serangan ini berhasil cukup luas dan terjadi di mana pun aplikasi web menggunakan masukan dari pengguna dalam keluaran yang dihasilkannya tanpa memvalidasi atau mengkodekannya.
Penyerang dapat menggunakan XSS untuk mengirim skrip berbahaya ke pengguna yang tidak menaruh curiga. Browser pengguna akhir tidak memiliki cara untuk mengetahui bahwa skrip tersebut tidak dapat dipercaya, dan akan menjalankan skrip tersebut. Karena menganggap skrip berasal dari sumber tepercaya, skrip jahat dapat mengakses cookie, token sesi, atau informasi sensitif lainnya yang disimpan oleh browser dan digunakan dengan situs tersebut. Skrip ini bahkan dapat menulis ulang konten halaman HTML.
2. Bagaimana sih cara kerja dari XSS?
Secara sederhana, XSS bekerja dengan mengeksekusi skrip berbahaya di browser korban dengan cara memasukkan kode berbahaya ke halaman web atau web aplikasi yang sah. Umumnya serangan ini dilakukan menggunakan JavaScript, VBScript, ActiveX, Flash, dan bahasa sisi klien lainnya.
Nantinya, penyerang akan menghubungi para korban melalui forum, kolom komentar, hingga message boards dengan mengunggah link untuk membuat skrip yang berbahaya. Ketika korban mengklik link tersebut, skrip mulai menyerang dan menyamar sebagai si korban. Melalui cara ini, para hacker dapat mengetahui data-data milik korban. Wah, ngeri banget ya metode hacking XSS ini.
3. Apakah ada jenis jenis dari XSS ?
Nah, jadi XSS itu terbagi menjadi tiga jenis yaitu Reflected, stored, dan DOM based XSS. Dari ketiga metode / jenis XSS, masing masing memiliki cara atau teknik dalam pengambilan ditanya tersendiri. ini dia penjelasan mendetail jenis jenis XSS :
• Reflected XSS ( XSS Tercermin )
Reflected XSS adalah serangan yang skrip yang disuntikkan dipantulkan dari server web, misalnya dalam pesan kesalahan, hasil pencarian, atau respons lain apa pun yang menyertakan sebagian atau seluruh masukan yang dikirim ke server sebagai bagian dari permintaan. Serangan yang dipantulkan dikirimkan kepada korban melalui rute lain, seperti pesan email, atau di situs web lain. Saat pengguna ditipu untuk mengeklik tautan berbahaya, mengirimkan formulir yang dibuat khusus, atau bahkan sekadar menjelajah ke situs berbahaya, kode yang disuntikkan akan berpindah ke situs web yang rentan, yang mencerminkan serangan kembali ke browser pengguna. Browser kemudian mengeksekusi kode tersebut karena berasal dari server “tepercaya”.
• Stored XSS ( XSS Tersimpan )
Lain halnya dengan Reflected XSS, Stored XSS atau XSS tersimpan ini adalah jenis XSS yang dimana skrip yang disuntikkan disimpan secara permanen di server target, seperti di database, di forum pesan, log pengunjung, kolom komentar, dll. Korban kemudian mengambil skrip berbahaya dari server ketika meminta skrip yang disimpan. muncul ketika aplikasi menerima data dari sumber yang tidak tepercaya dan memasukkan data tersebut ke dalam respons HTTP selanjutnya dengan cara yang tidak aman.
• DOM – Based XSS
DOM-based Cross-Site Scripting (XSS) adalah jenis serangan keamanan web di mana serangan skrip terjadi di sisi klien, dengan memanipulasi atau memodifikasi DOM (Document Object Model) pada browser pengguna. Berbeda dengan Stored XSS, skrip pada DOM-based XSS tidak disimpan di server, tetapi dieksekusi langsung di dalam browser pengguna.
4. Contoh XSS dan solusi nya
Namun, bagaimana sebenernya metode Hacking XSS ini bekerja ? berikut merupakan Web dengan bahasa PHP yang disisipkan javascript jahat pada URL nya.
XSS Contoh
Nama ku adalah
Code diatas merupakan contoh sederhana dari program XSS. terlihat sederhana, namun memiliki potensi masalah keamanan terkait Cross-Site Scripting (XSS). Dalam kode tersebut, Anda mengekstrak nilai parameter ‘nama’ dari URL menggunakan $_GET dan menampilkannya di halaman HTML. Ini membuat aplikasi rentan terhadap serangan XSS jika penggunaan parameter tersebut tidak diolah dengan benar. Jika seseorang menyisipkan skrip JavaScript pada parameter ‘nama’, maka skrip tersebut akan dieksekusi di sisi klien ketika halaman dimuat, dan ini dapat digunakan oleh penyerang untuk melakukan berbagai tindakan berbahaya seperti mencuri cookie pengguna atau melakukan aksi tak terotorisasi. Bagaimana solusinya ?
Solusi 1
Kita dapat menggunakan fungsi htmlspecialchars() saat menampilkan data pengguna pada halaman HTML untuk mencegah interpretasi karakter khusus HTML dan melindungi dari serangan XSS. Berikut adalah contoh perubahan yang dapat Anda lakukan pada kode PHP tersebut:
XSS Contoh
Nama ku adalah
Dengan begitu, menggunakan htmlspecialchars(), karakter khusus HTML seperti < dan > akan diubah menjadi entitas HTML yang aman. Ini membantu melindungi aplikasi Anda dari potensi serangan XSS.
Solusi 2
Jika si korban tau ketika dia dikirimkan suatu URL yg didalamnya terdapat javascript yg seharusnya tidak ada, maka dia bisa langsung menghapus bagian dimana javascript itu ada pada URL.

Seperti yang tertera pada gambar diatas, apabila bagian link dari suatu website terdapat status atau script yang tertera dapat dipastikan bahwa website tersebut merupakan XSS.
Penulis : Gareth Muammar Dysa, Hudzaifah Nabil Amrullah, Julianda Zaki Pradipta, Universitas Singaperbangsa Karawang.



