Pikachu实验过程1(函数报错的信息)

一.基于函数报错的信息获取
1.常用报错函数updatexml().extractvalue().floor()
2.(select/insert/update/delete)
技术思路:
在MYSQL中使用一些指定的函数来制造报错,从而从报错信息中获取设定的信息。
select/insert/update/delete都可以从报错信息中获取。
背景条件:后台没有屏蔽数据库报错信息,在语法发生错误时会输出在前端。
updatexml():函数是MYSQL对XML文档数据进行查询和修改的XPATH函数
extractvalue():函数也是MYSQL对XML文档数据进行查询的XPATH函数
floor():MYSQL中用来去整的函数
updatexml()函数作用:改变(查找并替换)XML文档中符合条件的节点的值。
语法:UPDATEXML(xml_document.Xpathstring,new_value)
第一个参数:fiedname是string格式,为表中字段名。
第二个参数:Xpathstring(Xpath格式的字符串)。
第三个参数:new_valye,string格式,替换查找到符合条件的
Xpath定位必须是有效的,否则会发生错误
二.Select报错下的演示
在这里插入图片描述
1.Update注入演示

在这里插入图片描述
三…基于函数报错的信息获取
三个常用来报错的函数-extractvalue
函数的作用:从目标XML中返回包含所查询值的字符串
语法:ExtractValue(xml_document,xpath_string)
第一个参数:XML_document是string格式,为XML文档对象名称。
第二个参数:Xpath_string(Xpath格式的字符串)
Xpath定位必须是有效的,否则会发生错误。
在这里插入图片描述
四.基于Http header的注入
通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。HTTP的头域包括通用头,请求头,响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。域名是大小写无关的,域值前可以添加任何数量的空格符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表符。
在这里插入图片描述
在这里插入图片描述
五.盲注
常见类型
1.基于布尔型SQL盲注
Boolean注入:构造SQL判断语句,通过查看页面的返回结果来推测哪些SQL判断条件是成立的,以此来获取数据库中的数据。
(1).判断当前数据库库名的长度
(2).获取当前数据库库名
由于数据库的库名范围一般在a-z,0-9之间,可能有特殊字符,不区分大小写。所以可以逐字符判断当前数据库库名,使用substr来截取database()的值,一次截取一个,注意和limit的从0开始不同,它是从1开始。
(3).获取数据库表名
在这里插入图片描述
2.基于时间型SQL盲注
时间盲注:基于的原理是,当对数据库进行查询操作,如果查询的条件不存在,语句执行的时间便是0.但往往语句执行的速度非常快,线程信息一闪而过,得到的执行时间基本为0. 利用sleep()或benchmark()等函数让mysql执行时间变长经常与if(expr1,expr2,expr3)语句结合使用,通过页面的响应时间来判断条件是否正确。if(expr1,expr2,expr3)含义是如果expr1是True,则返回expr2,否则返回expr3
Select sleep(N)可以让此语句运行n秒钟。但是如果查询语句的条件不存在,执行的时间便是0,利用该函数这样一个特殊的性质,可以利用时间延迟来判断我们查询的是否存在。
这便是SQL基于时间延迟的盲注的工作原理
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.基于报错型SQL盲注
六.OS远程控制
首先备份好你本地的数据库,方法如下。 1、用APMServ5.2.6(网站上面有下载)带的phpmyadmin 进行备份恢复。 A、运行APMServ5.2.6, 点击右边的“管理MySql 数据库”。服务器填写127.0.0.1:3306, 登入名称:root,密码为空进行登录。在左边是数据库列表。点击你的数据库。点导出、拉到 最下面把“另存为文件”打勾。点执行。这样你就可以备份你的数据库了。 2、运行mySQL-Front 备份恢复你的数据库。 A、新建一个登录。 信息栏中随便写一下名字。标识你的登录信息。 B、点击连接栏,分别填好: 服务器:服务器的IP 端 口:一般为3306 C、点击注册栏,分别填好: 用 户:你申请的数据库的用户名(如果是本地一般为root), 密 码:数据库的密码(本地为空) 数据库:你申请的数据库名。 填写好这些信息后点击“确定”这样就能链接到你的远程数据库了。左边这个远程数据。 服务器的一些数据库,点击你的数据库后等待链接。直至返回所有数据,你便能打开你的数据库。 中的数据表了。在这里你可以修改你的数据表结构,删除填加数据等(小心操作)。 D、右键点击你的数据库进行备份(输出)数据
七…基于暴力破解在sql漏洞中的应用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值