1.没做防御的站点,拿上sqlmap直接怼就行了。

2.做了防御,有的用函数过滤了,有的用了waf(比如安全狗,云锁,华为云waf,360waf,知道创宇盾,护卫神等等)

这些就相当麻烦了,首先要探测出过滤了什么,再去构造sql语句,在本地测试通过后,再一点点完善,最后再去测试目标

举个例子,一个站点过滤了逗号,和单引号,且数据库编码不是GB系列的,这种就不太好操作,个人手工测试,可以猜解出user(),database(),version()这些,但是完全手工也很麻烦,虽然能拿到,但是相当累。这里不用时间盲注的原因是因为,时间盲注本身,直接查询数据库是没有延迟的,但是访问某些网页根据你网络的好坏是有一定延迟的,所以这就很麻烦。

绕过逗号可以用join

语句

select * from (select group_concat(distinct(table_schema)) from information_schema.tables ) a join (select 2 ) b;

语句

select id,username,password from users where id=1 and (ascii(substring(user() from 2))=111);

这里用户名是root@localhost1,查询切片第二个字符的ascii码111对应是o

如果排除网页响应时间的干扰,是可以用时间盲注的,写个脚本跑一下就好了

又如


select * from users where id=1 and (ascii(substring(database() from 1))=115) and  (select sleep(2));

如果数据不存在则会,延迟两秒返回,存在的会秒回

这里也尝试用联合查询,但是限制有点大

这里是用联合查询爆破表名

UNION select case when ascii(substring((select group_concat(distinct(table_schema)) from information_schema.tables) from 1 for 1))=123 then sleep(3) else 0 end;

这里有一个条件语句,如果结果存在则会执行睡眠3秒的操作。但是只能用于联合语句,对于过滤了UNION的就无效了

 

关于sql注入盲注,谈谈自己的心得的更多相关文章

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

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

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

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

  3. SQL注入 盲注

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

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

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

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

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

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

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

  7. sql bool盲注

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

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

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

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

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

随机推荐

  1. CentOS升级kernel

    CentOS升级kernel 升级命令: yum update kernel yum update kernel-devel yum update kernel-firmware yum update ...

  2. nginx deny 封IP

    官方文档地址:http://nginx.org/en/docs/http/ngx_http_access_module.html#deny Syntax: deny address | CIDR | ...

  3. PHP设计模式 - 备忘录模式

    备忘录模式又叫做快照模式(Snapshot)或 Token 模式,备忘录模式的用意是在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样就可以在合适的时候将该对象恢复到原先 ...

  4. linux安装docker,并在docker上运行springboot项目

    docker架构示例图 仓库---> 镜像 --->  容器 一.安装docker 1.通过 uname -r 命令查看你当前的内核版本 uname -r 2使用 root 权限登录 Ce ...

  5. 材质(Material)和几何体(Geometry)

    1.    材质 一个材质结合一个几何体可以组成一个mesh对象.材质就像物体的皮肤,决定了几何体的外表.例如:皮肤定义了一个几何体看起来是否像金属.透明与否,或者显示为线框. 基本的材质如下: 1. ...

  6. 74HC573锁存器应用(附英文手册)

    锁存器(LATCH)概念 锁存器(Latch)是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态. 锁存,就是把信号暂存以维持某种电平状态. 锁存器作用: 缓存 完成高速的控 ...

  7. arm-linux-系列工具,ld,ar,as,objcopy

    ref :http://www.360doc.com/content/14/0509/09/17268421_376009916.shtml 一.编译器相关知识学习 GNU GCC简介: GNU GC ...

  8. 依赖注入 DI 控制反转 IOC 概念 案例 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  9. JDK8源码解析 --- Long 类型

    最近都在看JDK8的源码,想把记录下来与大家一起共享,每天 积累一点,每天成长一点.看了装箱Long类型,有好多以前没有注意到或者不知道的内容,慢慢懂得.废话不多说,直接上代码讲解... 1.缓存区L ...

  10. Java之路---Day09(继承)

    2019-10-23-22:58:23 目录 1.继承 2.区分成员变量重名的方法 3.区分成员方法重名的方法 4.继承中重写与重载的区别 5.继承中覆盖重写的注意事项 6.继承中覆盖重写的设计原则 ...