Cara Memperbaiki Bug Reflected XSS

Learn System Security - Halo kawan-kawan, sekarang saya tidak membahas tentang bug yang ada pada website website, tetapi saya akan sedikit berbagi Cara Memperbaiki Bug XSS pada sebuah website.

Yang pertama, kita buat dulu form pencarian sederhana, dimana kata yang dicari akan dimunculkan kembali.
Contoh :
<html>
    <head>
        <title>Fix Reflected XSS</title>
    </head>
    <body>
        <form method='get' action=''>
            <input type='text' name='query' placeholder='Cari disini...' />
            <input type='submit' value='Cari' />
        </form>
        <?php
        if(isset($_GET['query'])){
            $query = $_GET['query'];
            echo "<br>Anda mencari $query";
        }
        ?>
    </body>
</html>

Jika dibuka, maka akan menampilkan form seperti dibawah ini :

Langsung saja kita coba memasukkan Payload : <script>alert(document.domain)</script> pada kolom search, tadaa.... langsung keluar pop-up, wkwkwk :D


Kenapa Bug XSS bisa terjadi pada sebuah website? ini dikarenakan tidak ada filter pada output kata yang berada di form search.
Jadi ketika kita memasukkan kode html pada website tersebut, akan langsung terbaca sebagai kode html. Berikut ini screenshot pada halaman yang memiliki XSS tadi.


Lalu bagaimana cara memperbaiki Bug XSS tadi?
Yup, kita tinggal memasukkan fungsi htmlspecialchars() pada baris $query = htmlspecialchars($_GET['query']);

Untuk kode lengkapnya bisa dilihat dibawah ini :
<html>
    <head>
        <title>Fix Reflected XSS</title>
    </head>
    <body>
        <form method='get' action=''>
            <input type='text' name='query' placeholder='Cari disini...' />
            <input type='submit' value='Cari' />
        </form>
        <?php
        if(isset($_GET['query'])){
            $query = htmlspecialchars($_GET['query']);
            echo "<br>Anda mencari $query";
        }
        ?>
    </body>
</html>

Sekarang waktunya kita coba memasukkan Payload yang tadi,

Dan tadaaa... Bug XSS sudah tidak ada lagi di website tersebut :D
Jadi apa yang kita cari akan dimunculkan persis pada output yang ada, sudah tidak ada lagi Bug XSS pada website tersebut.

Berikut ini source kode dari halaman yang sudah kita beri fungsi htmlspecialchars() tadi.


Yahh begitulah sedikit berbagi Cara Memperbaiki Bug XSS pada sebuah website dari saya, semoga bermanfaat.
Jangan lupa Share jika Bermanfaat :D

Sekian dari saya, terimakasih sudah berkunjung.

0 comments