- 98
- 0
- 约1.89万字
- 约 43页
- 2018-06-27 发布于上海
- 举报
SQL注入渗透测试框架分两大模块,左边模块是注入漏洞探测阶段,右边是SQL注入利用阶段。左边的模块覆盖Web应用程序的所有可测试点并对可测试点进行探测,确定每一个可测试点是否是一个可注入点,发现可注入点以后,再探测清楚数据库的基本信息。获取的信息为右边的漏洞利用提供依据,左边模块从左到右是一个探测过程。右边模块是在左边模块的基础上发起的实际攻击,每一个攻击都为完成不同的目的,各自独立。从这个框架中我们能清楚的了解SQL注入漏洞的探测阶段才是渗透测试的重点,无论对攻击者还是渗透测试人员都是如此,发现了漏洞才能利用漏洞。 当然可测试点远不止这几种,http请求报文头中的任何消息报头的值都可以作为可测试点,如Referer消息报头等,但通常情况下我们只需要考虑常见的那三种可测试点即可(因为请求消息报头一般不会被应用程序用于操作数据库) 1.依据SQL语法错误判定通常指的就是单引号测试,单引号是SQL语句字符串的闭合符号,如果在SQL语句中多了或少了一个单引号就会出现语法错误,根据此语法错误就可以判定应用程序SQL语句存在拼串行为,也即存在SQL注入漏洞。 2.依据SQL语句执行的差异判定最经典就是“and 1=1”与“and 1=2”测试。“and”在SQL语句中是“逻辑与”的意思,“1=1”是永真,“1=2”是永假,所以如果这两条探测语句得以执行,应用程序返回的页面是存在差异的,也正
原创力文档

文档评论(0)