Benner

Tuesday, 14 May 2013

Patch Bug SQL




 

Di atas adalah script untuk filter parameter yang mempunyai bug.
Misal pada contoh target seperti di bawah ini
 http://www.victim.com/news.php?bugnya=1
apabila setelah parameter di injeksikan “-“ (minus) atau “ ‘ “ (petik) memunculkan error SQL pada browser, maka kemungkinan pada file news.php dengan parameter bugnya terdapat bug atau vulnearable SQL Injection.
Bug terjadi, ialah ketika parameter bugnya pada script $_GET[bugnya] tidak difilter dan langsung di eksekusi langsung oleh query SQL.
Maka, cara kita untuk patching pada bagian tersebut ialah,
Pertama kita buka file news.php, lalu kita cari parameternya. Misal pada script di bawah ini
<?php
$query = “ select * from news where id = $_GET[‘bugnya’] “;
mysql_query($query);
?>
Pada contoh di atas, maka langkah yang kita gunakan ialah bagaimana caranya pada $_GET[‘bugnya’] tidak di eksekusi langsung oleh query sql. Yaitu kita modif script di atas menjadi seperti di bawah ini
<?php
$patched = $_GET[‘bugnya’];
if($patched < 0){
                echo “Sudah di Patch”;
                exit;
}
if(!preg_match(“/[0-9]+$/”, $patched)){
                echo “Sudah di Patch”;
                exit;
}
if (strlen($patced>4){
                echo “Sudah di Patch”;
                exit;
}

$query = “ select * from news where id = $patched “;
mysql_query($query);
?>
Sederhananya, apa bila $_GET[bugnya] setelah dimasukkan variable $patched dan kemudian lolos dari pengkondisian pengkondisian tersebut, maka nilai dari $_GET[bugnya] yang di masukkan variable $patched baru boleh di eksekusi oleh query SQL

nek sek bingung, browsing0 disik tentang gunane perintah2 pada script PHP di atas, nek kesulitan, monggo hubungi pak Aan atau saya.
SUmber: X Inject

0 comments:

Post a Comment

No SARA
No Bocah
No Junk
!!!

 
Sumber: http://davotmarbun.blogspot.com/2011/11/cara-membuat-tombol-next-page-pada-blog.html#ixzz2AmavJfcn