Union语句的构建
万能列类型:大部分数据库中NULL可兼容任何类型的数据,所有可使用NULL匹配数据表的列类型
确定列数量:使用union select null,null,null,…,null...from dual逐步增加null数量,直到匹配原语句的列数量,成功匹配后返回正常页面
使用order by 确原语句列数量, 可使用折半查找法提高猜测效率
确定列类型:Union select 1,’...id=12/is_srvrolemember('sysadmin')
• 返回正常页面,判断成立
• 返回错误页面,判断失败
(5) 按报错错误分类数据库注入
要成功的发动SQL注入攻击,最重要的是知道应用正在使用的...黑盒的测试:
我觉得查询SELECT型的注入很容易被发现,其实可以多考虑考虑insert update里的注入点发现,关系型数据库里,结合这个接口的功能,提交的返回值对比,response code 5xx...0x04 SQL监测和防御这类漏洞
最好的防御,是内部先发现做策略,开发时过滤特殊字符: 单引号、双引号、斜杠、反斜杠、冒号、 空字符等的字符 ;
过滤的对象: 用户的输入 | 提交的URL请求中的参数部分