漏洞重温之sql注入(七)

sqli-labs通关之旅

Less-31

首先,进入31关,我们先添加上id参数。

然后,我们查看源码。

我们门可以看到,index页面源码其实很简单,网页也没有对我们的输入做防御。

所以这里我们只需要使用 双引号加括号闭合,然后再后面拼接sql语句就可以了。

payload如下:

1") and 1=2 union select 1,version(),database() --

至于login页面,跟前面一关一样,基于参数污染的注入。

payload如下:

id=1&id=1") and 1=2 union select 1,version(),database() --

第三十一关,通关。

Less-32

第三十二关,同样为get型注入,然后进入我们喜闻乐见的看源码环节。

从这段代码中,我们可以看到,程序在最开始定义了一个函数,并且将我们传入的参数使用了这个函数进行了转义。根据代码,我们可以发现,网页是过滤了单引号,双引号和斜杠。

接着往下看。

因为在正常情况下,我们构造闭合需要使用到单引号或者双引号,所以在一般情况下,如果单双引号被过滤,我们就无法进行正常注入操作。

但是,根据代码:

mysql_query("SET NAMES gbk");

我们知道网页使用的是gbk编码,所以我们就可以使用宽字节注入来进行绕过对单引号的过滤。

构造payload:

1%df%27+and+1=2+union+select+1,version(),database()+--+

对于这个payload,简单点来理解的话就是,如果网站使用gbk编码,那么%df就会和过滤中添加的内容组成一个字符,这就导致了本来应该针对单引号的过滤被提前组合,所以单引号就可以免于被过滤。后面因为是直接在url中添加内容,所以需要使用“+”来代替空格,不然会引起语句出错。

第三十二关,通关。

Less-33

查看源码。

首先,第一个红框内容,告诉我们网页封装了一个函数来进行参数过滤。其中addslashes函数的作用是在输入内容前加上一个斜杠。

第二个红框内容,告诉我们网页将我们输入的参数进行了转义。

第三个红框内容,告诉我们这里可以使用宽字节注入(不明白为什么的可以去看上一关),以及这里的闭合需要使用单引号。

知道这几点之后,我们就可以开始构造payload了:

1%df%27+and+1=2+union+select+1,version(),database()+--+

第三十三关,通关。

Less-34

跟前面几关不同,34关是POST型注入,面对这种注入,我们一般有两种方式,第一利用工具包抓取请求包,直接在请求包中拼接payload,另外一种就是利用hackbar的POST DATA功能。

这里我们使用第一种。

但我们首先还是要先查看源码。

网页将我们输入的uname参数和passwd参数使用addslashes函数进行转义,然后网页又使用gbk编码,所以我们可以使用宽字节注入来进行绕过。

这次的payload可能跟之前有些区别。

因为这里在登录成功之前没有回显位置。所以在我们不确定用户名和密码的时候,我们可以使用报错注入来进行注入攻击。

payload如下:

1%df%27+and+updatexml(1,concat(0x7e,(database()),0x7e),1)+--+

第三十四关,通关。

Less-35

第三十五关同样是get型注入,直接看源码。

首先我们看到了网页对我们输入的id同样进行了过滤,而且网页依然使用了gbk编码。

但是,这里并不需要使用到宽字节注入。

因为我们可以明确的看到,id参数,并没有使用任何包裹,也就是说,我们可以直接在后面拼接我们希望系统执行的sql语句。

payload:

1 and 1=2 union select 1,version(),database()

第三十五关,通关。

漏洞重温之sql注入(七)的更多相关文章

  1. 漏洞重温之sql注入(五)

    漏洞重温之sql注入(五) sqli-labs通关之旅 填坑来了! Less-17 首先,17关,我们先查看一下页面,发现网页正中间是一个登录框. 显然,该关卡的注入应该为post型. 直接查看源码. ...

  2. 漏洞重温之sql注入(六)

    漏洞重温之sql注入(六) sqli-labs通关之旅 Less-26 进入第26关,首先我们可以从网页的提示看出本关是get型注入. 我们给页面添加上id参数后直接去查看源码. 需要关注的东西我已经 ...

  3. DVWA漏洞演练平台 - SQL注入

    SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,具体来说,它是利用现有应用程序将(恶意的)SQL命令注入到后台数据库引擎执 ...

  4. pikachu漏洞练习之sql注入

    这里因为实验的时候只记录了一部分所以就展示一部分 1.1.1数字型注入 (1)看到界面发现是查询id功能,没有在url里看到有传参所以应该是post方法提交数据. (2)进行sql注入之前我们最好是先 ...

  5. 【漏洞汇总】SQL 注入漏洞之 mysql

    日期:2019-07-23 19:55:59 更新:2019-08-02 10:40:37 作者:Bay0net 介绍:Mysql 注入笔记 0x01. 基本信息 1.1 基本术语 数据库: 数据库是 ...

  6. Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说。。。

    Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说... root@xi4ojin:~# cd ...

  7. WordPress WP-Realty插件‘listing_id’参数SQL注入漏洞

    漏洞名称: WordPress WP-Realty插件‘listing_id’参数SQL注入漏洞 CNNVD编号: CNNVD-201310-499 发布时间: 2013-10-23 更新时间: 20 ...

  8. WordPress NOSpam PTI插件‘comment_post_ID’参数SQL注入漏洞

    漏洞名称: WordPress NOSpam PTI插件‘comment_post_ID’参数SQL注入漏洞 CNNVD编号: CNNVD-201309-388 发布时间: 2013-09-24 更新 ...

  9. 关于sql注入漏洞的挖掘及渗透工具简介

    大量的现代企业采用Web应用程序与其客户无缝地连接到一起,但由于不正确的编码,造成了许多安全问题.Web应用程序中的漏洞可使黑客获取对敏感信息(如个人数据.登录信息等)的直接访问. Web应用程序准许 ...

随机推荐

  1. 有关vue中v-if和v-show的区别

    其实这两个都是属于根据条件判断元素是否可见,但是还有有区别的哦! v-show:就是无论什么时候它其实都一直存在页面上也就是会渲染在DOM上,只是你写了条件让它可见或不可见而已,因为它本质是把它的cs ...

  2. MySQL8.0.20安装配置+用Navicat连接详细教程(win10,Navicat15)

    MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用 ...

  3. Python3,逻辑运算符

    优先级 ()>not>and>or 1.or 在python中,逻辑运算符or,x or y, 如果x为True则返回x,如果x为False返回y值.因为如果x为True那么or运算 ...

  4. Web For Pentester 学习笔记 - XSS篇

    XSS学习还是比较抽象,主要最近授权测的某基金里OA的XSS真的实在是太多了,感觉都可以做一个大合集了,加上最近看到大佬的博客,所以这里我也写一个简单的小靶场手册,顺带着也帮助自己把所有XSS的方式给 ...

  5. 【AHOI 2015】 小岛 - 最短路

    描述 西伯利亚北部的寒地,坐落着由 N 个小岛组成的岛屿群,我们把这些小岛依次编号为 1 到 N . 起初,岛屿之间没有任何的航线.后来随着交通的发展,逐渐出现了一些连通两座小岛的航线.例如增加一条在 ...

  6. 《MySQL必知必会》检索数据,排序检索数据(select ,* ,distinct ,limit , . , order by ,desc)

    <MySQL必知必会>检索数据,排序检索数据 1.检索数据 1.1 select 语句 为了使用SELECT检索表数据,必须至少给出两条信息一想选择什 么,以及从什么地方选择. 1.2 检 ...

  7. 封装Vue Element的table表格组件

    上周分享了几篇关于React组件封装方面的博文,这周就来分享几篇关于Vue组件封装方面的博文,也好让大家能更好地了解React和Vue在组件封装方面的区别. 在封装Vue组件时,我依旧会交叉使用函数式 ...

  8. windows下Nacos集群搭建与nginx集成

    前言: nacos集群至少需要三个(一般为奇数个)nacos实 例,其前面顶nginx,外界入口从nginx入 一.windows下Nacos集群搭建 将Nacos的解压包复制分成3份,分别是: na ...

  9. cdh6.2.1搭建安装

    1.为CM安装mysql驱动 4台服务器 将mysql-connector-java-5.1.27-bin.jar拷贝到/usr/share/java路径下,并重命名 mv mysql-connect ...

  10. python基础 Day9

    python Day9 函数的初识 #代码的可读性较好 s=[1,2,3,4,5,5] def list_len(S): count=0 for i in s: count+=1 print(coun ...