- 数据库测试教程
- 数据库测试 - 首页
- 数据库测试 – 概述
- 数据库测试 – 类型
- 数据库测试 – 流程
- 数据库测试 – 技术
- 数据库测试 – 场景
- 数据库测试 – 对象
- 数据库测试 – 数据完整性
- 数据库测试 – 数据映射
- 数据库测试 – 性能
- 数据库测试 – 工具
- 数据库测试 – 备份
- 数据库测试 – 恢复
- 数据库测试 – 安全性
- 数据库测试 – 挑战
- 数据库测试 - 面试题
- 数据库测试实用资源
- 数据库测试 - 快速指南
- 数据库测试 - 有用资源
- 数据库测试 - 讨论
数据库测试 – 安全性
数据库安全测试旨在查找安全机制中的漏洞,并找出数据库系统的漏洞或弱点。
数据库安全测试的主要目标是找出系统中的漏洞,并确定其数据和资源是否受到潜在入侵者的保护。定期进行安全测试可以有效地识别潜在的漏洞。
以下是执行数据库安全测试的主要目标:
- 身份验证
- 授权
- 机密性
- 可用性
- 完整性
- 弹性
数据库系统中的威胁类型
SQL注入
这是数据库系统中最常见的攻击类型,攻击者将恶意的SQL语句插入数据库系统并执行,以获取数据库系统中的关键信息。这种攻击利用用户应用程序实现中的漏洞。为了防止这种情况,应该仔细处理用户输入字段。
数据库中的权限提升
在这种攻击中,用户已经对数据库系统具有一定的访问权限,他只是试图将此访问权限提升到更高的级别,以便他/她可以在数据库系统中执行一些未经授权的操作。
拒绝服务
在这种类型的攻击中,攻击者使数据库系统或应用程序资源无法为其合法用户使用。应用程序也可能受到攻击,从而导致应用程序,有时甚至是整台机器无法使用。
未经授权的数据访问
另一种攻击类型是未经授权地访问应用程序或数据库系统中的数据。未经授权的访问包括:
- 通过基于用户的应用程序未经授权访问数据
- 通过监控其他人的访问来未经授权访问
- 未经授权访问可重复使用的客户端身份验证信息
身份欺骗
在身份欺骗中,黑客使用用户或设备的凭据对网络主机发起攻击,窃取数据或绕过数据库系统的访问控制。防止这种攻击需要 IT 基础设施和网络级别的缓解措施。
数据操纵
在数据操纵攻击中,黑客更改数据以获得某种优势或损害数据库所有者的形象。
数据库安全测试技术
渗透测试
渗透测试是对计算机系统的一种攻击,目的是查找安全漏洞,可能获取对系统、其功能和数据的访问权限。
风险查找
风险查找是一个评估和确定与损失类型和漏洞发生可能性相关的风险的过程。这由组织内部通过各种访谈、讨论和分析来确定。
SQL注入测试
它涉及检查应用程序字段中的用户输入。例如,不允许在用户应用程序的任何文本框中输入“,”或“;”之类的特殊字符。当发生数据库错误时,这意味着用户输入已插入某些查询中,然后由应用程序执行。在这种情况下,应用程序容易受到 SQL 注入的攻击。
这些攻击对数据构成重大威胁,因为攻击者可以访问服务器数据库中的重要信息。要检查 SQL 注入进入 Web 应用程序的入口点,请从代码库中找出通过接受某些用户输入直接在数据库上执行 MySQL 查询的代码。
可以针对括号、逗号和引号执行 SQL 注入测试。
密码破解
在执行数据库系统测试时,这是最重要的检查。为了访问关键信息,黑客可以使用密码破解工具或猜测常见的用户名/密码。这些常用密码很容易在互联网上找到,并且也存在免费的密码破解工具。
因此,有必要在测试时检查系统中是否维护了密码策略。对于任何银行和金融应用程序,都需要对所有关键信息数据库系统设置严格的密码策略。
数据库系统的安全审计
安全审计是一个定期评估公司安全策略的过程,以确定是否遵循必要的标准。可以根据业务需求遵循各种安全标准来定义安全策略,然后可以根据这些标准对已设置的策略进行评估。
最常见的安全标准示例包括 ISO 27001、BS15999 等。
数据库安全测试工具
市场上有各种系统测试工具,可用于测试操作系统和应用程序检查。下面讨论一些最常见的工具。
Zed Attack Proxy
它是一个渗透测试工具,用于查找 Web 应用程序中的漏洞。它旨在供具有各种安全经验的人员使用,因此非常适合刚接触渗透测试的开发人员和功能测试人员。它通常用于 Windows、Linux、Mac OS。
Paros
使用这些扫描程序可以拦截和修改服务器和客户端之间的所有 HTTP 和 HTTPS 数据,包括 Cookie 和表单字段。它用于跨平台、Java JRE/JDK 1.4.2 或更高版本。
社会工程工具包
它是一个开源工具,攻击的是人为因素而不是系统元素。它使您可以发送包含攻击代码的电子邮件、Java 小程序等。它更适合 Linux、Apple Mac OS X 和 Microsoft Windows。
Skipfish
此工具用于扫描其站点以查找漏洞。该工具生成的报告旨在作为专业 Web 应用程序安全评估的基础。它更适合 Linux、FreeBSD、MacOS X 和 Windows。
Vega
它是一个开源的、多平台的 Web 安全工具,用于查找 Web 应用程序中 SQL 注入、跨站点脚本 (XSS) 和其他漏洞的实例。它更适合 Java、Linux 和 Windows。
Wapiti
Wapiti 是一款开源的基于 Web 的工具,它扫描 Web 应用程序的网页并检查可以注入数据的脚本和表单。它使用 Python 构建,可以检测文件处理错误、数据库、XSS、LDAP 和 CRLF 注入、命令执行检测。
Web Scarab
它是用 Java 编写的,用于分析通过 HTTP/HTTPS 协议进行通信的应用程序。此工具主要设计用于可以自己编写代码的开发人员。此工具不依赖于操作系统。