SQL Injection - Blind (WS/SOAP)

本期演示的是盲注的手法。有些网站在与数据库交互的地方进行了很好的修饰,将报错的语句进行修改,即使你找到了注入点也无法下手拿数据,这个时候我们的步骤就比较麻烦了,我们只能通过对错的方式进行盲注(如下演示)

首先我们看一眼这是一个正常的显示页面。

加了一个点后也有不一样的地方。。。。。。。。 电影票的数字没了。。。

Sql的系统语句错误也被很好的掩盖掉了。我们再加一个注释看看

又输入了一个注释符后页面又恢复了正常。说明这个地方仍旧有漏洞(这就是下面要演示的另一个手法——盲注。)

我们加了一个or 的语句让它与后面的select user()不冲突,并将语句故意输错误的和正确的。看看页面有什么异常,据上方的显示结果来看返回的页面是又改变这的说明语句在后台确实是执行了的。

这个时候我们就要将我们的语句进行一个转变了大致思路如下:

  1. 先将我们的注入语句完整的写上。
  2. 将我们要查的语句的返回结果转成字符串。
  3. 截取字符串的所有字符
  4. 将每个字符转成ascii码然后通过比大小确认字符

其中要用到如下方法:

Substr((sql),x,y)     //(sql)内添加查询语句就可以将返回的结果转成字符将这一串的字符以第x个开始向下截取y个。

Ascii() //该方法是将字符所对应的ascii码转换一下并显示出来。

具体如下示例:

上面的语句简单的说一下吧: select user()的结果用substr()将字符串的第一个字符开始向下截取一个,然后用ascii()方法转成ascii码再一一的比对

比如:

(ascii(substr((select user()),2,1))>90)

//这个ascii的值否大于90 如果正确则应该显示53的那个数反之就是错误的,然后在 尝试(ascii(substr((select user()),2,1))=>100) 正确则显示53的那个数反之就是错误 以此 类推逐渐缩小范围。最终确定那个数。

Ascii的值我们可以看一下 在数据库中数据库是识别ascii的也可以一一的查出来。

或者百度一下我们可以拿张表看一下

我们将这些最终判定的结果依次记下来(如上图)这样我们就可以通过ascii码拿到数据了。

这样用户就出来了 一般找到注入点后最先想到的方法就是找显示位然后用联合查询。像这样一个一个的试这样的拿数据方式就是盲注了。这样的做的方法比较麻烦效率也比较低,后面有效率较高的方法,这个回头再讲,以上就是本次演示的内容。

webgote的例子(6)SQL注入(盲注)的更多相关文章

  1. SQL注入--盲注及报错注入

    盲注查询 盲注其实就是没有回显,不能直观地得到结果来调整注入数据,只能通过其他方式来得到是否注入成功,主要是利用了一些数据库内置函数来达到的 布尔盲注 布尔很明显Ture跟Fales,也就是说它只会根 ...

  2. 关于sql注入盲注,谈谈自己的心得

    1.没做防御的站点,拿上sqlmap直接怼就行了. 2.做了防御,有的用函数过滤了,有的用了waf(比如安全狗,云锁,华为云waf,360waf,知道创宇盾,护卫神等等) 这些就相当麻烦了,首先要探测 ...

  3. SQL注入----盲注总结

    参考文章:https://mp.weixin.qq.com/s?__biz=MzIzMTc1MjExOQ==&mid=2247490388&idx=1&sn=c677837d7 ...

  4. 防sql注入 盲注等措施 ESAPI的使用

    SQL注入往往是在程序员编写包含用户输入的动态数据库查询时产生的,但其实防范SQL注入的方法非常简单.程序员只要a)不再写动态查询,或b)防止用户输入包含能够破坏查询逻辑的恶意SQL语句,就能够防范S ...

  5. SQL注入 盲注

    来源:http://www.cnblogs.com/cheatlove/articles/384233.html SQL注入攻击: (1) 脚本注入式的攻击(2) 恶意用户输入用来影响被执行的SQL脚 ...

  6. 动态调试|Maccms SQL 注入分析(附注入盲注脚本)

    0x01 前言 已经有一周没发表文章了,一个朋友叫我研究maccms的代码审计,碰到这个注入的漏洞挺有趣的,就在此写一篇分析文. 0x02 环境 Web: phpstudySystem: Window ...

  7. SQL注入--显注和盲注中过滤逗号绕过

    SQL注入逗号绕过 1.联合查询显注绕过逗号 在联合查询时使用 UNION SELECT 1,2,3,4,5,6,7..n 这样的格式爆显示位,语句中包含了多个逗号,如果有WAF拦截了逗号时,我们的联 ...

  8. sql bool盲注

    [CISCN2019 总决赛 Day2 Web1]Easyweb 考察: robots.txt image.php?bak文件泄露,image.php.bak可以下载别的不大行 盲注 php日志挂马 ...

  9. SQL注入 手注与联合注入

    SQL注入,吧sql命令插入到WEB表单,或输入域名或页面亲求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令:            得到数据库用户名和密码 1:在以,{ .asp?id=32( ...

  10. sql布尔盲注和时间盲注的二分脚本

    布尔盲注: import requests url = "http://challenge-f0b629835417963e.sandbox.ctfhub.com:10080/" ...

随机推荐

  1. mysql 、慢查询、到底如何玩

    在项目开发中,那些开发大佬经常会写出一些SQL语句,一条糟糕的SQL语句可能让你测试的整个程序都非常慢,超过10秒的话,我觉得一般用户就会选择关闭网页,如何优化SQL语句将那些运行时间 比较长的SQL ...

  2. UVA12585_Poker End Games

    题目是这样的,每个人手中有a和b的钱数,c为a和b中间最小的一个. 每个回合,两个人胜利的概率都是0.5,胜利者从失败者手中获得c的钱数. 如果有一个人手中没钱的话,那么他就failer,游戏结束. ...

  3. Python网络编程socket

    网络编程之socket 看到本篇文章的题目是不是很疑惑,what is this?,不要着急,但是记住一说网络编程,你就想socket,socket是实现网络编程的工具,那么什么是socket,什么是 ...

  4. 【二】shiro入门 之 身份验证

    大体步骤如下: 1.首先通过new IniSecurityManagerFactory 并指定一个ini 配置文件来创建一个SecurityManager工厂: 2.接着获取SecurityManag ...

  5. P3469 [POI2008]BLO-Blockade

    题意翻译 在Byteotia有n个城镇. 一些城镇之间由无向边连接. 在城镇外没有十字路口,尽管可能有桥,隧道或者高架公路(反正不考虑这些).每两个城镇之间至多只有一条直接连接的道路.人们可以从任意一 ...

  6. 【hdu6093】Rikka with Number

    多校第五場的題. 首先是一個好數只在某個進制下,不會是在兩個進制下都爲好數. 另外每個進制好數的個數爲d!-(d-1)!,因爲要保證第一位不爲0. 然後就是在臨界進制下有多少個好數的問題,可以變成兩個 ...

  7. 【MediaElement】WPF视频播放器【1】

    一.前言       前两天上峰要求做一个软件使用向导,使用WPF制作.这不,这两天从一张白纸开始学起,做一个播放演示视频的使用向导.以下是粗设计的原型代码: 二.效果图 三.代码 前台代码: < ...

  8. 【BZOJ4945】【NOI2017】游戏(搜索,2-sat)

    [NOI2017]游戏(搜索,2-sat) 题面 BZOJ的SPJ是假的 兹磁洛谷 题解 如果没有\(x\)地图的影响 这就是一个裸的\(2-sat\)问题 但是现在有不超过\(8\)个\(x\)地图 ...

  9. c语言中,指针加1的情况.指针变量详细介绍

    指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址. 要搞清一个指针需要搞清指针的四方面的内容: 指针的类型, 指针所指向的 类型, 指针的值或者叫指针所指向的内存区, 还有指针本身所占 ...

  10. STL源码分析-string

    http://note.youdao.com/noteshare?id=c9b53b7d3379939aae7c05d1ea141a42