基于Burpsuite的安全测试十:输入/输出模块测试
情景1:SQL注入测试
基本概念
- sql注入就是把SQL命令插入web表单提交或输入域名页面请求的查询字符串,最终达到欺骗服务器执行恶意SQL命令的目的。本质就是修改当前查询语句的结构,从而获得额外的信息或执行内容。
- sql注入按照请求类型分为GET型、POST型、Cookie注入型。GET型和POST型区别是由表单的提交方式决定的。
- sql注入测试方法分为报错型、延时型、盲注型、布尔型等。
- sql注入按照数据类型分为数字型、字符型。数字型不用闭合前面的SQL语句,而字符型需要闭合。
- 数字型注入,一般存在于输入的参数为整数的情况,如年龄和ID等。正常访问该页面展示如下图:
在网址的参数后加单引号或者%27,即可在参数后构造SQL语句。由于SQL语句单引号是成对出现的,添加一个单引号则SQL语句是错误的语句,不能被SQL解释器正常解释。访问如果报错则说明SQL语句被执行了,报错信息举例为:Warning:mysqlli_fetch_assoc() excepts parameter 1 to be mysqli_result...。目前测试网站,没有报错,响应正确。由此可以知道这里不存在数字型注入。
- 数字型注入,一般存在于输入的参数为整数的情况,如年龄和ID等。正常访问该页面展示如下图: