在互联网高度发达的当下,智能化的软件成为商业决策、推广等不可缺少的利器,很多软件涉及了客户商业上重要的信息资料,一个细小的安全漏洞,将有可能对客户造成巨大影响。因此,软件安全测试的重要性不言而喻。

Web应用安全测试技术经过多年的发展,目前业界常用的技术主要分为以下3大类别。

DAST(动态应用程序安全测试)
DAST是一种黑盒测试技术,是目前应用最广泛,使用最简单的一种Web应用安全测试方法。

技术原理
1、通过爬虫发现整个Web应用结构,爬虫会发现被测Web程序有多少个目录,多少个页面,页面中有哪些参数。
2、根据爬虫的分析结果,对发现的页面和参数发送修改的HTTP Request进行攻击尝试(扫描规则库)。
3、通过对于Response的分析验证是都存在安全漏洞。

SAST(静态应用程序安全测试)
SAST是一种在开发阶段对源代码进行安全测试发现安全漏洞的测试方案。

技术原理
1、通过调用语言的编译器或解释器把前端的语言代码(如JAVA,C/C++源代码)转换成一种中间代码,将其源代码之间的调用关系、执行环境、上下文等分析清楚。
2、语义分析:分析程序中不安全的函数、方法使用问题。
3、数据流分析:跟踪、记录并分析程序中的数据传递过程所产生的安全问题。
4、控制流分析:分析程序特定时间、状态下执行操作指令的安全问题。
5、配置分析:分析项目配置文件中的敏感信息和配置缺失的安全问题。
6、结构分析:分析程序上下文环境、结构中的安全问题。
7、结合多种分析结果,匹配所有规则库中的漏洞特征,一旦发现漏洞就抓取出来。
8、形成包含详细漏洞信息的漏洞检测报告,包括漏洞的具体代码行数以及漏洞修复的建议。

IAST(交互式应用程序安全测试)
IAST是一种新的应用程序安全测试方案,通过代理、VPN或者在服务端部署Agent程序,收集、监控Web应用程序运行时函数执行、数据传输,并与扫描器端进行实时交互,高效、准确的识别安全缺陷及漏洞,同时可准确确定漏洞所在的代码文件、行数、函数及参数。

IAST原理
IAST是DAST和SAST结合的一种互相关联运行时安全检测技术,它融合了DAST和SAST技术的优点,无需源码,支持对字节码的检测。IAST是在软件生命周期中的QA/Testing阶段进行的,通过把安全测试从生产阶段分离,使得团队可以提前捕获动态漏洞,进而降低漏洞修复成本、消除延迟、降低应用程序被破坏的风险。

IAST分为主动式IAST和被动式IAST。主动式IAST通过在被测试应用程序中部署探针,然后使用外部扫描器触发流量由探针进行捕获、检测是否存在漏洞;被动式IAST通过在被测试应用程序中部署探针,然后获取程序执行的代码上下文信息及数据流向,根据数据流向及程序执行的代码上下文信息梳理污点链路,判断是否存在漏洞。

了解更多安全资讯,请关注 中科天齐软件安全中心

网络安全通识全解|第18期 DAST、SAST、IAST——Web应用安全测试技术相关推荐

  1. 网络安全通识全解|第1期 什么是网络安全

    网络安全通识全解|第1期 什么是网络安全 01 什么是网络安全? 网络安全是指网络系统的硬件.软件及其系统中的数据受到保护,不受偶然的或者恶意的原因而遭到破坏.修改.泄露,系统连续可靠正常地运行,网络 ...

  2. 网络安全通识全解|第10期 安全上网你要懂得的事

    01 上网前可以做哪些事情确保网络安全? 安装个人防火墙,利用隐私控制特性,选择需要保密的重要信息,以防不慎把这些信息发送到不安全的网站.同时防火墙还可以防止网站服务器在未察觉的情况下跟踪你的电子邮件 ...

  3. 网络安全通识全解|第12期 《网络安全审查办法》解读

    01 <网络安全审查办法>出台背景 关键信息基础设施对国家安全.经济安全.社会稳定.公众健康和安全至关重要.我国建立网络安全审查制度,目的是通过网络安全审查这一举措,及早发现并避免采购产品 ...

  4. 网络安全通识全解|第6期 一文读懂关键信息基础设施

    01 什么是关键信息基础设施? 关键信息基础设施是指那些一旦遭到破坏.丧失功能或者数据泄露将对国家安全.国计民生.公共利益造成严重危害的网络设施和信息系统. 02 关键信息基础设施包括哪些? (1)网 ...

  5. 网络安全通识全解|第14期 那些常见的网络安全“黑话”

    0day漏洞 0day漏洞最早的破解是专门针对软件,叫做WAREZ,后来才发展到游戏,音乐,影视等其他内容的.0day中的0表示Zero,早期的0day表示在软件发行后的24小时内就出现破解版本. 在 ...

  6. 网络安全通识全解|第15期 白帽、黑帽、灰帽,黑客的差异!

    提起黑客,很多人的脑中最先浮现的就是"计算机犯罪",是控制他人电脑.窃取密码甚至存款的无耻之徒.实际上这是一种误解,黑客也存在不同的"面孔". 白帽黑客 一般来 ...

  7. 网络安全通识全解|第9期 揭秘黑客的常用攻击手段

    01 网络钓鱼 网络钓鱼是指攻击者利用欺骗性的电子邮件和伪造的Web站点来进行网络诈骗活动,钓鱼邮件一般是攻击者伪装成同事.合作伙伴.朋友.家人等用户信任的人,通过发送电子邮件的方式,诱使用户回复邮件 ...

  8. 网络安全通识全解|第17期 了解污点分析

    随着互联网+.云计算.移动智能终端等技术的发展, 软件系统对信息安全的需求越来越高,信息流分析可以有效保证计算机系统中信息的保密性和完整性. 污点分析是常见的信息流分析手段,是分析代码漏洞.检测攻击方 ...

  9. 网络安全通识全解|第16期 手工测试与自动化测试

    手工测试与自动化测试 手工测试是指软件测试的整个活动过程(如评审.测试设计.测试执行等)都是由软件测试工程师手工执行来完成,不使用任何测试工具,狭义上是指测试执行由人工完成,这是最基本的测试形式. 自 ...

最新文章

  1. linux系统/etc目录内容简介
  2. IEEE Fellow、AI大牛田奇加入华为云!他为何而来?“加速AI基础研究落地”
  3. [YTU]_2632 ( B2 友元光顾)
  4. [记录]---mysql数据库,decimal类型设置默认值0,不要是null
  5. 加加减减的奥秘——从数学到魔术的思考(二)
  6. python中基本运算符_Python中的基本运算符及示例
  7. linux 按键驱动中断 rockchip_7.自己写中断方式按键驱动程序(详解)
  8. eclipse : java项目中的web.xml( Deployment Descriptor 部署描述文件 )配置说明
  9. mysql 表自动复制_mysql-10临时表、复制表
  10. Windows phone 7
  11. 快速排序 时间复杂度计算
  12. Python:实现random forest regressor随机森林回归器算法(附完整源码)
  13. 简单说说路由器和交换机的区别
  14. 计算机用户名含有中文,安装软件的时候,计算机用户名是中文名的解决办法
  15. 企业微信开发,嵌入自定义项目,及JS-SDK的引用
  16. 函数最值题目及答案_关于函数的习题及答案
  17. 微信小程序之图书借阅系统(含源码+论文+答辩PPT等)
  18. 如何关闭ios模拟器
  19. 蓝桥---超声波测距
  20. ios开发-文字绘制

热门文章

  1. 冲刺大厂毕业季求职指南--产品篇
  2. 张高兴的 UWP 开发笔记:定制 ContentDialog 样式
  3. 计算机知识脑筋急转弯,关于程序员的脑筋急转弯(附答案)
  4. 【巨人的肩膀】MySQL面试总结(一)
  5. oracle 索引表达式,Oracle 索引index那些事
  6. Android RxJava的使用
  7. 最全整理!37 个 Python Web 开发框架总结
  8. 04.区块链的那些事儿-以太坊中的 Patricia Tree
  9. JSON_CONTAINS
  10. 基于单片机的LED数码管循环移位显示