ホームページ  >  記事  >  データベース  >  MSSQL2000安全设置图文教程

MSSQL2000安全设置图文教程

WBOY
WBOYオリジナル
2016-06-07 18:01:46925ブラウズ

Sql server 2000下建立独立帐号数据库方法来实现安全设置,目的是为了就是黑客得到mssql的sa密码,也只是低级的权限,不能进行超级管理员才有的权限。

MSSQL2000

Sql server 2000建立独立帐号数据库方法

首先我们启动Sql server 2000数据库,并打开企业管理器连接我们使用的数据库并找到数据库选项,在上面点击 鼠标右键选择新建数据库如下图所示。建立数据库时可以在数据文件,和事件日志中设置数据文件的物理存放位置

然后我们在安全性中找登录项,在上面点击鼠标右键如下图所示。我们将他的默认数据库设置为我们刚刚建立的数据库。如果 系统为英文请将sql server的字符集设置为Chinese_PRC_CI_AS。

然后再将这个帐号映射到数据库中,以限定数据库帐号的范围。


警告:我们不要给数据库分配服务器角色,只需要如图所示赋予public,db_owner。

到这数据库就建立完成了,记住您设置的帐号和密码并填写在程序配置文件中。存储过程有安全问题,全部复制到"SQL查询分析器" 点击菜单上的--"查询"--"执行",就会将有安全问题的SQL过程删除
代码如下:
use master
EXEC sp_dropextendedproc 'xp_cmdshell'
EXEC sp_dropextendedproc 'Sp_OACreate'
EXEC sp_dropextendedproc 'Sp_OADestroy'
EXEC sp_dropextendedproc 'Sp_OAGetErrorInfo'
EXEC sp_dropextendedproc 'Sp_OAGetProperty'
EXEC sp_dropextendedproc 'Sp_OAMethod'
EXEC sp_dropextendedproc 'Sp_OASetProperty'
EXEC sp_dropextendedproc 'Sp_OAStop'
EXEC sp_dropextendedproc 'Xp_regaddmultistring'
EXEC sp_dropextendedproc 'Xp_regdeletekey'
EXEC sp_dropextendedproc 'Xp_regdeletevalue'
EXEC sp_dropextendedproc 'Xp_regenumvalues'
EXEC sp_dropextendedproc 'Xp_regread'
EXEC sp_dropextendedproc 'Xp_regremovemultistring'
EXEC sp_dropextendedproc 'Xp_regwrite'
drop procedure sp_makewebtask

更改默认SA空密码.数据库链接不要使用SA帐户.单数据库单独设使用帐户.只给public和db_owner权限.数据库的自动备份点击“开始”中的“程序”,点击“Microsorft SQL Server”打开“企业管理器”,并打开如图所示的界面,鼠标右击“zbintel117_all”,选“所有任务”,再选“维护计划”。

如果点击“完成”按钮,出现下图界面,说明SQL Server Agent服务停止,应该启用SQL Server Agent服务。

启用“SQL Server Agent”服务


代码如下:
下面内容来自网络仅作为参考,其中
exec sp_dropextendedproc 'Xp_regdelete'
exec sp_dropextendedproc 'Xp_regenums'
内容与上文不同,实际使用以上文为准。
命令删除SQL的扩展

use master
exec sp_dropextendedproc 'xp_cmdshell'
exec sp_dropextendedproc 'xp_dirtree'
exec sp_dropextendedproc 'xp_enumgroups'
exec sp_dropextendedproc 'xp_fixeddrives'
exec sp_dropextendedproc 'xp_loginconfig'
exec sp_dropextendedproc 'xp_enumerrorlogs'
exec sp_dropextendedproc 'xp_getfiledetails'
exec sp_dropextendedproc 'Sp_OACreate'
exec sp_dropextendedproc 'Sp_OADestroy'
exec sp_dropextendedproc 'Sp_OAGetErrorInfo'
exec sp_dropextendedproc 'Sp_OAGetProperty'
exec sp_dropextendedproc 'Sp_OAMethod'
exec sp_dropextendedproc 'Sp_OASetProperty'
exec sp_dropextendedproc 'Sp_OAStop'
exec sp_dropextendedproc 'Xp_regaddmultistring'
exec sp_dropextendedproc 'Xp_regdeletekey'
exec sp_dropextendedproc 'Xp_regdelete'
exec sp_dropextendedproc 'Xp_regenums'
exec sp_dropextendedproc 'Xp_regread'
exec sp_dropextendedproc 'Xp_regremovemultistring'
exec sp_dropextendedproc 'Xp_regwrite'
drop procedure sp_makewebtask
go

恢复扩展存储过程,执行以下语句。
至于sp_makewebtask 这个存储过程你可以从别人那拷贝过来一个脚本,
执行以后生成的存储过程一样可以用。

use master
exec sp_addextendedproc xp_cmdshell,'xp_cmdshell.dll'
exec sp_addextendedproc xp_dirtree,'xpstar.dll'
exec sp_addextendedproc xp_enumgroups,'xplog70.dll'
exec sp_addextendedproc xp_fixeddrives,'xpstar.dll'
exec sp_addextendedproc xp_loginconfig,'xplog70.dll'
exec sp_addextendedproc xp_enumerrorlogs,'xpstar.dll'
exec sp_addextendedproc xp_getfiledetails,'xpstar.dll'
exec sp_addextendedproc sp_OACreate,'odsole70.dll'
exec sp_addextendedproc sp_OADestroy,'odsole70.dll'
exec sp_addextendedproc sp_OAGetErrorInfo,'odsole70.dll'
exec sp_addextendedproc sp_OAGetProperty,'odsole70.dll'
exec sp_addextendedproc sp_OAMethod,'odsole70.dll'
exec sp_addextendedproc sp_OASetProperty,'odsole70.dll'
exec sp_addextendedproc sp_OAStop,'odsole70.dll'
exec sp_addextendedproc xp_regaddmultistring,'xpstar.dll'
exec sp_addextendedproc xp_regdeletekey,'xpstar.dll'
exec sp_addextendedproc xp_regdelete,'xpstar.dll'
exec sp_addextendedproc xp_regenums,'xpstar.dll'
exec sp_addextendedproc xp_regread,'xpstar.dll'
exec sp_addextendedproc xp_regremovemultistring,'xpstar.dll'
exec sp_addextendedproc xp_regwrite,'xpstar.dll'

以上语句是自动生成的。
感兴趣你可以看一下以下语句,上边的语句就是这么生成的。
由于我机器上的扩展存储过程没有drop掉,所以可以生成上边的语句。

create table #temp( name varchar(100),dll varchar(100))

truncate table #temp

insert into #temp
exec sp_helpextendedproc 'xp_cmdshell'
insert into #temp
exec sp_helpextendedproc 'xp_dirtree'
insert into #temp
exec sp_helpextendedproc 'xp_enumgroups'
insert into #temp
exec sp_helpextendedproc 'xp_fixeddrives'
insert into #temp
exec sp_helpextendedproc 'xp_loginconfig'
insert into #temp
exec sp_helpextendedproc 'xp_enumerrorlogs'
insert into #temp
exec sp_helpextendedproc 'xp_getfiledetails'
insert into #temp
exec sp_helpextendedproc 'Sp_OACreate'
insert into #temp
exec sp_helpextendedproc 'Sp_OADestroy'
insert into #temp
exec sp_helpextendedproc 'Sp_OAGetErrorInfo'
insert into #temp
exec sp_helpextendedproc 'Sp_OAGetProperty'
insert into #temp
exec sp_helpextendedproc 'Sp_OAMethod'
insert into #temp
exec sp_helpextendedproc 'Sp_OASetProperty'
insert into #temp
exec sp_helpextendedproc 'Sp_OAStop'
insert into #temp
exec sp_helpextendedproc 'Xp_regaddmultistring'
insert into #temp
exec sp_helpextendedproc 'Xp_regdeletekey'
insert into #temp
exec sp_helpextendedproc 'Xp_regdelete'
insert into #temp
exec sp_helpextendedproc 'Xp_regenums'
insert into #temp
exec sp_helpextendedproc 'Xp_regread'
insert into #temp
exec sp_helpextendedproc 'Xp_regremovemultistring'
insert into #temp
exec sp_helpextendedproc 'Xp_regwrite'

select 'exec sp_addextendedproc '+name+','''+dll+''''
from #temp

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。