13 September 2010

menangani bug XSS

seperti inilah xss terjadi, xss terjadi karena program web tersebut tidak dilengkapi filter tag-tag html ataupun javascript. Lantas bagaimana menangani bug ini??


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("<","&lt;",$q);
$q=ereg_replace(">","&gt;",$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: