Bagi Anda yang telah lama berkecimpung di dunia per-web-an, pastinya tidak asing dengan istilah XSS Attack. Ya, XSS(Cross Side Scripting) adalah suatu metode dengan memasukkan tag/skrip bahasa HTML (injeksi) ke dalam suatu website untuk tujuan mengacaukan website itu. Jadi ketika Anda membuka halaman web yang telah diserang XSS, maka halaman tersebut ga bakalan kebuka, namun alamat yang diinputkan pada script XSS. Lantas, gimana cara menangkalnya? Simak penjelasan berikut:
Script yang dipakai untuk XSS biasanya HTML, JavaScript, VBScript, ActiveX, atau bahkan Flash (Action Script). Nah efek serangan XSS itu salah satunya seperti yang telah dijelaskan di atas, Anda malah terhubung ke web yang bukan Anda inginkan. Itu baru salah satunya loo... Yang lebih berbahaya lagi, XSS mampu mencuri cookies dan merusak sistem web Anda.
Nah, cara buat mencegahnya adalah dengan membuat filter untuk mengabaikan hal-hal yang berkaitan dengan tag script HTML dan JavaScript yang diinputkan oleh pengunjung web Anda.. (namanya juga internet, pasti ada saja orang jahil dan iseng).. Untuk lebih jelasnya, perhatikan cara di bawah ini:
1. Sebagai contoh, ada pengunjung yang usil mengetikkan ini di bagian komentar, misalkan halaman diganti dengan google, berikut scriptnya: <script>location.href=http://www.google.com;</script>
Nb: kalo punya niat jahil, jangan dicoba yaa.. =P
2. Nah, setelah dia menambah komentar tersebut, ketika Anda ingin menuju halaman info (dalam contoh web ini, halaman info menampilkan detail info-info apa saja yang diinputkan),
malah Anda menuju halaman google
3. Lalu, untuk menangkalnya buat fungsi dalam php untuk menangkal injeksi XSS. Sintaksnya dapat dilihat sebagai berikut:
function anti_injection($d){
$c = stripslashes(strip_tags(htmlspecialchars($d,ENT_QUOTES)));
return $c;
}
Sebelum melakukan perintah SQL untuk menginputkan atau mengubah data, letakkan script ini, untuk pemanggilan fungsi:
$judul_info = anti_injection($_POST[judul_info]);
$isi_info = anti_injection($_POST[isi_info]);
Dalam fungsi yang kita buat, ada fungsi-fungsi lain yang mendukung filter web Anda.. Nah, biar makin pinter PHP, akan dijabarkan fungsi-fungsi berikut:
· Fungsi stripslashes digunakan untuk menghilangkan tanda slash (/) pada setiap quote.
· Fungsi strip_tags digunakan untuk mengabaikan tag, entah itu tag HTML atau tag PHP
· Fungsi htmlspecialchars mirip dengan strip_tags, tapi ia lebih mengkhusus untuk tag HTML dan JavaScript yang berupa kode khusus. Misalkan &, <, >, ‘
· ENT_QUOTES digunakan untuk mengubah tanda petik ganda/tanda petik tunggal secara bersamaan + karena kita juga menggunakan htmlspecialchars
4. Sekarang, mari kita uji.... apakah XSS masih bisa menyerang..
and the result is..........
Quote tersebut sudah dianggap sebagai teks biasa, jadi tidak perlu khawatir lagi web Anda kenapa-napa ^.^
Nah, dengan menambahkan coding di atas, maka web Anda aman dari XSS Attack, yah, internet memang sangat terbuka. Kita tidak tau serangan-serangan apa lagi yang muncul. So, ttep upgrade kemampuan Anda untuk bisa selalu melindungi apa yang ingin Anda jaga...
Read More..
Script yang dipakai untuk XSS biasanya HTML, JavaScript, VBScript, ActiveX, atau bahkan Flash (Action Script). Nah efek serangan XSS itu salah satunya seperti yang telah dijelaskan di atas, Anda malah terhubung ke web yang bukan Anda inginkan. Itu baru salah satunya loo... Yang lebih berbahaya lagi, XSS mampu mencuri cookies dan merusak sistem web Anda.
Nah, cara buat mencegahnya adalah dengan membuat filter untuk mengabaikan hal-hal yang berkaitan dengan tag script HTML dan JavaScript yang diinputkan oleh pengunjung web Anda.. (namanya juga internet, pasti ada saja orang jahil dan iseng).. Untuk lebih jelasnya, perhatikan cara di bawah ini:
1. Sebagai contoh, ada pengunjung yang usil mengetikkan ini di bagian komentar, misalkan halaman diganti dengan google, berikut scriptnya: <script>location.href=http://www.google.com;</script>
Nb: kalo punya niat jahil, jangan dicoba yaa.. =P
2. Nah, setelah dia menambah komentar tersebut, ketika Anda ingin menuju halaman info (dalam contoh web ini, halaman info menampilkan detail info-info apa saja yang diinputkan),
malah Anda menuju halaman google
3. Lalu, untuk menangkalnya buat fungsi dalam php untuk menangkal injeksi XSS. Sintaksnya dapat dilihat sebagai berikut:
function anti_injection($d){
$c = stripslashes(strip_tags(htmlspecialchars($d,ENT_QUOTES)));
return $c;
}
Sebelum melakukan perintah SQL untuk menginputkan atau mengubah data, letakkan script ini, untuk pemanggilan fungsi:
$judul_info = anti_injection($_POST[judul_info]);
$isi_info = anti_injection($_POST[isi_info]);
Dalam fungsi yang kita buat, ada fungsi-fungsi lain yang mendukung filter web Anda.. Nah, biar makin pinter PHP, akan dijabarkan fungsi-fungsi berikut:
· Fungsi stripslashes digunakan untuk menghilangkan tanda slash (/) pada setiap quote.
· Fungsi strip_tags digunakan untuk mengabaikan tag, entah itu tag HTML atau tag PHP
· Fungsi htmlspecialchars mirip dengan strip_tags, tapi ia lebih mengkhusus untuk tag HTML dan JavaScript yang berupa kode khusus. Misalkan &, <, >, ‘
· ENT_QUOTES digunakan untuk mengubah tanda petik ganda/tanda petik tunggal secara bersamaan + karena kita juga menggunakan htmlspecialchars
4. Sekarang, mari kita uji.... apakah XSS masih bisa menyerang..
and the result is..........
Quote tersebut sudah dianggap sebagai teks biasa, jadi tidak perlu khawatir lagi web Anda kenapa-napa ^.^
Nah, dengan menambahkan coding di atas, maka web Anda aman dari XSS Attack, yah, internet memang sangat terbuka. Kita tidak tau serangan-serangan apa lagi yang muncul. So, ttep upgrade kemampuan Anda untuk bisa selalu melindungi apa yang ingin Anda jaga...