Pengertian Cross Site Scripting (XSS) Dan Cara Mencegahnya
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.
$url = $_GET["kata"];
echo $url;
?>
• Silahkan kalian buka di localhost untuk melihatnya, sekilas terlihat blank putih
Silahkan kalian tambahkan payload xss dibelakang url nya contoh:
$url = $_GET["kata"];
echo
htmlspecialchars($url);
?>