从疫苗研制原理看 应用安全测试技术DAST

2023-10-22 15:59

本文主要是介绍从疫苗研制原理看 应用安全测试技术DAST,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

对抗攻击分为两类 —— 白盒攻击和黑盒攻击,前者知道模型的全部信息,后者只知道部分信息。在实际操作中,我们遇到的大多情况是后者。因而,黑盒攻击在实际应用中比白盒攻击更实用。

最近疫情好像回到2年前卷土重来。各地都在贴出防疫守则,防范、修补漏洞,希望保护好每一个人同时不给机构增添麻烦。

要完全恢复到正常的经济生产活动,使民生得以有序进行,需要有效疫苗的研制和生产;软件环境的正常运行,某些程度也像社会环境要变得有机且可持续一样,也需要检测并提前规避安全漏洞。

作为行业小白,在了解DAST时,发现二者在原理机制上好像有一些相通的地方。

疫苗的研制是在识别病毒蛋白的结构后进行,我们打疫苗大致就类似“人体应用”的白盒测试了。但即便我们知晓病毒的所有蛋白结构,但它仍然具有可变异性,其本身的动态进化也是它如此顽强的原因所在。

对应到软件测试领域,比白盒测试功能更胜一筹的是黑盒测试 DAST,即在只知道部分信息,也能通过测试提前预知大部分漏洞,这是DAST比SAST强一些的功能,同时 SAST也有DAST覆盖不到的地方。

认识 DAST

一、什么是动态分析测试DAST

为了发现软件的漏洞和缺陷,确保Web应用程序在交付之前和交付之后都是安全的,就需要利用Web应用安全测试技术识别Web应用程序中架构的薄弱点和漏洞,并且必须赶在网络黑客找到和利用它们之前。

动态分析测试DAST就是Web应用安全测试的一种技术,也称黑盒安全测试。多指从外部测试应用程序。这种测试方法不需了解应用在系统级别的内部交互或设计,也不需要访问或查看源程序,就可以检查正在运行的应用。

这种黑盒测试从外到内均可查看应用,检查应用的运行状态,并仔细观察它对工具模拟攻击的响应情况。观察应用对这些模拟的响应可以帮助了解和确定是不是容易受到攻击,以及受到真正的恶意攻击的情形。

二、DAST的工作原理

DAST通过模仿恶意攻击者,模拟自动攻击应用发挥作用目标是发现可能被攻击者袭击或损害应用的预期之外的后果或结果。

DAST执行原理:

从攻击者的视角对其进行分析,从而识别潜在的漏洞,并在正在运行的应用中寻找可利用的缺陷。

1、传统DAST 解决方案

       —— 提供运行时 Web 应用的动态扫描和分析

部分环节:从至少一个日志文件采集日志文件数据,可以根据采集的日志文件数据生成对练习web应用以执行web应用的安全分析的至少一个HTTP请求,可以向web应用传达HTTP请求,可以接收对HTTP请求的至少一个HTTP响应。可以分析HTTP响应以执行web应用的验证,可以输出验证的结果。

2、现代DAST 解决方案

       ——结合 Web 和 API 扫描、渗透测试和模糊测试识别被攻击的后果。

部分环节:对已知样本进行突变,突变样本按队列执行测试并获取执行路径位图,测试进程崩溃则针对新崩溃样本保存当前突变样本,测试进程未崩溃则根据执行路径位图判断突变样本价值,若有则将突变样本加入有效样本队列,否则丢弃样本,直至队列处理完毕,取有效样本队列中的突变样本再次突变并重复模糊测试,扩大测试覆盖面。

在调用API前满足前置条件,使用路径反馈约束突变样本,有效提高模糊测试覆盖面,可高效率进行模糊测试,提高发现Windows内核提权漏洞的可能性,可以针对Windows下所有系统API调用进行模糊测试,保证获取样本执行路径的速度。

此外,还有下一代技术工具解决方案 —— 交互式应用安全测试 IAST。

在软件测试中,多种不同类型的DAST解决方案,有着与免疫系统识别病毒相类似的原理(冥冥中指证着宇宙间遥远的相似性这一假说?)。

疫苗研制的技术路径及原理

1、传统的灭活疫苗:攻击病毒,将病毒残片放入人体,让免疫系统了解病毒的模样,提前准备。

2、重组蛋白疫苗:重组蛋白疫苗,了解疫苗蛋白结构再合成工艺。

3、扩展性强的病毒载体疫苗:拆解病毒,制造良性病毒,加速病毒弱化,但时间长且腺病毒载体不一定能合上。

4、热门的MRNA疫苗:把因破译病毒蛋白后的病毒结构写进去,人体细胞自己生长病毒“模特”,然后免疫系统自我认知。

三、DAST 和 SAST 的区别

静态应用安全测试 SAST与 DAST 使用相反的方法。

在全面了解内部工作(源代码、二进制等)的情况下,从内到外查看应用。这种“白盒”测试的目标是识别代码问题。在 SAST 期间,应用不会运行,因为 SAST 检查的是应用的源代码,而不是它在运行时的表现。SAST 审查应用的数据和控制路径是否存在安全弱点。

SAST 使用时间阶段:

软件开发生命周期 SDLC的早期使用,可迭代提供结果,同时开发人员为应用创建代码段,以组成持续集成/持续部署 CI/CD方案。

SAST 的分析结果可以识别确切的薄弱代码行,帮助开发人员在编码过程中解决软件问题。

DAST使用时间阶段:

理论上可以在 SDLC 的构建集成阶段及早期使用 ,但在实际操作中通常都是在稍后的测试和生产阶段才使用。在这些后期阶段,应用已经构建完成,因此可以在运行时进行分析。

DAST 可以识别潜在的漏洞,但不能识别薄弱代码所在的行。

四、DAST 的作用

DAST 扫描程序在扫描 Web 应用程序之前首先对其进行爬网。这让扫描器可以找到 Web 应用程序中页面上所有暴露的输入,然后对这些输入进行一系列漏洞测试。

DAST 测试可以查找范围广泛的漏洞,包括可能使应用程序容易受到跨站点脚本或 SQL 注入攻击的输入/输出验证问题。

DAST 测试可以帮助发现配置错误和错误,并识别应用程序的其他特定问题

大多数 DAST 解决方案仅测试支持 Web 的应用程序公开的 HTTP 和 HTML 接口。但是,也有些解决方案是专门针对非Web协议和数据畸形设计的,例如远程过程调用、会话发起协议等。

这篇关于从疫苗研制原理看 应用安全测试技术DAST的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/262411

相关文章

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

hdu1394(线段树点更新的应用)

题意:求一个序列经过一定的操作得到的序列的最小逆序数 这题会用到逆序数的一个性质,在0到n-1这些数字组成的乱序排列,将第一个数字A移到最后一位,得到的逆序数为res-a+(n-a-1) 知道上面的知识点后,可以用暴力来解 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#in

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

zoj3820(树的直径的应用)

题意:在一颗树上找两个点,使得所有点到选择与其更近的一个点的距离的最大值最小。 思路:如果是选择一个点的话,那么点就是直径的中点。现在考虑两个点的情况,先求树的直径,再把直径最中间的边去掉,再求剩下的两个子树中直径的中点。 代码如下: #include <stdio.h>#include <string.h>#include <algorithm>#include <map>#

hdu4407(容斥原理)

题意:给一串数字1,2,......n,两个操作:1、修改第k个数字,2、查询区间[l,r]中与n互质的数之和。 解题思路:咱一看,像线段树,但是如果用线段树做,那么每个区间一定要记录所有的素因子,这样会超内存。然后我就做不来了。后来看了题解,原来是用容斥原理来做的。还记得这道题目吗?求区间[1,r]中与p互质的数的个数,如果不会的话就先去做那题吧。现在这题是求区间[l,r]中与n互质的数的和