科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道SQL Server中存储过程的安全问题(3)

SQL Server中存储过程的安全问题(3)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

首先让我们来了解一下SQLServer中的存储过程。存储过程是存储在SQLServer中的预先写好的SQL语句集合。

作者:王岗 来源:赛迪网 2007年9月13日

关键字: 安全 数据库 SQL Server SQL Server 各版本

  • 评论
  • 分享微博
  • 分享邮件

有了管理员权限,我们使用流光的种植者上传一个可以开3389的bat文件,然后在对方机器运行,bat文件运行后,会使对方机器重新启动,待对方重新启动后,我们就可以用3389连接器连接了,再此不多做介绍。

或许你已经想到了,如果把xplog70.dll删除,扩展存储过程xp_cmdshell就运行不了了,也就不会被别人轻易入侵了。当我们需要的时候再把这个文件拷到C:\Program Files\Microsoft SQL Server\80\Tools\Binn就可以了,xplog70.dll在安装光盘上的位置为X86\BINN。

SQL Server2000还有很多强大的存储过程,还有没有可能别入侵者利用的呢?下面我们来看一下,还有哪些存储过程比较危险:

sp_Msgetversion(这个存储过程返回Microsoft SQL Server的版本号),使用方法:

EXEC master..sp_MSgetversion

更常用的方法获得版本信息(这种方法可以获得更多附加信息),是使用下列语句:

SELECT @@version

xp_dirtree(这个存储过程用来列出对应目录下的文件和文件夹),使用方法(要获得 C:\aaa的文件列表):

EXEC master..xp_dirtree 'C:\aaa'

xp_enumerrorlogs(这个扩展过程返回所有的错误日志和它们的最后更新日期),使用方法:

EXEC master..xp_enumerrorlogs

xp_fixeddrives(这个扩展存储过程很有用,可以列出所有硬盘分区各自的可用空间),使用方法:

EXEC master..xp_fixeddrives

xp_regread(这个扩展存储过程可以读取注册表指定的键里指定的值),使用方法(得到机器名):

DECLARE @test varchar(50)

EXEC master..xp_regread @rootkey='HKEY_LOCAL_MACHINE',

@key='system\controlset001\control\computername\computername',

@value_name='computername',

@value=@test OUTPUT

SELECT @test

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章