sql注入

寻找SQL注入:

1、借推理进行测试

2、数据库错误

3、应用程序的响应

4、SQL的盲注

确认SQL注入

1、区分数字和字符串

2、内联SQL注入

3、终止式SQL注入

4、时间延迟

利用SQL注入

1、识别数据库  {1、盲跟踪,2、非盲跟踪}

2、使用UNION语句提取数据   {1、匹配列,2、匹配类型}

3、使用条件语句{1、基于时间,2、基于错误,3、基于内容,4、处理字符串,5、扩展攻击,6、利用SQL注入错误}

4、枚举数据库模式

5、在INSERT查询中实施注入{1、插入用户规定的数据,2、生成INSERT错误,3、其它情形}

6、提升权限

7、窃取哈希口令

8、带外通信

9、自动利用SQL注入,sqlmap,Bobcat,BSQL等工具

SQL盲注利用

1、寻找并确认SQL盲注{1、强制产生通用错误,2、注入带副作用的查询,3、拆分与平衡,4、常见的SQL盲注场景,5、SQL盲注技术}

2、使用基于时间的技术  延迟数据库的查询

3、使用基于响应的技术

4、使用非主流通道  {1、数据库连接2、DNS渗漏,3、e-mail渗漏,4、HTTP渗漏,5、ICMP渗漏}

5、自动利用SQL盲注  Absinthe,BSQL Hacker,SQLBrute,sqlmap,sqlnijia,Squeeza

避开输入过滤器

1、使用大小写变种

2、使用SQL注释

3、使用URL编码

4、使用动态查询执行

5、使用空字节

6、嵌套剥离后的表达式

7、利用截断

8、避开自定义过滤器

9、使用非标准入口点

利用二阶SQL注入    

客户端SQL注入漏洞{1、访问本地数据库,2、攻击客户端数据库}    

使用混合攻击{1、利用捕获的数据,2、创建跨站的脚本,3、在Oracle上运行操作系统命令,4、利用验证过的漏洞}

posted @ 2017-12-26 16:07  时空-  阅读(329)  评论(0编辑  收藏  举报