当前位置:网站首页>绕过正则实现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去掉
边栏推荐
猜你喜欢
随机推荐
Camera Hal(Hal3)层修改Preview流
[ROS](01)创建ROS工作空间
C语言一级指针(补)
Unit 8 Middleware
Introduction and use of Haystack
Unit 13 Mixing in View Base Classes
Unit 10 Continuous Tuning
8580 合并链表
【ROS】编译软件包packages遇到进度缓慢或卡死,使用swap
HBuilderX 核心插件安装提示:“插件XXX下载失败,请检查网络”问题的解决办法
[ROS](05)ROS通信 —— 节点,Nodes & Master
Unit 14 Viewsets and Routing
yolov5,yolov4,yolov3乱七八糟的
跑跑yolov5吧
Deep learning framework pytorch rapid development and actual combat chapter4
[ROS](04)package.xml详解
[ROS] (02) Create & compile ROS package Package
verilog学习|《Verilog数字系统设计教程》夏宇闻 第三版思考题答案(第十一章)
C语言待解决
ThinkPHP5.0内置分页函数Paginate无法获取POST页数问题的解决办法