关于SQL Server中几个未公布的访问注册表的扩展存储过

2016-01-29 17:02 6 1 收藏

关于SQL Server中几个未公布的访问注册表的扩展存储过,关于SQL Server中几个未公布的访问注册表的扩展存储过

【 tulaoshi.com - SQLServer 】

SQL Server中包含了几个可以访问系统注册表的扩展存储过程.但实际上这几个扩展存储过程是未公开的,从sql server 7.0就有了,
在SQL server 2000中仍然保留,他们以后可能会删除.但是这几个存储过程却提供了在当前的SQL Server版本中访问系统注册表的能力,
而且很多人利用SQL Server来进行攻击系统时,往往都会用到这几个扩展存储过程.所以最好在SQL Server中禁用他们.

xp_regenumvalues 以多个记录集方式返回所有键值
使用方法:
xp_regenumvalues 注册表根键, 子键
比如说,想看看HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun 的所有键值:
use master
exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftWindowsCurrentVersionRun'

xp_regread 返回制定键的值
使用方法:
xp_regread 根键,子键,键值名
use master
exec xp_regread 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftWindowsCurrentVersion','CommonFilesDir'

xp_regwrite 写入注册表
使用方法:
xp_regwrite 根键,子键, 值名, 值类型, 值
use master
exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftWindowsCurrentVersion','TestValueName','reg_sz','hello'
注意值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型

xp_regdeletevalue 删除某个值
使用方法:
xp_regdeletevalue 根键,子键,值名
use master
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftWindowsCurrentVersion','TestValueName'

xp_regdeletekey 删除键,包括该键下所有值

使用方法:
use master
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftWindowsCurrentVersionTestkey'

来源:https://www.tulaoshi.com/n/20160129/1500125.html

延伸阅读
创建带分区的数据表步骤: 1,建立数据库里指定文件组FILEGROUP[分区文件名](NAME=‘’,FILENAME=‘’,SIZE=,MAXSIZE=,FILEGROWTH=) 2,创建分区表函数,可以理解为一个规则。CREATE PARTITION FUNCTION[函数名](用来分区的字段的类型)AS RANGE LEFT FOR VALUES(范围值) 3,创建分区架构,即将分区函数应用到分区...
标签: 电脑入门
Win9X篇 C:WindowsSYSTEM.DAT和C:WindowsUSER.DAT 这2个就是注册表文件 .另外,系统每天启动的第一次都会做一个备份,储存在C:WINDOWSSYSBCKUP下,以rb***.cab命名,在DOS下可以用scanreg /restore还原。 第一次安装完以后,在C盘根目录下还有一个SYSTEM.1ST文件作为第一次启动的备份。 Win2000/XP/NET篇 其中用户配置文件保存在根目录Do...
标签: SQLServer
SQL SERVER 2005中,终于引入了表分区,就是说,当一个表里的数据很多时,可以将其分拆到 多个的表里,大大提高了性能。下面举例子说明之 比如,在C盘下建立如下几个目录 C:Data2Primary C:Data2FG1 C:Data2FG2 C:Data2FG3 C:Data2FG4 其中primary存放的是主数据库文件,其他FG1--FG4存放四个单独的文件组,可以见创立数据库 Data Partition DB...
标签: 电脑入门
注册表虽然是通过各个根键和子键来分类管理各种信息,但具体数据信息还是依靠键值项和键值来实现。在注册表中绝大多数分支或子项中还包含了一个或若干个值项,每个值项又对应于一定数据类型的一组数据,这就是键值项和键值,打开注册表编辑器后,选择一个分支或子项,在注册表编辑器的右侧窗口中显示的就是键值项和键值(如图1)。 图1 细心...
环境:win2k+sqlserver 2K+查询分析器 SQLSERVER服务实例名称:mainserver 需要备份的数据库名称: msdb 本地机器名称(Client端):david 本地用户:zf 密码:123 本地域名:domain 本地提供备份需求的文件夹:e:est 第一步: 建立共享文件夹 在程序代码中调用(或者CMD窗口) net share tes...

经验教程

111

收藏

55
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部