Patch Bug Bypass-Admin

WELCOME ANONYMOUS CYBER TEAM !!!


Hello Welcome Back Dengan saya Zero_S


Kali ini saya akan memberikan tutorial cara mempatch bug bypass admin , Sebagian dari kalian mungkin sudah tidak asing atau mengetahui apa itu bypass admin . tapi sebelum membahas cara patch bug bypass admin alangkah baiknya untuk membaca artikel sebelumnya ya hehe.


Baca Juga

Bypass admin login adalah teknik menginjeksi halaman login web target dengan perintah tertentu sehingga bisa terbuka.

Bagaimana cara kerja / cara meng Injection suatu web yang vuln Bypass-Admin , sudah di jelaskan cara meng injection suatu web yang vuln terhadap Bypass-Admin di artikel sebelumnya .

Contoh script yang vuln akan Bypass-Admin :
<?php
$message = “”;
if(isset($_POST[‘submit’])){
$username= ($_POST[username]);
$password = md5($_POST[‘password’]);
$query = “SELECT * FROM admin WHERE username = ‘$username’ and password = ‘$password’ and usertype = ‘1’”;
$query_result = mysqli_query($con, $query);
if(mysqli_num_rows($query_result)){
$row = mysqli_fetch_assoc($query_result);
$_SESSION[‘admin_id’] = $row[‘id’];
$_SESSION[‘username’] = $row[‘username’];
header(“location: index.php”);
}else{
$message = “Username and password is not matched.”;
}
}
?>

Pada source code diatas Terdapat Masalah yang bisa di Bypass-Admin
$username= ($_POST['username']);
$password = md5($_POST['password']);
kita bisa tau, bahwa Pada Source code ini Tidak ada Filterisasi karakter yang mengakibatkan adanya bug, dimana seseorang  dapat memasukkan query inject dan dapat masuk ke dashboard admin.
$username = ($_POST['username]);
kita tambahin source code filter seseorang tidak dapat memasuki dashboard admin atau melakukan Bypass pada website.
$username=addslashes(trim($_POST[username]));
Dengan adanya Filter tersebut seseorang tidak akan bisa menginjeksi login admin dan tidak akan berefek apa-apa. 
Dan ini ketika source code setalah di kasih filter agar website atau login admin tidak bisa di Bypass-Admin. 

<?php
$message = "";
if(isset($_POST['submit'])){
$username = addslashes(trim($_POST['username']));
$password = md5($_POST['password']);
$query = "SELECT * FROM admin WHERE username = '$username' and password = '$password' and usertype = '1'";
$query_result = mysqli_query($con, $query);
if(mysqli_num_rows($query_result)){
$row = mysqli_fetch_assoc($query_result);
$_SESSION['admin_id'] = $row['id'];
$_SESSION['username'] = $row['username'];
header("location: index.php");
}else{
$message = "Username and password is not matched.";
}
}
?>
-    

Sekian Tutorial Dari Saya
Maaf jika kurang di mengerti

follow : Instagram
like FP : Facebook 

Post a Comment

Previous Post Next Post