当前位置:网站首页>绕过正则实现SQL注入
绕过正则实现SQL注入
2022-08-02 14:03:00 【H2223】

%27是' %20是空格 --+是为了将后面的代码注释掉
首先使用order by 来查看有多少列
?id=1%27%20order%20by%204--+ 发现4报错了,改成3后就恢复了,说明有3列
联合查询1,2,3
?id=-1%27%20union%20select%201,2,3--+

发现数据出在2,3上了
只要输入查询语句就可以获得所有数据

但在php文件中加入过滤正则
if (preg_match('/select\b[\s\S]*\bfrom/is',$id)){
die('sql injection');
}
被正则表达式捕获了

该正则表达式匹配了select后与form前的单词边界,select和from中间的所有字符
但sql注入要查询数据必须要有select与from,想要绕过正则表达式就要select后或form前有字符

这样是匹配不上了,但是SQL语法也错了
mysql是支持科学计数法的(1e1)


这样既可以绕开正则又不会语法错误
注意1e1会让表格多一列,所以要把3去掉
边栏推荐
猜你喜欢

MobileNet ShuffleNet & yolov5 replace backbone

Deep learning framework pytorch rapid development and actual combat chapter3

8580 Merge linked list
ROS通信 —— 节点,Nodes & Master](/img/f5/c541259b69a0db3dc15a61e87f0415.png)
[ROS](05)ROS通信 —— 节点,Nodes & Master

Unit 14 Viewsets and Routing

C语言日记 1“Hello world“

(ROS) (03) CMakeLists. TXT, rounding

Unit 11 Serializers

MarkDown语法汇总

云GPU(恒源云)训练的具体操作流程
随机推荐
什么是闭包?闭包的作用?闭包的应用?有什么缺点?
【Camera2】由Camera2 特性想到的有关MED(多场景设备互动)的场景Idea
ng-style:动态控制样式
STM32(F407)—— 堆栈
8576 Basic operations of sequential linear tables
加减法运算及其溢出处理
C语言日记 1“Hello world“
函数递归和动态内存初识
paddle window10环境下使用conda安装
鼠标右键菜单栏太长如何减少
C语言初级—常见问题(100~200素数,计算1+11+111+...,从键盘获取一个数并输出有几个位)
YOLOv7使用云GPU训练自己的数据集
C语言——一级指针初识
Network pruning (1)
宏定义问题记录day2
MarkDown syntax summary
redis delay queue
Steps to connect the virtual machine with xshell_establish a network connection between the host and the vm virtual machine
[ROS] The software package of the industrial computer does not compile
Visual Studio配置OpenCV之后,提示:#include<opencv2/opencv.hpp>无法打开源文件