SQL注入---字符绕过

文章目录

  • 前言
  • 一、pandas是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.读入数据
  • 总结

一.注释符绕过

当网页源代码中出现如下代码后,常见的注释符号将无效,因此需要通过特殊手段进行绕过

$reg = "/#/";
$reg1 = "/--/";
$replace = "";
#若id中提取出的字符中包含reg(#)类型的特殊符号将会被replace类型的符号(空)替换
$id = preg_replace($reg, $replace, $id);
$id = preg_replace($reg1, $replace, $id);

上述代码中无法使用符号(#)或(--+)将后面的sql语句注释,因此需要通过特殊手段将后面多出的单引号闭合

演示案例:

单引号闭合:?id=1' and 1=1 '  括号单引号:?id=1') and 1=1( '

双引号闭合:?id=1'' and 1=1'' 

$sql="SELECT * FROM users WHERE id='id=1' and 1=1 '' LIMIT 0,1";

 二.and 和 or 过滤绕过

过滤源代码

function blacklist($id)
{
#若提取的id中包含or字符,将or替换为空$id= preg_replace('/or/i',"", $id);			$id= preg_replace('/AND/i',"", $id);		return $id;
}注:i:代表无论or/and 是大写还是小写统一转译为小写

 绕过手法

复写过滤字符
?id=1' anandd 1=1--+

三.空格过滤绕过

 过滤代码:

$id= blacklist($id);
$hint=$id;function blacklist($id)
{$id= preg_replace('/or/i',"", $id);			$id= preg_replace('/and/i',"", $id);		$id= preg_replace('/[\/\*]/',"", $id);		$id= preg_replace('/[--]/',"", $id);		$id= preg_replace('/[#]/',"", $id);			$id= preg_replace('/[\s]/',"", $id);		$id= preg_replace('/[\/\\\\]/',"", $id);		return $id;
}

绕过手法:

 在不同的环境中能够绕过的URL编码有所不同,因此需要多次尝试。

演示案例:

未使用URL编码注入前:符号被过滤

http://192.168.100.10/sql/Less-26/index.php?id=1' union select 1,2,3--+;

 使用URL注入编码后

http://192.168.100.10/sql/Less-26/index.php?id=1%A0union%A0select 1,2,3--+;

 

报错注入:

 

 四.逗号过滤绕过


总结

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

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

相关文章

数据安全产品之认识数据脱敏系统

文章目录 一、什么是数据脱敏二、为什么要做数据脱敏三、数据脱敏系统的工作原理四、常见的数据脱敏方法五、数据脱敏系统的主要功能六、数据脱敏系统的部署方式七、数据脱敏与去标识化的关系与区别 随着业务的快速发展,特别是在银行、电信、医疗等行业中&#xff0…

第一个Swift程序

要创建第一个Swift项目,请按照以下步骤操作: 打开Xcode。如果您没有安装Xcode,可以在App Store中下载并安装它。在Xcode的欢迎界面上,选择“Create a new Xcode project”(创建新Xcode项目)。在模板选择界面上,选择“App”(应用程序)。在应用模板选择界面上,选择“Si…

PostgreSQL入门到实战-第九弹

PostgreSQL入门到实战 PostgreSQL数据过滤(二)官网地址PostgreSQL概述PostgreSQL中and操作理论PostgreSQL中and操作实操更新计划 PostgreSQL数据过滤(二) 了解PostgreSQL AND逻辑运算符以及如何使用它来组合多个布尔表达式。 官网地址 声明: 由于操作系统, 版本更新等原因, …

接口自动化测试(python+pytest+requests)

一、选取自动化测试用例 优先级高:先实现业务流程用例、后实现单接口用例功能较稳定的接口优先开展测试用例脚本的实现二、搭建自动化测试环境 核心技术:编程语言:python;测试框架:pytest;接口请求:requests安装/验证requests:命令行终端分别输入 pip install requests / p…

【LAMMPS学习】八、基础知识(1.6) LAMMPS 与其他代码耦合

8. 基础知识 此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语,以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各…

理解 Golang 变量在内存分配中的规则

为什么有些变量在堆中分配、有些却在栈中分配? 我们先看来栈和堆的特点: 简单总结就是: 栈:函数局部变量,小数据 堆:大的局部变量,函数内部产生逃逸的变量,动态分配的数据&#x…

第十四届蓝桥杯大赛软件赛省赛C/C++大学 B 组

第十四届蓝桥杯大赛软件赛省赛C/C大学 B 组 文章目录 第十四届蓝桥杯大赛软件赛省赛C/C大学 B 组1、日期统计2、01串的熵3、冶炼金属4、飞机降落5、接龙数列6、岛屿个数7、子串简写8、整数删除9、景区导游10、砍树 1、日期统计 分析: 本题的意思就是2023年一整年&a…

基于SSM+Jsp+Mysql的超市管理系统

开发语言:Java框架:ssm技术:JSPJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包…

redis string底层为什么使用sds, sds好处?redis 的动态字符串优点?

1. redis 的键值对,都是由对象组成的, 其中键总是一个字符串对象(string object) 而键的value则可以是:“字符串对象”, “列表对象 (list object)”,“哈希对象 (hash o…

算法:树形dp(树状dp)

文章目录 一、树形DP的概念1.基本概念2.解题步骤3.树形DP数据结构 二、典型例题1.LeetCode:337. 打家劫舍 III1.1、定义状态转移方程1.2、参考代码 2.ACWing:285. 没有上司的舞会1.1、定义状态转移方程1.2、拓扑排序参考代码1.3、dfs后序遍历参考代码 一…

【算法刷题 | 二叉树 06】4.10( 路径总和、路径总和 || )

文章目录 13.路径总和13.1问题13.2解法一:递归13.2.1递归思路(1)确定递归函数参数以及返回值(2)确定终止条件(3)确定递归逻辑 13.2.2代码实现 14.路径总和 ||14.1问题14.2解法一:递归…

第四百四十二回 再谈flutter_launcher_icons包

文章目录 1. 概念介绍2. 使用方法3. 示例代码4. 经验与总结4.1 经验分享4.2 内容总结 我们在上一章回中介绍了"overlay_tooltip简介"相关的内容,本章回中将 再谈flutter_launcher_icons包.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 …

Redux和Redux Toolkit

Redux 概念:redux是react最常用的集中状态管理工具,类似于Vue中的Pinia(vuex),可以独立于框架运行作用:通过集中管理的方式管理应用的状态 Redux快速体验 不和任何框架绑定,不使用任何构建工具,使用纯Re…

2024年面试AI编译器岗经验总结

面试经历: 面试中必备的知识: 1.用C++实现一个卷积 (图解)一步一步使用CPP实现深度学习中的卷积 - GiantPandaCVGiantPandaCVhttp://giantpandacv.com/academic/%E7%AE%97%E6%B3%95%E7%A7%91%E6%99%AE/%E5%B0%BD%E8%A7%88%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E…

支小蜜校园刷脸支付系统的优势在哪里?

在当今社会,校园欺凌问题日益受到人们的关注。校园欺凌不仅影响学生的身心健康,还可能导致其产生厌学、逃学甚至报复社会的行为。建立校园防欺凌系统对于学校而言,具有极其重要的意义。本文将详细探讨校园防欺凌系统对学校的好处。 一、保障…

Harmony鸿蒙南向驱动开发-Regulator

Regulator模块用于控制系统中各类设备的电压/电流供应。在嵌入式系统(尤其是手机)中,控制耗电量很重要,直接影响到电池的续航时间。所以,如果系统中某一个模块暂时不需要使用,就可以通过Regulator关闭其电源…

学习笔记:解决拖延

1 解决拖延、减轻压力的关键心态和方法 1.1 要点梳理 拖延是因为自己一直在逃避,重点是要有效突破逃避圈,进入学习圈,扩展成长圈。 毒蛇曲线(见思维导图)中越是临近截止期限,拖延的焦虑越上升&#xff0…

springcloud第4季 使用resilience4j实现服务流量治理

一 前言 1.1 断路器介绍 断路器是一种开关装置,当某个服务单元发生故障后,通过断路器向调用方返回一个符合预期,可处理的备选响应。保证服务不会被长时间,不必要的占用,从而避免在分布式系统故障的蔓延、乃至雪崩。…

onSaveInstanceState()与onRestoreInstanceState()

目录 1.二者作用 2.onSaveInstanceState调用时机 2.1 五种情况 前4种情况Activity生命周期: 2.2 注意事项:确定会被系统回收并销毁,不会调用此方法 两个例子 3.onRestoreInstanceState调用时机 3.1实例——屏幕切换生命周期 3.2 极端…

python爬虫 爬取网页图片

http://t.csdnimg.cn/iQgHw //爬虫爬取图片其实是很简单的,但是大多数同学,可能对 url的设置一直有困惑(这点本人也在研究),而本篇文章,对于想要爬取图片的小白简直是福利。你只需要将文章代码运行即可&am…