保护你的数据:深入了解安全测试!

详解安全测试

安全测试是一种非功能性测试。与功能测试不同,功能测试关注的是软件的功能是否正常工作(软件做什么),非功能测试关注的是应用程序是否被正确设计和配置。

安全测试的主要目标:

  • 识别资产-需要保护的东西,如软件应用程序和计算基础设施。
  • 识别威胁和漏洞-可能导致资产损坏的活动,或者一个或多个资产中可能被攻击者利用的弱点。
  • 识别风险安全测试旨在评估特定威胁或漏洞对业务造成负面影响的风险。通过确定威胁或漏洞的严重性以及利用的可能性和影响来评估风险。
  • 执行补救-安全测试不仅仅是对资产的被动评估。它为修复发现的漏洞提供了可操作的指导,并可以验证漏洞是否已成功修复。

安全测试的主要原则

安全测试旨在确保组织的系统、应用程序和数据遵守以下安全原则:

  • 机密性-限制对系统管理的敏感访问的访问。
  • 完整性-确保数据在其整个生命周期中保持一致、准确和可信,并且不能被未经授权的实体修改。
  • 身份验证-确保敏感系统或数据受到验证访问它们的个人身份的机制的保护。
  • 授权-确保敏感系统或数据根据角色或权限正确控制经过身份验证的用户的访问。
  • 可用性-确保关键系统或数据在用户需要时可用。
  • 不可否认性-通过交换带有可证明时间戳的身份验证信息,确保发送或接收的数据无法被拒绝。

安全测试的类型

渗透测试(Ethical Hacking)

渗透测试是在安全条件下刺激针对应用程序,软件,系统或网络的真实网络攻击的过程。它可以帮助评估现有的安全措施在真实的攻击中的表现。最重要的是,渗透测试可以发现未知的漏洞,包括零日威胁和业务逻辑漏洞。

传统上,渗透测试是由一个被称为道德黑客的可信和认证的安全专业人员手动完成的。黑客在商定的范围内工作,试图以受控的方式破坏公司的系统,而不会造成损害。近年来,自动化渗透测试工具正在帮助组织以更低的成本和更高的测试频率获得类似的好处。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036【暗号:csdn999】

应用程序安全测试(AST)

应用程序安全测试描述了组织可以用来发现和消除软件应用程序中漏洞的方法。这些方法包括在整个软件开发生命周期(SDLC)中测试、分析和报告软件应用程序的安全状态。

AST的主要目标是在应用程序发布到市场之前防止软件漏洞,如果失败,则在生产中快速识别和修复它们。成功的AST可以带来更健壮、更安全的源代码,更好地了解应用程序安全问题,并改善对内部和外部威胁的保护。

网络应用安全测试

Web应用程序安全测试的目的是确定Web应用程序是否容易受到攻击。它涵盖了各种自动和手动技术。

Web应用程序渗透测试旨在收集有关Web应用程序的信息,发现系统漏洞或缺陷,调查利用这些漏洞或漏洞的成功率,并评估Web应用程序漏洞的风险。

API安全测试

API安全测试有助于识别应用程序编程接口(API)和Web服务中的漏洞,并帮助开发人员修复这些漏洞。API提供对敏感数据的访问,攻击者可以将其用作内部系统的入口点。严格和定期地测试API可以保护它们免受未经授权的访问和滥用。

API特别容易受到中间人(MiTM)攻击等威胁的影响,其中攻击者可以窃听API通信并窃取数据或凭据,API注入,其中攻击者可以将恶意代码注入内部系统,以及拒绝服务(DoS),其中攻击者用虚假流量淹没API以拒绝向合法用户提供服务。

为了减轻这些威胁,必须验证API是否具有对用户请求的强身份验证、根据最小权限原则对用户进行授权、使用SSL/TLS对所有通信进行加密以及对用户输入进行清理以防止代码注入和篡改。

漏洞管理

漏洞管理是一个持续的过程,使组织能够跨端点、工作负载和网络识别、评估、报告、管理和修复安全漏洞。安全团队通常使用漏洞扫描工具来检测漏洞,并实施手动或自动流程来修复漏洞。

强大的漏洞管理计划使用威胁情报并利用IT运营知识来了解漏洞的真实的业务影响、确定风险优先级并尽快修复高优先级漏洞。

配置扫描

安全扫描,也称为配置扫描,是识别软件,网络和其他计算系统的错误配置的过程。这种类型的扫描通常会根据研究组织或合规标准指定的最佳实践列表检查系统。

自动配置扫描工具可以识别错误配置,并提供一份报告,其中包含有关每个错误配置的更多详细信息,以及如何解决这些错误配置的建议。

安全审计

安全审计是根据定义的标准审查/审计应用程序/软件的结构化过程。审计通常涉及根据安全需求审查代码或架构,分析安全漏洞,以及评估硬件配置、操作系统和组织实践的安全状况。它还评估对法规和合规标准的遵守情况。

风险评估

风险评估允许组织识别、分析和分类其业务关键资产所面临的安全风险。风险评估可以帮助了解组织基础设施面临的最重要威胁,并确定系统修复的优先级。它还有助于安全投资的长期规划和预算。

安全态势评价

安全态势评估结合了安全扫描、道德黑客攻击和风险评估,不仅可以识别组织面临的风险,还可以识别其当前的安全控制措施及其有效性。它可以识别当前安全状况中的差距,并建议将提高受保护资产安全性的更改或改进。

安全测试用例和场景

认证系统的安全测试应包括以下内容:

  • 检查密码规则-测试网站所要求的密码安全级别和质量。
  • 标识用户名枚举的可验证性-检查错误是否因是否有用户而异。
  • 测试密码强度-创建密码的最低要求。
  • 确定帐户恢复能力-检查攻击是否可以恢复帐户(即,通过更改电子邮件或密码)。
  • 检查用户名强度-确保用户名是唯一的。
  • 识别失败开放身份验证-检查系统是否提供开放访问,即使身份验证失败。
  • 验证cookie作用域-检查cookie是否作用于域,或者攻击者是否可以窃取它们。

输入验证

输入验证测试应包括以下内容:

  • 模糊请求参数-检查反射参数和开放重定向。
  • 确定SQL注入的可行性-检查系统是否将参数作为SQL处理。
  • 确定SOAP注入的可行性-检查应用程序是否响应SOAP。
  • 确定LDAP注入的可操作性-测试无法清理输入的情况。
  • 确定XML注入的可行性-检查注入的XML是否影响应用程序。
  • 确定XXE注入的可行性-检查攻击者是否可以注入外部实体。

应用程序和业务逻辑

这些测试用例对于安全测试很重要,需要人工干预(由于每个应用程序逻辑的独特性,它们太复杂而无法自动化)。测试应包括以下内容:

  • 确定应用程序逻辑攻击面-应用程序做什么。
  • 检查来自客户端的数据传输-查看应用程序之间的信息传输是否不同。
  • 确定客户端的输入验证-检查应用程序基于其逻辑的位置。
  • 识别多步骤流程中的逻辑缺陷-检查是否可能绕过步骤。
  • 测试不完整的输入处理-检查应用程序是否处理错误的输入。
  • 检查信任关系-例如,用户是否可以访问管理功能。

其他测试

还有其他各种测试可帮助确保应用程序的安全性并识别以下漏洞:

  • 像XSS这样的DOM漏洞。
  • 缺少HTTP安全头。
  • 本地隐私漏洞。
  • 弱而持久的饼干。
  • 弱SSL密码。
  • 包含敏感信息的URL参数。

安全测试方法

黑盒测试

在黑盒测试中,安全测试人员从外部评估系统的安全性,而不知道生成响应的内部进程。黑箱是一个不透明的系统,意味着只有输入和输出是可观察的。在某些情况下,测试人员忽略了系统的内部结构,即使它是可以理解的。

黑盒测试确保了测试人员和代码创建者之间的分离。它迫使测试人员采用局外人的视角来测试软件,因为攻击者可能会接近它。测试和软件开发过程之间的社会和技术分离使测试人员能够挑战开发人员-例如,通过以开发人员没有考虑的方式操纵应用程序。

白色盒测试

在白色盒测试中,测试人员根据软件的源代码设计测试用例和测试。测试人员知道并理解代码结构,而不是黑盒测试或灰盒测试(测试人员对代码结构的知识有限)。由于这种可观察性,它也被称为透明,透明或玻璃盒测试。

白色盒测试技术关注于应用程序的内部工作和软件组件,从内部测试其设计和结构。测试团队可以将这种技术应用于系统、集成和单元测试。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/198006.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM32单片机项目实例:基于TouchGFX的智能手表设计(1)项目介绍及GUI界面基础

STM32单片机项目实例:基于TouchGFX的智能手表设计(1)项目介绍及GUI界面基础 一、项目介绍 1.1方案提供 1.2主控选择 1.3硬件平台 1.4 开发环境 1.5 关于华清 二、GUI界面基础 2.1.1 嵌入式绘图系统 2.1.1 色彩格式 2.1.1帧缓冲区 …

力扣374周赛

力扣第374场周赛 找出峰值 模拟 class Solution { public:vector<int> findPeaks(vector<int>& mountain) {vector<int>ans;for(int i 1 ; i < mountain.size() - 1; i ){if(mountain[i] > mountain[i-1] && mountain[i] > mountai…

CleanMyMac X2024最新免费Mac中文版安装包下载

CleanMyMac X for Mac中文2024版只需两个简单步骤就可以把系统里那些乱七八糟的无用文件统统清理掉&#xff0c;节省宝贵的磁盘空间。cleanmymac x个人认为X代表界面上的最大升级&#xff0c;功能方面有更多增加&#xff0c;与最新macOS系统更加兼容&#xff0c;流畅地与系统性…

【Vulnhub 靶场】【Prime (2021): 2】【简单 - 中等】【20210509】

1、环境介绍 靶场介绍&#xff1a;https://www.vulnhub.com/entry/prime-2021-2,696/ 靶场下载&#xff1a;https://download.vulnhub.com/prime-2021/Prime-2.ova 靶场难度&#xff1a;简单 - 中等 发布日期&#xff1a;2021年5月9日 文件大小&#xff1a;3.7 GB 靶场作者&am…

Json.NET 单个对象Json字符串反序列成两个不同实体对象

本文主要介绍Newtonsoft.JSON(Json.NET)中&#xff0c;将一个对象的Json字符串反序化成两个不同的实体对象的方法代码。具体效果如下&#xff1a; Json字符串&#xff1a; [{"guardian_id": "1453","guardian_name": "Foo Bar",&quo…

能源企业管理ERP系统都有哪些?可以帮助企业解决哪些难点

能源企业在不同的发展阶段面对的经营压力以及遇到的管理问题各异&#xff0c;随着部分产品结构的复杂化&#xff0c;日常经营管理工作也愈加繁琐。 有些能源企业内部存在信息传递不畅、经营数据统计不及时、部门协作效率低、多仓库和多平台数据不统一等情况&#xff0c;而这些…

GPT3年终总结

User You 程序员年度绩效总结 ChatGPT ChatGPT 程序员年度绩效总结通常包括以下几个方面&#xff1a; 目标达成情况&#xff1a; 回顾年初设定的目标&#xff0c;评估在项目完成、技能提升等方面的达成情况。 工作贡献&#xff1a; 强调在项目中的个人贡献&#xff0c;包括…

Flask 快速入门

引言 Flask 是一个轻量级的Web框架&#xff0c;以简洁和灵活而著称。它提供了构建Web应用所需的基本工具&#xff0c;同时保持了足够的可扩展性&#xff0c;使其成为初学者和有经验的开发人员的首选。本系列专栏将带领大家逐步深入学习 Flask&#xff0c;从最基础的概念开始&a…

RH850P1X芯片学习笔记-Overview

文章目录 Outline产品列表功能框图特点Pin和引脚功能CPU系统CPUFPU浮点运算单元中断处理保护机制指令缓存Local RAMGlobal RAM处理器间通信和相互排斥机制 操作模式中断功能DMA电源供电Reset控制单元时钟控制单元CSIH-SPIMCAN看门狗计时器系统计时器GTM通用定时器模块外设互联P…

openCV在Visual Studio2019下的集成使用

文章目录 下载OpenCV工具选择合适库文件使用visual studio创建空项目测试运行运行结果 下载OpenCV工具 官网下载实在太慢&#xff0c;还老实下不下来。下面从网上找到些别人分享的一些版本&#xff08;从3.4到4.7&#xff09;放到了网盘里&#xff0c;请按需下载使用。 链接&a…

轻量封装WebGPU渲染系统示例<43>- PBR材质与阴影实(源码)

原理简介: 1. 基于rendering pass graph实现。 2. WGSL Shader 基于文件系统和宏机制动态组装。 当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/rendering/src/voxgpu/sample/PBRShadowTest.ts 当前示例运行效果: 此示例基于此渲染系统实现&a…

Ribbon-IRule 修改负载均衡的规则

1、负载均衡规则描述 &#xff08;1&#xff09;整体关系 &#xff08;2&#xff09;规则描述 内置负载均衡规则类规则描述RoundRobinRule简单轮询服务列表来选择服务器。它是Ribbon默认的负载均衡规则。AvailabilityFilteringRule对以下两种服务器进行忽略: (1)在默认情况下&…

1-4、调试汇编程序

语雀原文链接 文章目录 1、执行过程第一步&#xff1a;源程序第二步&#xff1a;编译连接第三步&#xff1a;执行 2、DOSBox运行程序第1步 进入EDIT.EXE第2步 编写源程序第3步 编译第4步 连接第5步 执行完整过程 3、DEBUG跟踪执行过程加载程序到内存执行程序debug和源程序数字…

Python处理Point, MultiPolygon, Polygon, LineString等Geo地理形状数据

依赖库 from shapely import Polygon, Point, LineString import re自编写函数 1. 将 字符串Polygon/MultiPolygon数据 转换为 坐标数据 输入输出 调用方式&#xff1a;fork_MULTIPOLYGON_POLYGON_to_POLYGONLIST(str_polygon) 输入&#xff1a;字符串形式的Polygon/Multi…

软件平台架构设计与技术管理之道笔记

软件平台架构设计与技术管理之道笔记 认知 领导软件平台各方面的工作&#xff0c;对技术底蕴、思维模式、决策能力、工作风格、文化铸造等方面都有极高的要求&#xff0c;可以称之为“领域智慧”。认知盲区的代价是巨大的&#xff0c;“不知”比“不会”的后果更严重&#xf…

【Android】HttpURLConnection、OkHttp

WebView 已经在后台帮我们处理好了发送HTTP请求、接收服务器响应、解析返回数据&#xff0c;以及最终的页面展示这几步工作。只不过它封装得实在是太好了&#xff0c;反而使得我们不能那么直观地看出HTTP到底是如何工作的。因此&#xff0c;接下来我们通过手动发送HTTP请求的方…

探讨Unity中的动画融合技术(BlendTree)

动画在游戏和虚拟现实应用中扮演着关键的角色&#xff0c;而动画融合技术则是使角色动作更加流畅和逼真的核心。在Unity引擎中&#xff0c;我们可以使用动画混合树&#xff08;Blend Trees&#xff09;来实现这一目标。本篇技术博客将深入讨论动画融合技术的实现原理、在Unity中…

rust 包模块组织结构

一个包&#xff08;package&#xff09;可以拥有多个二进制单元包及一个可选的库单元包。随着包内代码规模的增长&#xff0c;你还可以将代码拆分到独立的单元包&#xff08;crate&#xff09;中&#xff0c;并将它作为外部依赖进行引用。 RUST提供了一系列的功能来帮助我们管…

做一个类似万师傅家政小程序需要有哪些功能?

现如今人们生活节奏不断加快&#xff0c;自然很少有时间去处理生活中的琐事&#xff0c;恰好家政维修保洁小程序开发则能给线下用户提供方便。 家政保洁小程序应该具备哪些功能&#xff1f; 1、提供家政行业资讯&#xff0c;方便用户在选择家政保洁前了解行业动态。 2、分类搜…

C 中的枚举

简要回顾 最简单的枚举是比宏稍微高级一点的东西。它们可以避免像这样做&#xff1a; #define COLOR_BLACK 0 #define COLOR_WHITE 1 #define COLOR_BLUE 2 #define COLOR_GREEN 3 #define COLOR_RED 4 你可以这样做&#xff1a; enum color {COLOR_BLACK,COLOR_WHITE,COLO…