DVWA学习暴力破解low级别

DVWA学习(一)

暴力破解low 级别

<?php

if( isset( $_GET[ 'Login' ] ) ) {

    // Get username

    $user = $_GET[ 'username' ];

 

    // Get password

    $pass = $_GET[ 'password' ];

    $pass = md5( $pass );

 

    // Check the database

    $query  = "SELECT * FROM `users` WHERE user = '$user' AND password = '$pass';";

    $result = mysql_query( $query ) or die( '<pre>' . mysql_error() . '</pre>' );

 

    if( $result && mysql_num_rows( $result ) == 1 ) {

        // Get users details

        $avatar = mysql_result( $result, 0, "avatar" );

 

        // Login successful

        echo "<p>Welcome to the password protected area {$user}</p>";

        echo "<img src=\"{$avatar}\" />";

    }

    else {

        // Login failed

        echo "<pre><br />Username and/or password incorrect.</pre>";

    }

    mysql_close();

}

?>

PHP解释

从LOW级别的代码中可以看到,以GET的方式传送USERname和password

通过SQL从USER表中查询是否有以GET方式传输的两个值,进行MYSQL查询

查询的结果存储在一个变量中,如果查询到数据库中有这么一个记录

返回一个字段值

输出Welcome to the password protected area {$user}

<img src=\"{$avatar}\" />

若密码错误(die()+没有一条记录)

输出

 

echo "<pre><br />Username and/or password incorrect.</pre>";

代码分析:

该代码将输入值直接带入SQL查询,依据返回记录情况判断登陆是否成功。

漏洞利用:

该代码存在SQL注入漏洞,由于没有对输入的字符做任何的过滤便直接带入SQL查询,也就是说可以在输入中构造SQL使其到数据库中查询。

漏洞细节:

admin’ or ‘a’=’a
admin#

对于low级别的理解:

这是low级别的查询语句(单引号是否可忽略)

SELECT * FROM `users` WHERE user = '$user' AND password = '$pass'

若忽略单引号注入替换:

admin or 1=1

带入SQL:

 SELECT * FROM `users` WHERE user = ' admin or 1=1' AND password = '$pass'

带入数据库查询的结果:

无法查询出结果

带上单引号:

admin’ or ‘a’=’a
带入查询:

 SELECT * FROM `users` WHERE user = 'admin’ or ‘a’=’a' AND password = '$pass'

注意带入:

Admin’#在数据库中无法查询成功

但是在DVWA中可成功爆破

原因如下:

缺少“;”

原本的;被#注释掉了

   

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值