Tanpa basa-basi mari kita pelajari bagaimana cara menangani bug XSS dalam program web kita. Berdasarkan contoh diatas tadi , dapat saya simpulkan bahwa XSS terjadi karena program web tidak dilengkapi Filter Tags HTML ataupun Javascript. Jadi untuk menangani bug ini kita cukup memberikan filter pada program web kita.
Caranya :
Dalam PHP sendiri terdapat beberapa fungsi untuk mengganti karakter, diantaranya terdapat: ereg_replace(), eregi_replace(), str_replace(), dll
Anda bisa menggunakan fungsi replce yang mana saja, kali ini saya akan memberikan contoh dengan menggunakan ereg_regplace()
<html>
<head>
<title> Contoh Bug XSS </title>
</head><body>
<form name="form1" action="" method="post">
<input type="text" name="q">
<input type="submit" name="kirim" value="kirim" >
</form>
<?php
if ($kirim)
{
$q=ereg_replace("<","<",$q);
$q=ereg_replace(">",">",$q);
echo $q;
}
?>
</body>
</html>
<head>
<title> Contoh Bug XSS </title>
</head><body>
<form name="form1" action="" method="post">
<input type="text" name="q">
<input type="submit" name="kirim" value="kirim" >
</form>
<?php
if ($kirim)
{
$q=ereg_replace("<","<",$q);
$q=ereg_replace(">",">",$q);
echo $q;
}
?>
</body>
</html>
coba anda lakukan hal yang sama seperti tadi, ketikan <h1>XSS_BUG</h1> pada text box kemudian klik tombol kirim!
pada perubahan kali ini, bagaimana hasilnya?? Akan anda lihat hasilnya sebagai berikut :
<h1>XSS_BUG</h1>
ini artinya bug XSS tidak berhasil. Program telah mengganti string < menjadi < begitu juga > diganti oleh >
Karakter “<” (tanpa petik) dalam PHP dibaca sebagai karakter “<”
sedangkan karakter “<” oleh PHP akan dibaca tags HTML atau JavaScript
sumber : tecon-crew
Tidak ada komentar:
Posting Komentar