前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >mysql高级注入4--盲注1

mysql高级注入4--盲注1

作者头像
lonelyvaf
发布于 2018-06-07 06:39:24
发布于 2018-06-07 06:39:24
7740
举报

所谓盲注就是在正常页面没有输入点,或者无法影响页面输出的内容~ 然后我们无法借助页面来返回数据库中我们想要注出的数据,这时候就要构造sql语句让它报错,或者进行一系列的判断。 这一篇讲的基于布尔的盲注。

科普文,给学弟妹的...大牛绕过绕过...

一、字符串返回字符函数

不得不提的是ord函数和ascii函数的用法一样,假如str为空字符串,则返回值为 0 。假如str 为NULL,则返回值为 NULL。 ASCII()用于带有从 0到255的数值的字符。

二、字符串截取三剑客

1、substr()函数

Substr和substring是一样的

用法:

substr(string, start, length);

string为字符串;

start为起始位置;

length为长度。mysql中的start是从1开始的

查看我当前的数据库是security

截取第一个字符串

第二个

2、mid()函数

mid()函数

此函数为截取字符串一部分。MID(column_name,start[,length])

参数

描述

column_name

必需。要提取字符的字段。

start

必需。规定开始位置(起始值是 1)。

length

可选。要返回的字符数。如果省略,则 MID() 函数返回剩余文本。

其实和substr大同小异…..

3、left()和right()函数

用法:

Left()得到字符串左部指定个数的字符

Left ( string, n) string为要截取的字符串,n为长度。

同理可知,right也是这样子的。有时候碰到奇葩的环境可能left用不了,right就可以用了。

同样一件事….我们习惯性的都用left,左撇子们可能用right,比如我。

那么介绍完一大堆有的没得是时候该介绍重头戏了。

所谓的盲注就是没有输出点。就是你和数据库产生了交互,但是在页面上去没有显示数据库的内容。具体可以参考sqli labs 基础练习5~

上面的代码虽然将id带入了数据库查询,但是没有echo在页面上。于是我们就要用到我们前面介绍的几个函数来注入了。

具体如下:

对比以下的ascii码表,我们发现注入出来的数据库名是无误的。

但是如果是传参的语句呢?

那么我们就没有办法像mysql客户端一样的回显了…不然怎么叫盲注。

输入:http://localhost/sqli-labs/Less-5/?id=1

可以看到这个是正常页面。

加上' 报错

加上' and 1--+

又返回正常了。这下我们可以用到我们上几篇学过的了。

http://localhost/sqli-labs/Less-5/?id=1' andascii(substr((select database()),1,1))=115--+

返回正常,说明数据库的第一位是ascii码115,对应—>s。

以此类推,但是一个个手注太过sb。我们可以用python实现自动化脚本来获取数据。

Sql注入工具就是这个原理的,哈哈。自己写的程序比不过sqlmap速度快,但是可控性强。有需要留言吧。代码贴上来太丑了,另一方面自己动手写也是一种提高。代码提示:用二分法。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-03-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 晨星先生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【less-5】基于SQLI的SQL盲注常用函数
通过本实验理解MySQL盲注常用函数的功能,掌握MySQL盲注常用函数在SQL注入中的应用方法,熟悉SQL注入的常见流程。
未名编程
2024/10/12
1420
【less-5】基于SQLI的SQL盲注常用函数
sql盲注的学习
这几天在学习sql注入的有关内容,今天记录一下我认为比较重要的部分,即sql盲注,我一开始学习的时候看到了好多的函数,看着看着就弄混了,相信不少新入门的师傅也有类似的困惑,经过多番心理斗争,我终于决定将这部分知识好整理一下,同时也给大家分享一下我在学习过程中编写的几个自动注入脚本,也欢迎各位师傅的指点和斧正。
安恒网络空间安全讲武堂
2019/09/28
8330
sql注入学习总结
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
信安之路
2018/08/08
8610
sql注入学习总结
SQL学习之SQL注入学习总结
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。 测试数据库 我们本文就以如下数据库作为测试数据库,完成我们的注入分析
Jetpropelledsnake21
2018/06/14
1.1K1
sql盲注
盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入。盲注一般分为布尔盲注和基于时间的盲注和报错的盲注。本次主要讲解的是基于布尔的盲注。
字节脉搏实验室
2020/05/12
9380
sql盲注
sqli通关笔记(2) 持续更新ing~
sqli 5-6关就考验的就是关于盲注的知识了 我们先了解一下布尔盲注sql注入截取字符串常用三大法宝函数
YanXia
2023/04/07
2020
sqli通关笔记(2) 持续更新ing~
SQL注入从入门到进阶
本文章产生的缘由是因为专业老师,让我给本专业的同学讲一哈SQL注入和XSS入门,也就是本文的入门篇,讲完两节课后,发现自己对于SQL注入的理解也就仅仅局限于入门,于是有了进阶章节的产生。
小简
2022/12/29
4K0
SQL注入从入门到进阶
SQLi_Labs通关文档【1-65关】
为了不干扰自己本机环境,sql-lab我就用的docker跑起来的,搭建也非常简单,也就两条命令
HACK学习
2019/08/05
4K1
渗透测试SQL注入漏洞原理与验证(4)——SQL盲注
在SQL注入过程中,SQL语句执行后,选择的数据不能回显到前端页面,此时需要利用一些方法进行判断或者尝试,这个过程称之为盲注。
zhouzhou的奇妙编程
2024/09/24
8230
SQLI-LABS 更新帖(二)
Less-2 /sqli-labs/Less-2/?id=1 代码如下: $sql="SELECT * FROM users WHERE id=$id LIMIT 0,1"; $result=mysq
ChaMd5安全团队
2018/03/29
9890
SQLI-LABS 更新帖(二)
超全sql注入实用语句_sql注入语句实例大全
目录 判断是否存在注入 判断列数 Union联合注入 爆数据库 爆表 爆字段 爆数据 sql盲注 导入导出文件 Post注入 修改useragent: 修改referer: 修改cookie gr
全栈程序员站长
2022/11/16
2.9K0
【Less-9】基于SQLI的SQL时间盲注
通过本实验理解SQL时间盲注漏洞的定义方法,掌握基于SQL时间盲注的手工注入方法,熟悉SQL时间盲注存在的原因,掌握SQL时间盲注的防护方法。
未名编程
2024/10/12
1450
【Less-9】基于SQLI的SQL时间盲注
【SQL注入】SQL注入知识总结v1.0
First of all,你的目标得有可以利用的漏洞才行,不存在什么万能代码的...
一名白帽的成长史
2019/10/08
1.1K0
【SQL注入】SQL注入知识总结v1.0
sql注入总结笔记
前端构造的SQL语句片段拼接到后台SQL语句中,后台缺乏正确识别和过滤,造成与其外的数据库查询结果。
宸寰客
2020/08/11
1.7K0
sql注入总结笔记
SQL注入常用姿势
以Sqli-labs Less8为例,无论输入什么就只有正确和错误,于是可以判断基于布尔的盲注。
用户11062199
2024/05/30
1340
用python写一个自动化盲注脚本
当我们进行SQL注入攻击时,当发现无法进行union注入或者报错等注入,那么,就需要考虑盲注了,当我们进行盲注时,需要通过页面的反馈(布尔盲注)或者相应时间(时间盲注),来一个字符一个字符的进行猜解。如果手工进行猜解,这就会有很大的工作量。所以这里就使用python写一个自动化脚本来进行猜解,靶场选择的是sqli-labs的第八关。 参考资料:《python安全攻防》
雪痕@
2021/11/09
2.1K0
用python写一个自动化盲注脚本
1.3.1-SQL注入-SQL盲注-布尔盲注
这里我们可以通过构造语句,来判断数据库信息的正确性,再通过页面的“真”和“假”来识别我们的判断是否正确,这既是布尔盲注!
tea9
2022/07/16
6210
1.3.1-SQL注入-SQL盲注-布尔盲注
MySQL手注之布尔型盲注详解
基于布尔型SQL盲注即在SQL注入过程中,应用程序仅仅返回True(页面)和False(页面)。 这时,我们无法根据应用程序的返回页面得到我们需要的数据库信息。但是可以通过构造逻辑判断(比较大小)来得到我们需要的信息。
渗透攻击红队
2020/05/25
12.2K0
MySQL手注之布尔型盲注详解
sql注入—基础篇,适合小白学习
用我的话说SQL注入就是利用网站前端与数据库连接处的漏洞,导致我们输入的语句能过在数据库中非常规的执行。
字节脉搏实验室
2020/12/18
1.8K0
MySQL手工注入学习-1
页面提示:Please input the ID as parameter with numeric value
Mirror王宇阳
2020/11/12
1.3K0
相关推荐
【less-5】基于SQLI的SQL盲注常用函数
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档