Pengertian Cross Site Scripting (XSS) Dan Cara Mencegahnya

Cross site scripting (XSS) merupakan salah satu jenis serangan cyber berbahaya, Serangan ini mengeksploitasi kerentanan XSS untuk mencuri data, mengendalikan sesi pengguna, menjalankan kode jahat, atau digunakan sebagai bagian dari serangan phishing, serangan cross site scripting (XSS) juga pernah terajadi pada platform populer seperti Facebook, Google, dan Paypal.

Meskipun kerentanan cross site scripting (XSS) termasuk dalam jenis serangan cyber berbahaya, namun dari sebagian besar korban tidak menyadari bahwa mereka sedang diserang. Bahkan Cross site scripting (XSS) ini masuk ke dalam daftar top 10 kerentanan OWASP ( Open Web Application Security Project), yang bahayanya tidak bisa di ragukan lagi.


Pengertian Cross Site Scripting (XSS)

Cross site scripting (XSS) adalah salah satu jenis serangan injeksi code (code injection attack). XSS dilakukan oleh penyerang dengan cara memasukkan kode HTML atau client script code lainnya ke suatu situs. Serangan ini akan seolah-olah datang dari situs tersebut. Akibat serangan ini antara lain penyerang dapat mem-bypass keamanan di sisi klien, mendapatkan informasi sensitif, atau menyimpan aplikasi berbahaya.


Cara Mencegah Serangan Cross Site Scripting (XSS)

1. Filtering

Dengan mewaspadai karakter-karakter khusus, seperti:

  • Terletak pada isi dari elemen blok level
  • “<” : pembuka sebuah tag
  • “&”: penanda sebuah entitas
  • “>”
  • Terletak di dalam nilai suatu atribut
  • di dalam nilai suatu atribut, diapit tanda petik ganda
  • di dalam nilai suatu atribut, diapit dengan petik tunggal
  • di dalam nilai suatu atirbut, tanpa diapit tanda petik
  • “&” dengan conjunction
  • Terletak pada URL
  • spasi, tabulasi dan pindah baris sebagai penanda akhir dari suatu URL
  • “&” menandai suatu entitas, atau batas parameter CGI
  • Karakter yang bukan ASCII : tidak ada karakter non-ASCII di URL
  • “%”:
  • Terletak di antara <SCRIPT> dengan </SCRIPT> : titik koma, tanda kurung, kurung kurawal dan ganti garis.
  • Terletak di dalam server side script yang akan mengkonversikan tanda seru di input menjadi tanda petik ganda di output.

2. Validasi

Teknik ini dilakukan untuk menjamin hanya input yang tepat yang akan dipilih.

3. Encoding

Dengan melakukan encoding, data anda tidak akan hilang, meskipun pengkodean karakter yang dinilai membahayakan.


Cara Patch Bug Cross Site Scripting (XSS)

Lalu bagaimana cara patch bug Cross Site Scripting (XSS)? Oke sekarang saya contohin ya disini saya sudah siapin scryp yang vuln xss.

  <?php 

   $url = $_GET["kata"]; 

   echo $url; 

?>


• Lihat scrypt di atas, scrypt di atas tidak ada validasi terhadap html spesial karakter. sehingga mengalami kerentanan xss.
• Silahkan kalian buka di localhost untuk melihatnya, sekilas terlihat blank putih
Silahkan kalian tambahkan payload xss dibelakang url nya contoh:
http://localhost:8888/xss.php?kata=<script>alert("Cybers INC!!!")</script> dan hasilnya seperti digambar:

 
• Untuk patch bug Cross Site Scripting (XSS) tersebut kita cukup menambahkan code validasi htmlspecialchars() dan codingan di atas akan menjadi seperti ini

 <?php

   $url = $_GET["kata"]; 

   echo

 htmlspecialchars($url); 

?>


Sekarang kita cek lagi dan dump kita sudah berhasil memfilternya
Bagaimana cukup mudah bukan? Mungkin sekian dulu pembahasan tentang Cross Site Scripting (XSS) serta cara mencegah serangan Cross Site Scripting (XSS) yang bisa kami bagikan semoga bermanfaat.
Next Post Previous Post
No Comment
Add Comment
comment url