前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【SDL实践指南】Foritify使用介绍速览

【SDL实践指南】Foritify使用介绍速览

作者头像
Al1ex
发布2023-03-29 14:18:27
1.9K0
发布2023-03-29 14:18:27
举报
文章被收录于专栏:网络安全攻防网络安全攻防
基本介绍

Fottify全名叫Fortify Source Code Analysis Suite,它是目前在全球使用最为广泛的软件源代码安全扫描,分析和软件安全风险管理软件,该软件多次荣获全球著名的软件安全大奖,包括InforWord, Jolt,SC Magazine,目前众多世界级的软件开发企业都在使用该软件方案在他们的开发团队中加速查找软件安全漏洞的效率,监视和

管理软件安全的风险

产品组成

Fortify SCA由内置的分析引擎、安全编码规则包、审查工作台、规则自定义编辑器和向导、IDE插件五部分组成

  • Fortify Source Code Analysis Engine(源代码分析引擎):采用数据流分析引擎,语义分析引擎,结构分析引擎,控制流分析引擎,配置分析引擎和特有的X-Tier跟踪器从不同的方面查看代码的安全漏洞,最大化降低代码安全风险
  • Fortify Secure Code rules:Fortify(软件安全代码规则集):采用国际公认的安全漏洞规则和众多软件安全专家的建议,辅助软件开发人员、安全人员和管理人员快速掌握软件安全知识、识别软件安全漏洞和修复软件安全漏洞,其规则的分类和定义被众多国际权威机构采用,包括美国国土安全(CWE)标准、OWASP,PCI等
  • Fortify Audit Workbench(安全审计工作台):辅助开发人员、安全审计人员对Fortify Source Code Analysis Engines(源代码分析引擎)扫描结果进行快速分析、查找、定位和区分软件安全问题严重级别
  • Fortify Rules Builder(安全规则构建器):提供自定义软件安全代码规则功能,满足特定项目环境和企业软件安全的需要
  • Fortify Source Code Analysis Suite plug in(Fortify SCA IDE集成开发插件):Eclipse, WSAD, Visual Studio集成开发环境中的插件,便于开发者在编写代码过程中可以直接使用工具扫描代码,立刻识别代码安全漏洞,并立即根据建议修复,消除安全缺陷在最初的编码阶段,及早发现安全问题,降低安全问题的查找和修复的成本
产品功能

源代码安全漏洞的扫描分析功能

  • 自定义安全代码规则功能
  • 独特的代码结构分析技术从代码的结构方面分析代码,识别代码结构不合理而带来的安全弱点和问题
  • 独特的控制流分析技术精确地跟踪业务操作的先后顺序,发现因代码构造不合理而带来的软件安全隐患
  • 独特的配置流分析技术分析软件的配置和代码的关系,发现在软件配置和代码之间,配置丢失或者不一致而带来的安全隐患
  • 独特的数据流分析技术,跟踪被感染的、可疑的输入数据,直到该数据被不安全使用的全过程,并跨越整个软件的各个层次和编程语言的边界
  • 独特的语义分析技术发现易于遭受攻击的语言函数或者过程,并理解它们使用的上下文环境,并标识出使用特定函数或者过程带来的软件安全的隐患

源代码安全漏洞的审计功能:

  • 安全审计自动导航功能
  • 安全问题查询和过滤功能
  • 安全问题描述和推荐修复建议
  • 安全问题定位和问题传递过程跟踪功能
  • 安全漏洞扫描结果的汇总和问题优先级别划分功能
  • 安全问题审计结果、审计类别划分和问题旁注功能
支持语言

FortifySCA支持的21语言:

  • asp.net
  • VB.Net
  • c#.Net
  • ASP
  • VBscript
  • VS6
  • java
  • JSP
  • javascript
  • HTML
  • XML
  • C/C++
  • PHP
  • T-SQL
  • PL/SQL
  • Action script
  • Object-C (iphone-2012/5)
  • ColdFusion5.0 - 选购
  • python -选购
  • COBOL - 选购
  • SAP-ABAP -选购
分析引擎

Foritfy SCA主要包含的五大分析引擎:

  • 结构引擎:分析程序上下文环境,结构中的安全问题
  • 语义引擎:分析程序中不安全的函数,方法的使用的安全问题
  • 控制流引擎:分析程序特定时间,状态下执行操作指令的安全问题
  • 配置引擎:分析项目配置文件中的敏感信息和配置缺失的安全问题
  • 数据流引擎:跟踪,记录并分析程序中的数据传递过程所产生的安全问题
工作原理

Foritfy SCA首先调用语言的编译器或者解释器把前端语言(java c/c++)转换为一种中间媒体文件NST(Normal Syntax Tree)将其源代码的调用关系,执行环境,上下文等分析清楚,然后再通过上述的五大分析引擎从5个切面来分析这个NST,匹配所有规则库中漏洞特征,一旦发现漏洞就抓取下来,最后形成包含漏洞信息的FPR 结果文件,用AWB打开查看

安装流程

Step 1:下载安装包

Step 2:运行"Fortify_SCA_and_Apps_22.1.0_windows_x64.exe"安装Fortify SCA

完成安装:

工程扫描

Step 1:选择"Scan Java Project"选项扫描一个JAVA工程

Step 2:选择JAVA工程项目所使用的JDK版本和扫描结果展示

Step 3:进行扫描

Step 4:扫描结果如下

漏洞详情选项卡:

修复建议选项卡:

数据流图:

完成代码审计:

报告导出
OWASP TOP 10模板

OWASP TOP 10模板导出的报告可以很直观的反映当前扫描的工程中存在的OWASP TOP 10类型问题的总量,如果想要准确纤细的查阅哪些工程有哪些安全风险点则可以在扫描报告导出的时候勾选"Detailed Report"

导出报告如下:

Develop WorkBook模板

Develop WorkBookt模板很详细的导出了本次工程中涉及到源码安全问题,生成的报告可以很好的帮助研发人员对相应的安全漏洞问题进行定位和修复

导出后的报告如下:

文末小结

本篇文章介绍了如何使用Foritify扫描工程以及导出扫描结果到本地,并对常用的两个报告模板进行了简单的介绍说明~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-03-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 七芒星实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基本介绍
  • 产品组成
  • 产品功能
  • 支持语言
  • 分析引擎
  • 工作原理
  • 安装流程
  • 工程扫描
  • 报告导出
    • OWASP TOP 10模板
      • Develop WorkBook模板
      • 文末小结
      相关产品与服务
      腾讯云代码分析
      腾讯云代码分析(内部代号CodeDog)是集众多代码分析工具的云原生、分布式、高性能的代码综合分析跟踪管理平台,其主要功能是持续跟踪分析代码,观测项目代码质量,支撑团队传承代码文化。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档