什么是安全测试?示例

什么是安全测试?

安全测试是一种软件测试,旨在发现软件应用程序中的漏洞、威胁和风险,并防止入侵者的恶意攻击。安全测试的目的是识别软件系统的所有可能漏洞和弱点,这些漏洞和弱点可能导致组织内部员工或外部人员的信息、收入和声誉损失。

Security Testing

为什么安全测试很重要?

安全测试的主要目标是识别系统中的威胁并衡量其潜在漏洞,以便应对威胁,使系统不停止运行或不被利用。它还有助于检测系统中的所有可能的安全风险,并帮助开发人员通过编码修复问题。

软件测试中的安全测试类型

根据开源安全测试方法论手册,有七种主要的安全测试类型。解释如下:

Types of Security Testing in Software Testing

  • 漏洞扫描:通过自动化软件扫描系统,对抗已知的漏洞签名。
  • 安全扫描:它涉及识别网络和系统弱点,然后提供减少这些风险的解决方案。这种扫描可以手动和自动化进行。
  • 渗透测试:这种测试模拟恶意黑客的攻击。这种测试涉及对特定系统进行分析,以检查外部黑客攻击的潜在漏洞。
  • 风险评估:这种测试涉及分析组织中观察到的安全风险。风险被分为低、中、高。这种测试建议采取控制措施以降低风险。
  • 安全审计:这是对应用程序和操作系统进行内部检查,以查找安全漏洞。审计也可以通过逐行检查代码来完成。
  • 道德黑客:这是对组织软件系统进行黑客攻击。与为了自身利益而窃取的恶意黑客不同,其目的是暴露系统中的安全漏洞。
  • 态势评估:这结合了安全扫描、道德黑客和风险评估,以显示组织的整体安全态势。

如何进行安全测试

众所周知,如果在软件实施阶段或部署后推迟安全测试,成本会更高。因此,有必要在SDLC生命周期的早期阶段将安全测试纳入其中。

让我们来看看SDLC每个阶段应采用的相应安全流程

Security Testing

SDLC阶段 安全流程
需求 需求安全分析并检查滥用/误用情况
设计 设计安全风险分析。开发包括安全测试的测试计划
编码和单元测试 静态和动态测试以及安全白盒测试
集成测试 黑盒测试
系统测试 黑盒测试和漏洞扫描
实施 渗透测试,漏洞扫描
支持 补丁影响分析

测试计划应包括

  • 安全相关的测试用例或场景
  • 与安全测试相关的测试数据
  • 安全测试所需的测试工具
  • 分析不同安全工具的各种测试输出

安全测试的示例测试场景

示例测试场景,让您一窥安全测试用例 –

  • 密码应以加密格式存储
  • 应用程序或系统不应允许无效用户
  • 检查应用程序的Cookie和会话时间
  • 对于金融网站,浏览器返回按钮应不起作用。

安全测试方法论/方法/技术

在安全测试中,遵循不同的方法论,如下所示

  • 老虎盒(Tiger Box):这种黑客攻击通常在装有多个操作系统和黑客工具的笔记本电脑上进行。这种测试有助于渗透测试人员和安全测试人员进行漏洞评估和攻击。
  • 黑盒:测试人员被授权对网络拓扑和技术的一切进行测试。
  • 灰盒:测试人员获得关于系统的部分信息,它是白盒和黑盒模型的混合体。

安全测试角色

  • 黑客 – 未经授权访问计算机系统或网络
  • 破解者 – 闯入系统窃取或销毁数据
  • 道德黑客 – 执行大部分破解活动,但获得所有者许可
  • 脚本小子或数据包猴子 – 编程语言技能不熟练的黑客

安全测试工具

1) Teramind

Teramind 提供了一套全面的内部威胁预防和员工监控套件。它通过行为分析和数据丢失预防来增强安全性,确保合规性并优化业务流程。其可定制的平台适用于各种组织需求,提供可操作的见解,侧重于提高生产力和保障数据完整性。

Teramind

功能

  • 内部威胁预防:检测并预防可能指示数据内部威胁的用户行为。
  • 业务流程优化:利用数据驱动的行为分析重新定义操作流程。
  • 员工生产力:监控员工的生产力、安全性和合规行为。
  • 合规管理:通过一个可扩展的解决方案帮助管理合规性,适用于小型企业、大型企业和政府机构。
  • 事件取证:提供证据以丰富事件响应、调查和威胁情报。
  • 数据丢失预防:监控和防止敏感数据可能丢失。
  • 员工监控:提供监控员工绩效和活动的能力。
  • 行为分析:分析精细的客户应用程序行为数据以获取见解。
  • 可定制的监控设置:允许自定义监控设置以适应特定用例或实施预定义规则。
  • 仪表板洞察:通过全面的仪表板提供对员工活动的可见性和可操作的洞察。

访问 Teramind >>


2) Owasp

开放Web应用程序安全项目(OWASP)是一个全球性的非营利组织,致力于提高软件的安全性。该项目有多种工具可用于渗透测试各种软件环境和协议。该项目的旗舰工具包括

  1. Zed Attack Proxy(ZAP – 集成渗透测试工具)
  2. OWASP Dependency Check(扫描项目依赖项并检查已知漏洞)
  3. OWASP Web测试环境项目(安全工具和文档的集合)

3) WireShark

Wireshark是一个网络分析工具,以前称为Ethereal。它实时捕获数据包并以人类可读的格式显示。基本上,它是一个网络数据包分析器——它提供有关您的网络协议、解密、数据包信息等的微小细节。它是一个开源工具,可用于Linux、Windows、OS X、Solaris、NetBSD、FreeBSD和许多其他系统。通过此工具检索的信息可以通过GUI或TTY模式下的TShark实用程序查看。

4) W3af

w3af 是一个Web应用程序攻击和审计框架。它有三种类型的插件:发现、审计和攻击,它们相互通信以查找网站中的任何漏洞,例如,w3af中的发现插件寻找不同的URL以测试漏洞并将其转发给审计插件,然后审计插件使用这些URL来搜索漏洞。

安全测试的误区和事实

让我们来谈谈安全测试的误区和事实这个有趣的话题

误区1:我们是小企业,不需要安全策略

事实:每个人和每个公司都需要安全策略

误区2 :安全测试没有投资回报

事实:安全测试可以指出可以提高效率并减少停机时间、实现最大吞吐量的改进领域。

误区3:唯一的安全方法就是断开连接。

事实:确保组织安全唯一也是最好的方法是找到“完美安全”。通过执行态势评估并与业务、法律和行业理由进行比较可以实现完美安全。

误区4:互联网不安全。我将购买软件或硬件来保护系统并挽救业务。

事实:最大的问题之一是购买软件和硬件以确保安全。相反,组织应该首先了解安全,然后应用它。

结论

安全测试是应用程序最重要的测试,它检查机密数据是否保持机密。在这种类型的测试中,测试人员扮演攻击者的角色,在系统中进行操作以发现与安全相关的错误。安全测试在软件工程中非常重要,通过一切手段保护数据。