首页 技术 正文
技术 2022年11月18日
0 收藏 961 点赞 4,709 浏览 1070 个字

开始挑战第十七关(Update Query- Error based – String)

首先介绍下update的用法:

  作用:Update 语句用于修改表中的数据。
  语法:UPDATE 表名称SET 列名称= 新值WHERE 列名称= 某值
  例句:修改users 表中名为inputuser 的数据
  UPDATE users SET password = inputpass WHERE username = inputuser
  注:其中“SET 列名称= 新值”新值可以为逻辑运算的结果(True or False)

这里自己创建了表来实际演示下:

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

下面我们使用update将宋江chinese改变成100,看演示:

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

多个值修改,

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

接下来看下updatexml这个函数,一直网上都说的很模糊,都只是给的payload:and (updatexml(1,concat(0x5c,version(),0x5c)),1),这里只看得出来需要三个参数,但是参数是什么意思缺一无所知,我们只能通过help来查看

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

从UpdateXML(xml_target, xpath_expr, new_xml)看出

第一个参数是目标是针对于xml文档

第二参数是xpath的表达,这里可以看下xpath教程: http://www.w3school.com.cn/xpath/

第三个参数是将xpath表达式转换成什么,也就是替换查找到的符合条件的数据

以上看了下,表示还是有些懵逼。

那就来按照他的方式实例玩玩是怎么回事

(1)先来利用第一条  UpdateXML(‘<a><b>ccc</b><d></d></a>’, ‘/a’, ‘<e>fff</e>’) AS val1;可以看出将第一个参数的内容装换为了<e>fff</e>

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

是不是没看懂,为什么会这样,我把内容拿出来分析

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

(2)同样的第二条UpdateXML(‘<a><b>ccc</b><d></d></a>’, ‘/b’, ‘<e>fff</e>’) AS val2;可以看出将第一个参数的内容装换为了<e>fff</e>,但是由于查找方式是从第一个点开始查询,这里直接跳过了从第二开始查询,所以没有查询到,看下面的说明

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

这样一来使用//就可以随便查询了,不会考虑节点的位置问题,其他的就依次内推

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

函数讲完了,我们就开始看注入了, 先看看源代码

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

再看sql语句,不需要任何的闭合操作等

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

这样一来,我们就可以直接开搞,uname不能下手,就直接在password上下文章,直接上updatexml payload爆信息

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

下面就直接获取表名

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

字段名

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

获取数据,由于使用一层select语句出现报错,就再加了一层

SQL注入之Sqli-labs系列第十七关(UPDATA– 基于错误– 单引号– 字符型)

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,982
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,499
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,343
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,126
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,760
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,796