这个注入挺特殊的,是ip头注入。我们进行简单的探测:

首先正常发起一次请求,我们发现content-type是76

    

探测注入我习惯性的一个单引号:

一个单引号我发现长度还是76

  

我开始尝试单引号,双引号一起:

我失败了长度还是76

  

一般sql注入输入单引号一般长度都会有些变化。

  我记录深入探测,我输入'--%20

  

返回了200,并且长度是0,这让我产生了一丝好奇。这里很有可能存在注入哦。

  我继续探测:

  输入--%20

  

嘶!我不禁开始怀疑这里是不是本身就不存在安全问题呢?

  我都感觉像是数字类型了,很显然不是。。因为假设是数字类型注入输入'--%20会报错。

  那么究竟是什么问题呢?我觉得应该是过滤了注释符。过滤了--%20

  我开始换一种方式进行探测:

      我尝试输入'%20and%20'1'='1

  

返回200,长度为空,并且没有报false的提示,我觉得有戏,我尝试输入'%20and%20'1'='2

  

输出都一样。。。太坑了吧,这里我猜测可能过滤了and,也有可能过滤了空格

我们先把空格用+代替显示:

输入:'+and+'1'='1

  

返回长度还是76,继续输入:

'+and+'1'='2

没任何变化。好了+号测试了不行,我们试试还有啥方法可以代替空格?

输入'/**/and/**/'1'/**/=/**/'1:

返回长度76,继续输入:

'/**/and/**/'1'/**/=/**/'2

返回长度还是76。。没任何变化。

现在测试了三种方法,那么这里继续推测1.可能过滤了and 2.可能过滤了=号

基于这两种过滤,我开始尝试把and 替换成or,把=替换成/**/

  再进行输入新的payload:

'/**/or/**/'1'/**/like/**/'1

oh!我感觉我有希望了,他终于返回了不一样的结果,接下来继续探测:

输入:'/**/or/**/'1'/**/like/**/'2

返回长度76,至此我可以很确认这是个sql注入。

现在我们在理清下思路:

  1.使用like代替=

  2.使用/**/代替空格

  3.使用or代替and

  然后我们构造如下payload进行探测数据库user:

    '/***/OR/****/1/****/like/****/case/****/when/****/substr(user,1,1)/**/Like/***/'a'/**/then/**/1/****/else/****/exp(1111)/**/end/***/and/**/ '1'='1

    成功遍历出数据库第一位是J:

    

然后我们依次往下遍历就是了就能得到完整的user内容。

简单的演示下整个注入的过程。

这次遇到的注入让我知道了,坚持就是胜利!

记录一次Oracle注入绕waf的更多相关文章

  1. 一次简单的SQL注入绕WAF

    本人也是小白一枚,大佬请绕过,这个其实是六月份的时候做的,那时候想多点实战经验,就直接用谷歌搜索找了一些网站,这个是其中一个 1.目标网站 2.发现有WAF防护 3.判断存在注入 4.猜测了一下闭合为 ...

  2. WEB安全番外第五篇--关于使用通配符进行OS命令注入绕WAF

    一.通配符简介: 一般来讲,通配符包含*和?,都是英文符号,*用来匹配任意个任意字符,?用来匹配一个任意字符. 举个例子使用通配符查看文件,可以很名下看到打卡的文件是/etc/resolv.conf: ...

  3. SQL注入绕WAF总结

    0x00 前言 在服务器客户端领域,曾经出现过一款360主机卫士,目前已停止更新和维护,官网都打不开了,但服务器中依然经常可以看到它的身影.从半年前的测试虚拟机里面,翻出了360主机卫士Apache版 ...

  4. BUUCTF-[网鼎杯 2018]Fakebook(SSRF+联合注入绕Waf)

    记一道SSRF配合SQL注入的题. 喜欢在做题之前扫一下网站的目录,扫到了robots.txt文件可以访问,拿到user.php.bak的源码.同时还有flag.php. <?php class ...

  5. SQL注入绕过waf的一万种姿势

      绕过waf分类: 白盒绕过: 针对代码审计,有的waf采用代码的方式,编写过滤函数,如下blacklist()函数所示: 1 ........ 2 3 $id=$_GET['id']; 4 5 $ ...

  6. 绕WAF常见思路整理(一)

    最*被*台的一些事情搞得心态有点崩,很久没写文了 *期想整理一下常见的各种操作中绕过WAF的思路与免杀的思路(这部分之前没整理完以后有机会再说),受限于个人水*因素所以一定是不完全的,而且在WAF日新 ...

  7. 绕WAF&安全狗新姿势

    俗话说只要思路宽,绕狗绕的欢.前段时间我有尝试着用以下的方法绕狗,效果还不错.不过这方法呢也许这段时间可以绕过,过段时间可能就失效了,大家还是要多去尝试找到更多的方法. 举例-->整型注入 绕过 ...

  8. Burpsuit分块传输插件绕WAF原理和技巧(转)

      0x00 原理 给服务器发送payload数据包,使得waf无法识别出payload,当apache,tomcat等web容器能正常解析其内容.如图一所示 0x02  实验环境 本机win10+x ...

  9. 【ORACLE】记录通过执行Oracle的执行计划查询SQL脚本中的效率问题

    记录通过执行Oracle的执行计划查询SQL脚本中的效率问题   问题现象: STARiBOSS5.8.1R2版本中,河北对帐JOB执行时,无法生成发票对帐文件.   首先,Quartz表达式培植的启 ...

随机推荐

  1. [Android framework学习] ViewGroup的addView函数分析

    博客首页:http://www.cnblogs.com/kezhuang/p/ Android中整个的View的组装是采用组合模式. ViewGroup就相当与树根,各种Layout就相当于枝干,各种 ...

  2. (办公)TOKEN

    token就是HTTP认证,输入正确的token,在放在Authorization header中发送给服务器,认证成功.,就可以正确的拿到接口数据. 举个例子: 第一步:  客户端发送http re ...

  3. 使用 Browser-solidity 在 Go-Ethereum1.7.2 上进行简单的智能合约部署

    目录 目录 1.基本概念 1.1.什么是智能合约? 1.2.什么是Solidity? 1.2.1.Solidity的语言特性 1.3.什么是 Browser-solidity? 2.Browser-s ...

  4. Extjs 解决grid分页bug问题

    //从后端获取数据加载到grid中var mainStore = new HeJsonStore({ url:'xxx', autoLoad:true, pageSize:20 }) //此方法最好放 ...

  5. 一个Web项目中实现多个数据库存储数据并相互切换用过吗?

    最近公司一个项目需要连接多个数据库(A和B)操作,根据不同的业务模块查询不同的数据库,因此需要改造下之前的spring-mybatis.xml配置文件以及jdbc.properties配置文件,项目后 ...

  6. DecimalFormat格式化十进制数字

    DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字.该类设计有各种功能,使其能够分析和格式化任意语言环境中的数,包括对西方语言.阿拉伯语和印度语数字的支持. ...

  7. JavaScript-创建日志调试对象(面向对象实例)

    参考自http://www.2cto.com/kf/201312/261990.html IC.js文件 自己封装的js类库 /** * * @authors Your Name (you@examp ...

  8. PHP奇淫技巧

    https://www.jb51.net/list/list_67_1.htm PHP技巧:https://www.jb51.net/list/list_67_13.htm mysql三范式 1NF: ...

  9. linux下 启动node 和关闭node

    1.用forever  进行管理 npm install -g forever forever start app.js //启动 forever stop app.js //关闭 2.用自带的服务n ...

  10. ubuntu添加普通用户,并解决远程登录

    创建普通用户 # 创建用户,并指定用户目录,加入用户组sudo useradd username -d /home/username -m #设置密码 sudo passwd username #给用 ...