在输入帐号的地方执行以下语法便可以加入自订的使用者到资料表中。
'''';INSERT INTO tblUser Values(''''hacker'''',''''hacker'''',10)--
获取字段资料型态若有数据域位格式不对,导致无法加入自订使用者,也可以利用下列语法传回的错误讯息来判读数据域位格式:
''''UNION SELECT ''''abc'''',1,1,1 FROM tblUser --
结果传回如图 4 的错误讯息。图 4:利用错误讯息来判断字段的资料型态。
在这里我们透过 UNION 语法来组合两句 SELECT 查询,第一句 SELECT 语法的第一个字段 UserID 是 int 格式,但对应的第二句 SELECT 语法;第一个字段的资料是 varchar 格式的 ‘abc’,因此出现如图 4 的错误讯息。骇客也由此得知资料表第一个字段的资料型态是 int。有耐心地把一个个字段测试完毕后,便可以得到整个资料表的字段格式。获取会员的帐号密码利用这个技巧,还可以再进一步获取使用者的帐号和密码,例如先以下列语法询问帐号:
''''UNION SELECT UserName,1,1,1 FROM tblUser WHERE UserName>''''a''''--
IIS 回传错误讯息如图 5。图 5:利用错误讯息来取得使用者帐号和密码。
因为传回的记录”Admin”是 nvarchar 格式,而透过 union 对应到原先 int
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>
Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved. 闵涛 E_mail:admin@mintao.net(欢迎提供学习资源)
鄂公网安备 42011102001154号
站长:MinTao ICP备案号:鄂ICP备11006601号-18