文章关键字:|IIS|SQL Server|数据库|安全|ASP|PHP|JSP|
从codered到nimda等,一大堆蠕虫把原来需要人工利用的漏洞都变成了程序自动利用了,大家还想去手工操作这些IIS漏洞么?让我们调整重心,去看看服务器常用的数据库吧。
一般网站都是基于数据库的,特别是ASP、PHP、JSP这样的用数据库来动态显示的网站。很多网站可能多注意的是操作系统的漏洞,但是对数据库和这些脚本的安全总是忽略,也没有太多注意。
从最普遍的脚本问题开始,这些都是老话题了,大家可以参考Hectic写的《关于数据库的简单入侵和无赖破坏,以天融信做例子》,该文章对从SQL脚本问题说得非常详细。对于脚本安全的解决,也可以通过过滤来实现,可以参考我以前写的。对于ASP来说,可以使用下面这个过滤函数:
以下为引用的内容:
Function Filter_SQL(strData)
Dim strFilter
Dim blnFlag
Dim i
strFilter="’,;,//,--,@,_,exec,declare"
blnFlag=Flase
Dim arrayFilter
arrayFilter=Split(strFilter,",")
For i=0 To UBound(arrayFilter)
If Instr(strData,arrayFilter(i))>0 Then
blnFlag=True
Exit For
End If
Next
If blnFlag Then
Response.Redirect "wrong.asp"
Else
Filter_SQL=strData
End If
End Function
对于MS SQL Server数据库来说,安全问题不仅仅局限在脚本上了。“天杀的微软”的系统性很强,整个基于WINDOWS系统的应用都有很强的关联性,对SQL Server来说,基本可以把数据库管理和系统管理等同起来了。SQL Server默认的管理员帐号“sa”的密码是空的,这给多数NT服务器产生一个安全漏洞。小榕的“SQLRCMD”,就能够利用获得的数据库管理员帐号执行系统命令。
在SQL Server中有很多系统存储过程,有些是数据库内部使用的,还有一些就是通过执行存储过程来调用系统命令。
系统存储过程:xp_cmdshell就是以操作系统命令行解释器的方式执行给定的命令字符串。它就具体语法是:xp_cmdshell {’command_string’} [, no_output]
xp_cmdshell在默认情况下,只有 sysadmin 的成员才能执行。但是,sysadmin也可以授予其他用户这个执行权限。在早期版本中,获得 xp_cmdshell 执行权限的用户在 SQL Server 服务的用户帐户中运行命令。可以通过配置选项配置 SQL Server,以便对 SQL Server 无 sa 访问权限的用户能够在SQLExecutiveCmdExec Windows NT 帐户中运行 xp_cmdshell。在 SQL Server 7.0 中,该帐户称为 SQLAgentCmdExec。现在对于SQL Server2000,只要有一个能执行该存储过程的帐号就可以直接运行命令了
对于 NT 和 WIN2000,当用户不是 sysadmin 组的成员时,xp_cmdshell 将模拟使用xp_sqlagent_proxy_account 指定的 SQL Server 代理程序的代理帐户。如果代理帐户不能用,则 xp_cmdshell 将失败。所以即使有一个帐户是master数据库的db_owner,也不能执行这个存储过程。
如果我们有一个能执行xp_cmdshell的数据库帐号,比如是空口令的sa帐号。那么我们可以执行这样的命令:
exec xp_cmdshell ’net user refdom 123456 /add’
exec xp_cmdshell ’net localgroup administrators refdom /add’
上面两次调用就在系统的管理员组中添加了一个用户:refdom
当我们获得数据库的sa管理员帐号后,就应该可以完全控制这个机器了。可见数据库安全的重要性。
未完,原文地址:http://www.evget.com/zh-CN/Info/ReadInfo.aspx?id=9198
分享到:
相关推荐
关于 SQL Server 数据库安全 SQL Server 数据库安全是指保护数据库以防止非法用户的越权使用、窃取、更改或破坏数据。数据库安全机制是指数据库管理系统提供的安全防护机制,如身份认证、访问控制、完整性保障、...
在本次的技术手册中,我们将讨论SQL Server数据库安全的话题,其中包括数据加密、SQL注入攻击、角色控制以及安全通信方面的内容,希望对SQL Server安全有个更全面了解的读者,赶紧下载阅读吧。 来自TT
SQL SERVER数据库安全性;PPT;授课电子讲义
在文章《提高SQL Server数据库安全性的几点思考》中,作者王桃群就如何提高SQL Server数据库的安全性提出了几个实用的建议。 首先,文章指出了SQL Server数据库的安全隐患主要来源于其默认的网络配置。为了减少安全...
文档标题:“SQL Server数据库安全策略.pdf”暗示了本文档主要关注的是微软SQL Server数据库系统的安全问题。内容的摘要是对SQL Server数据库安全性的重视性做了论述,指出了数据库安全与传统网络安全之间的区别和...
SQL Server数据库安全性研究
SQL Server数据库安全面临的威胁包括身份验证不足、拒绝服务攻击、SQL注入和权限滥用。身份验证不足是由于用户名和密码设置不够强健,使得攻击者能够轻易破解获取合法用户身份。拒绝服务攻击通过破坏数据、网络泛洪...
针对提供的文档内容,我们可以提炼出关于SQL SERVER数据库安全监控系统设计与实现的知识点。以下为详细的知识点解析: 1. SQL SERVER数据库的安全威胁分析 SQL Server数据库面临的威胁种类繁多,主要包括SQL注入...
标题“浅析SQL Server数据库安全系统”的知识点包括了对SQL Server数据库安全性的深入分析。本文将细致探讨SQL Server的安全机制,提出增强数据库安全系统的具体措施,并研究数据库监控信息获取策略,同时也会探讨...
总结以上知识点,我们可以看出强化SQL Server数据库安全是一个多层面、多环节的过程。它既包括物理和网络安全的基本措施,也需要对数据库的访问控制和用户权限进行精细管理。同时,保障数据传输过程的安全性,防止...
【SQL Server数据库安全监控系统的研究】 SQL Server数据库作为广泛应用的关系型数据库系统,其安全性对于企业的信息管理和业务运营至关重要。安全监控系统旨在预防、检测和应对潜在的威胁,确保数据库的正常运行和...
根据提供的文件内容,我们可以提炼出以下关于SQL Server数据库安全机制的知识点: 1. SQL Server数据库概述 SQL Server是专为分布式客户机/服务器模式设计的数据库管理系统,以其高性能著称,在网络时代得到广泛...
【SQL Server数据库安全机制研究】 随着信息技术的飞速发展,SQL Server数据库作为关键业务的核心,其安全性变得至关重要。本文深入探讨了SQL Server数据库的安全机制,包括基本安全配置、备份和恢复以及视图与存储...
SQL Server数据库安全影响因素及优化设计措施的知识点主要涵盖以下几个方面: 1. 数据库安全的重要性:随着信息技术和计算机技术的发展,数据库的安全性已成为确保信息存储和传输安全的关键。SQL Server数据库的...
二、SQL Server数据库安全隐患 SQL Server数据库的安全性是指保护数据库避免不合法使用,防止数据的泄漏、更改或破坏。影响数据库安全的主要因素是系统安全隐患,这包括计算机系统在硬件、软件、协议设计与实现过程...
标题所涉及的知识点为“图书馆SQL Server数据库安全配置”,描述中提及的内容同样指向该主题,标签则指明了文档的专业领域与性质,包括SQL、数据库、数据处理、参考文献和专业指导。而从提供的部分内容来看,文档...
在深入探讨了SQL Server数据库安全系统实现的同时,也为数据库管理员提供了专业的指导。 SQL Server的安全机制可主要分为三个等级:登录安全、访问安全、以及对象使用安全。这三个等级共同构筑起了数据库的安全防护...
本文对SQL Server数据库安全性的研究涵盖了SQL Server数据库管理系统(DBMS)的安全机制,分析了数据库安全性的核心要求,以及SQL Server是如何通过多种机制保护数据库安全的。 首先,数据库安全性的内涵被定义为...
从给定的文件信息中,我们可以提取以下关于SQL SERVER数据库安全管理机制的知识点: SQL Server数据库管理系统是微软公司开发的一种数据库系统,它运行在Windows操作系统上,通常是在Windows NT或Windows 2000平台...
SQL Server数据库安全性是确保数据完整性、保护用户隐私和防止未经授权访问的关键方面。本文将深入探讨SQL Server中的多种安全措施,以便为系统管理员和数据库开发者提供专业指导。 首先,我们需要了解SQL Server的...