网络安全进阶学习第十三课——SQL注入Bypass姿势

文章目录

  • 一、等号被过滤
  • 二、substr、mid等被过滤
  • 三、逗号被过滤
  • 四、and/or被过滤
  • 五、空格被过滤
  • 五、其他绕过方式


一、等号被过滤

  • 1、like,rlike语句,其中rlike是正则
  • 2、大于号>,小于号<
  • 3、符号<>:<>为不等于的意思相当于!=
  • 4、采用regexp函数
  • 5、in
  • 6、between

二、substr、mid等被过滤

  • 1、substring、substrB

  • 2、locate(str1,str2)
    返回str1字符串在str2里第一次出现的位置,没有则返回0;
    在这里插入图片描述

    • locate(str1,str2,pos)
      返回str1字符串在str2里pos(起始位置)出现的位置,没有则返回0;
      pos必须大于第一次出现的位置,才能显示第二次出现的位置
      在这里插入图片描述
  • 3、position(str1 in str2)
    用法与locate类似,返回str1字符串在str2出现的位置,没有则返回0
    在这里插入图片描述

  • 4、instr( string1, string2 )
    #string1:源字符串,要在此字符串中查找。
    #string2:要在string1中查找的字符串 。
    在这里插入图片描述

  • 5、lpad(string , length , pad_string)rpad(string , length , pad_string)
    #string:被填充的字符串,length:返回的字符串长度,pad_string:填充字符串,是个可选参数
    在这里插入图片描述
    在这里插入图片描述


三、逗号被过滤

  • 1、采用%EF%BC%8C
    %EF%BC%8C这是中文的逗号,大部分不能用,但有些函数可以用

  • 2、采用from xx for xx
    一般能在mid、substr函数使用
    在这里插入图片描述


四、and/or被过滤

  • 使用&&、||或者like

五、空格被过滤

  • 1、注释符绕过://, -- , /**/, #, --+, -- -, ;,%00,--a,/*!*/
    在这里插入图片描述

    • 1.1、/*!*/是内联注释,只要里面的数字大于你的数据版本,就会失真。
      在这里插入图片描述
      我这里版本是5.7.26
      在这里插入图片描述
      如图/!23232user()/里面的user()是会被执行的。但当换成63232就大于了版本,就无法被执行了。这方法可以用来绕waf
  • 2、换行绕过,例如用%0a
    在这里插入图片描述

  • 3、逻辑括号绕过
    在这里插入图片描述


五、其他绕过方式

  • 1、大小写绕过,如User(),dAtaBASE(),SelEct等。

  • 2、只过滤一次时,双重关键字绕过,如selselectect,ununionion,oorr等。

  • 3、and/or+空格被替换为空时,andand+空格(oror+空格)绕过。

  • 4、编码绕过:如URLEncode编码,ASCII,HEX,unicode编码绕过。


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

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

相关文章

飞凌OKMX6ULL-C开发板试用

开箱体验 主要配件包括&#xff1a;USB Type-C调试线、电源线、主板。 资源下载 开发环境 飞凌提供了制作好的ubuntu18.04的镜像&#xff0c;直接到网盘下载解压即可&#xff0c;VMWare的安装可以参考网上教程&#xff0c;这里不赘述。安装好VMWare后直接打开解压出来的ubu…

OBS 基础 之 使用python自动编译打包OBS项目

目录 一、使用python自动编译OBS项目 1、将VS devenv.exe 加入Path系统环境变量中 2、写编译文件build.py

高性能MySQL实战(一):表结构

大家好&#xff0c;我是 方圆。最近因需求改动新增了一些数据库表&#xff0c;但是在定义表结构时&#xff0c;具体列属性的选择有些不知其所以然&#xff0c;索引的添加也有遗漏和不规范的地方&#xff0c;所以我打算为创建一个高性能表的过程以实战的形式写一个专题&#xff…

IMv1.0

一、背景内容 总结golang基础内容&#xff0c;通过一个实例实时 IM系统简进行总结知识 二、简要的图 简要说明&#xff1a; 1.在server.go中&#xff0c;创建一个Newserver返回server指针的结构体 2.正对这个指针结构体实现两个方法 Handler&#xff08;处理方法&#xff0…

VBA遍历Wrod所有表格每个单元格,单元格未尾两个回车替换

一、遍历 word中遍历所有表格的每个单元格。因为在单元格时会常出错。浪费了不少时间。 Sub a()Dim doc As Document, tb As Table, ce As cellDim rng As Range, p As ParagraphSet doc ActiveDocumentFor Each tb In doc.TablesFor Each ce In tb.Range.Cells 关键处就是这里…

redis入门2-命令

Redis的基本数据类型 redis的基本数据类型&#xff08;value&#xff09;: string,普通字符串 hash&#xff08;哈希&#xff09;,适合存储对象 list(列表),按照插入顺序排序&#xff0c;可以由重复的元素 set(无序集合)&#xff0c;没有重复的元素 sorted set(有序集合)&…

Rust 原生支持龙架构指令集

导读近日&#xff0c;Rust 开源社区发布 1.71.0 版本&#xff0c;实现对龙架构&#xff08;LoongArch&#xff09;指令集的原生支持。 龙架构操作系统发行版和开发者可基于上游社区源代码构建或直接下载 Rust 开源社区发布的龙架构二进制版本。Rust 开发者将在龙架构平台上获得…

设计模式——原型模式

原型模式就是有时我们需要多个类的实例&#xff0c;但是一个个创建&#xff0c;然后初始化&#xff0c;这样太麻烦了&#xff0c;此时可以使用克隆&#xff0c;来创建出克隆对象&#xff0c;就能大大的提高效率。具体就是要让此类实现Cloneable接口&#xff0c;然后重写Object类…

题解 | #M.Writing Books# 2023牛客暑期多校7

M.Writing Books 签到 题目大意 给定一个正整数 n n n &#xff0c;求 1 1 1 ~ n n n 共有多少位数字 解题思路 1 1 1 ~ 9 9 9 共 9 1 0 0 1 9\times 10^0 \times 1 91001 位&#xff1b; 10 10 10 ~ 99 99 99 共 9 1 0 1 2 9\times 10^1 \times 2 91012 位&am…

【枚举】CF1706 C

有人一道1400写了一个小时 Problem - C - Codeforces 题意&#xff1a; 思路&#xff1a; 首先先去观察样例&#xff1a; 很显然&#xff0c;对于n是奇数的情况&#xff0c;只有一种情况&#xff0c;直接操作偶数位就好了 主要是没搞清楚n是偶数的情况 其实有个小技巧&…

深入理解高并发编程 - 线程的执行顺序

1、线程的执行顺序是不确定的 在Java中&#xff0c;线程的执行顺序是由操作系统的调度机制决定的&#xff0c;具体顺序是不确定的&#xff0c;取决于多个因素&#xff0c;如操作系统的调度策略、线程的优先级、线程的状态转换等。因此&#xff0c;不能对线程的执行顺序做出可靠…

无涯教程-Perl - delete函数

描述 此函数从哈希中删除指定的键和关联的值,或从数组中删除指定的元素。该操作适用于单个元素或切片。 语法 以下是此函数的简单语法- delete LIST返回值 如果键不存在,并且与已删除的哈希键或数组索引关联的值,则此函数返回undef。 Perl 中的 delete函数 - 无涯教程网无…

003-依赖注入、属性赋值源码分析

目录 引入作用代码分析InstantiationAwareBeanPostProcessor#postProcessProperties()AutowiredAnnotationBeanPostProcessor查找注入点元数据给注入点注入属性 引入 之前我们了解到BeanDefinition到Bean&#xff0c;经历了 实例化属性赋值初始化 3个步骤现在详细分析下属性赋…

分组背包问题

题目链接 题意&#xff1a;给出n组物品&#xff0c;每组物品的物品数量不同&#xff0c;要求每组中只能选一件物品&#xff0c;问m容量的最大价值 思路&#xff1a;实际上本题的本质还是01背包&#xff0c;只不过01背包是每一种物品只能选1次&#xff0c;而分组背包是每组物品只…

pdf转图片【java版实现】

一、引入依赖 引入需要导入到项目中的依赖&#xff0c;如下所示&#xff1a; <!-- pdf转图片 --><dependency><groupId>net.sf.cssbox</groupId><artifactId>pdf2dom</artifactId><version>1.7</version></dependency>…

FreeRTOS(vTaskList与vTaskGetRunTimeStats)

目录 1、Cube配置 ①配置SYS ②配置TIM3 ③配置USART2 ④配置FreeRTOS ⑤配置中断优先级 2、代码添加改动 ①在main函数合适位置开启TIM3中断 ②修改HAL_TIM_PeriodElapsedCallback函数 ③完善两个相关函数 ④vTaskList与vTaskGetRunTimeStats的使用 vTaskList&#xff…

p7付费课程笔记6:CMS GC

目录 前言 工作步骤 缺点 问题 前言 上一章节我们讲了串/并行GC&#xff0c;这一章节说下CMS GC。看前思考一个问题&#xff0c;并行GC与CMS GC的区别在哪里。 什么是CMS收集器 CMS(Concurrent Mark-Sweep)是以牺牲吞吐量为代价来获得最短回收停顿时间的垃圾回收器。对于…

数据库索引的使用

1、MySQL的基本架构 架构图 左边的client可以看成是客户端&#xff0c;客户端有很多&#xff0c;像我们经常你使用的CMD黑窗口&#xff0c;像我们经常用于学习的WorkBench&#xff0c;像企业经常使用的Navicat工具&#xff0c;它们都是一个客户端。右边的这一大堆都可以看成是…

【C++从0到王者】第十六站:stack和queue的使用

文章目录 一、stack的使用1.stack的介绍2.stack的使用 二、queue的使用1.queue的护额晒2.queue的使用 三、stack和queue相关算法题1.最小栈2.栈的压入、弹出序列3.逆波兰表达式4.两个栈实现一个队列5.用两个队列实现栈6.二叉树的层序遍历1.双队列2.用一个变量levelSize去控制 7…

不要在循环中操作数据库(案例)

各位在写代码的时候千万不要在循环中对数据库进行操作,这样会大大降低数据库的性能,今天在写接口的时候碰到了这种情况,被组长说了一下,于是改了改,代码奉上: Overridepublic List<ScrInspectionVo> selectByMcId(String id) {List<ScrInspectionVo> inspectionVos…