数据库系统安全培训课件.ppt

  1. 1、本文档共81页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5 数据库攻击防范概述 以上这三个层次构筑成数据库系统的安全体系,与数据安全的关系是逐步紧密的,防范的重要性也逐层加强,从外到内、由表及里保证数据的安全。 6 SQL注入攻击的防范 随着一些自动化注入攻击的出现,目前针对Web应用的SQL注入攻击越来越普遍,技术也在不断翻新。 SQL注入的基本原理还是通过构造畸形的SQL语句,绕过认证系统获得敏感信息。然而为了使用Web服务器和数据库服务器的功能,实现信息交互的目的就不可避免的暴露一些可以被攻击者非法利用的安全缺陷。 6 SQL注入攻击的防范 如何采取有效的措施阻止内部信息泄露,将系统的安全威胁降至最低是防护的关键。这需要从配置Web服务器、配置数据库和编写安全代码等多方面着手,加强系统安全性。 6 SQL注入攻击的防范 1. Web服务器的安全配置 (1) 修改服务器初始配置 服务器在安装时会添加默认的用户和默认口令,开启默认的连接端口等,这些都会给攻击者留下入侵的可能。在安装完成后应该及时删除默认的账号或者修改默认登录名的权限。关闭所有服务端口后,再开启需要使用的端口。 (2) 及时安装服务器安全补丁 及时对服务器模块进行必要的更新,特别是官方提供的有助于提高系统安全性的补丁包。使服务器保持最新的补丁包,运行稳定的版本。 6 SQL注入攻击的防范 (3) 关闭服务器的错误提示信息 错误提示信息对于调试中的应用程序有着很重要的作用,但是当Web应用一旦发布,这些错误提示信息就应该被关闭。详细的错误信息也会让攻击者获得很多重要信息。自行设置一种错误提示信息,即所有错误都只返回同一条错误消息,让攻击无法获得有价值的信息。 6 SQL注入攻击的防范 (4) 配置目录权限 对于Web应用程序所在的目录可以设置其为只读的。通过客户端上传的文件单独存放,并设置为没有可执行权限,并且不在允许Web访问的目录下存放机密的系统配置文件。这样是为了防止注入攻击者上传恶意文件。 6 SQL注入攻击的防范 (5) 删除危险的服务器组件 有些服务器组件会为系统管理员提供方便的配置途径,比如通过Web页面配置服务器和数据库、运行系统命令等等。但是这些组件可能被恶意用户加以利用,从而对服务器造成更严重的威胁。为安全起见,应当及时删除这样的服务器组件。 6 SQL注入攻击的防范 (6) 及时分析系统日志 将服务器程序的日志存放在安全目录中,定期对日志文件进行分析,第一时间发现入侵。但是日志分析只是一种被动的防御手段,只能分析和鉴别入侵行为的存在,但是对于正在发生的入侵无法做出有效的防范。 6 SQL注入攻击的防范 2.数据库的安全配置 (1) 修改数据库初始配置 数据库系统在安装时会添加默认的用户和默认口令等,例如MySQL安装过程中默认密码为空的root账号。这些都会给攻击者留下入侵的可能。在安装完成后应该及时删除默认的账号或者修改默认登录名的权限。 6 SQL注入攻击的防范 2.数据库的安全配置 (2) 及时升级数据库 及时对数据库模块进行必要的更新,特别是官方提供的有助于提高数据库系统安全性的补丁包,可以解决已知的数据库漏洞问题。 (3) 最小权利法则 Web应用程序连接数据库的账户只拥有必要的权限,这有助于保护整个系统尽可能少的受到入侵。用不同的用户账户执行查询、插入、删除等操作,可以防止用于执行SELECT的情况下,被恶意插入执行INSERT、UPDATE或者DELETE语句。 6 SQL注入攻击的防范 3. 脚本解析器安全设置 对于PHP编程语言,在php.ini文件中可以配置一些涉及安全性的设置,通过这些设置可以增加SQL的注入难度,降低SQL注入风险: (1) 设置“magic_quotes_gpc”为“on” 该选项是可以将一些输入的特殊字符自动转义。 (2) 设置“register_globals”为“off” “register_globals”选项来设置启用/禁止PHP为用户输入创建全局变量,设置为off表示:如果用户提交表单变量"a",PHP不会创建"&a",而只会创建_GET['a']或者_POST VARS['a']。 6 SQL注入攻击的防范 (3) 设置“safe_mode”为“on” 打开这个选项会增加几条限制:限制指定命令可以执行、限制指定函数可以使用、基于脚本所有权和目标文件所有权的文件访问限制、禁止文件上传功能。 (4) 设置“open_basedir”为“off” 它可以禁止指定文件目录之外的文件操作,有效解决include()函数攻击。

文档评论(0)

a13355589 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档