扫描代码缺陷Fortify SCA 是一个静态的、白盒的软件源代码安全测试工具。它通过内置的五大主要分析引擎:数据流、语义、结构、控制流、配置流等对应用软件的源代码进行静态的分析,分析的过程中与它特有的软件安全漏洞规则集进行全面地匹配、查找,从而将源代码中存在的安全漏洞扫描出来,并给予整理报告。扫描的结果中不但包括详细的安全漏洞的信息,还会有相关的安全知识的说明,以及修复意见的提供。

应用程序带来风险和安全漏洞

软件开发人员的日常工作

  • 开发新的特性和功能
  • 不断增加的复杂性
  • 各种繁杂事务
  • 截止时间
  • 不断缩水的预算
  • 产品延期

这些词会引起软件开发人员的强烈共鸣,因为这些正是他们在创建关键业务应用程序时所面对的需求。如今,开发应用程序涉及无数的要求,开发人员整天忙于应对这些要求,以致于无法优先考虑安全问题。而与此同时,威胁却在不断演变,攻击者越来越擅长利用薄弱的环节 – 应用程序。Security Fortify 提供包括静态代码分析在内的一整套技术,帮助保护企业的业务运营所依赖的应用程序,让其避开目前这种最大的安全风险。

Security Fortify 静态代码分析器

Security Fortify 静态代码分析器 (SCA)是一款静态应用程序安全测试 (SAST) 产品,可供开发团队和安全专家用于分析应用程序源代码,以发现安全漏洞。该产品会审核代码,帮助开发人员用更少的精力在更短时间内发现并解决问题。

Security Fortify SCA 使开发人员能够:

  • 在早期阶段频繁地扫描源代码
  • 在代码行中精确地找到漏洞的根本原因
  • 对结果进行关联并确定其优先级
  • 快速修复安全漏洞
  • 查看最佳实践,帮助他们以更安全的方式编写代码

为何Security Fortify SCA适合您

适合您的开发环境

Security Fortify SCA 支持各种开发环境、语言、平台和框架,能够在混合开发和生产环境中进行安全审核。

  • 23 种编程语言
  • 超过 836,000 个组件级 API
  • 检测超过 696 种独特的漏洞类别
  • 支持所有主流平台、构建环境和IDE
市场上精确度最高的产品之一

Security Fortify SCA 提供精确结果并检测极其广泛的问题,令其他静态测试技术望尘莫及。SCA 确定漏洞的优先级以提供详细而精确的行动计划,同时列出按风险高低排序的分类问题。该产品还遵循由Security Fortify 软件安全专家不断扩展和自动更新的最大且最完整的安全编码规则集。

易于使用

Security Fortify SCA 适合您的现有开发环境。它是一款灵活的命令行静态代码分析器,可通过脚本、插件和 GUI工具集成到任何环境,因此开发人员可以快速、轻松地上手和运行。

可扩展到任何应用程序

应用程序的来源多种多样,包括内部、外包、第三方、开源、移动和采购,因此测试和维护所有这些应用程序类型的安全完整性是一种挑战。借助对业界大部分编程语言的支持,SCA 可以发现所有类型应用程序中的风险,并随着企业需求的增长纵向扩展。

内部或按需
Security Fortify SCA 以多种交付模式提供,以满足不断变化的需求。
  • 内部 – Security Fortify SCA,用于在现场部署、管理和运行静态应用程序安全测试程序。
  • 按需 – Security Fortify on Demand,一项应用程序安全测试托管服务,以轻松而精确的方式来启动静态、动态和移动安全测试,无需前期投资,可作为企业安全团队的一种扩展。
Fortify 对软件安全漏洞的分类
漏洞类别

就软件安全而言,对于严重漏洞的定义并没有一致的标准。有许多企业发布了自己对头号漏洞的解释,造成了这个概念的理解差异和混乱。为了帮助开 发人员了解导致形成安全漏洞的常见编码错误类型,Fortify 编写了 The SevenPernicious Kingdoms(编码七大害),在其中统一了漏洞的组织分类,并将它们对应到 OWASP、SANS、CWE 和 FISMA等标准。

什么是静态代码分析?

静态代码分析可高效发现源代码中的安全漏洞。静态代码分析应在开发周期的早期阶段进行,同时在整个应用程序生命周期不断进行。这种分析可立即向开发人员反馈开发时在代码中引入的问题。

统计信息
  • 80 % 以上的安全漏洞出现在应用程序层
  • 严重的 Web 安全漏洞影响几乎一半的 Web 应用程序
  • 52% 的 Web 应用程序遇到过输入验证、跨站点脚本和 SQL 注入的问题
  • 33% 的应用程序从未进行过安全漏洞测试。
支持的语言
  • ABAP/BSP
  • ActionScript/MXML (Flex)
  • ASP.NET、VB.NET、C# (.NET)
  • C/C++
  • Classic ASP(带 VBScript)
  • COBOL
  • ColdFusion CFML
  • HTML
  • Java(包括 Android)
  • JavaScript/AJAX
  • JSP
  • Objective-C
  • PHP
  • PL/SQL
  • Python
  • T-SQL
  • Ruby
  • Swift
  • Visual Basic
  • VBScript
  • XML
支持的 IDE
  • Eclipse
  • IntelliJ Ultimate
  • IntelliJ Community Android Studio
  • IBM Rational Application Developer (RAD)
  • IBM Rational Software Architect (RSA)
  • Microsoft® Visual Studio
支持的构建工具
  • Ant
  • Jenkins
  • Maven
  • MSBuild
  • Xcodebuild

Fortify SCA 国内主要金融行业用户列表

国内主要银行客户:

中国建设银行, 招商银行,国家开发银行,中国进出口银行,兴业银行,中国银联开发中心,上海银联商务有限公司,上海银行,浦发银行,厦门银行,广州农商银行,北京银行,包头商业银行,中信银行,中国邮政储蓄银行,中国人民银行清算中心,平安银行,天津银行,天津农商行,渤海银行,哈尔滨银行,长沙银行,宁波银行,富滇银行,农信银资金清算中心,山东省城市商业银行合作联盟有限公司,内蒙古银行,南京银行,德州银行,江苏农信,富邦银行,福建农商银行,华西银行

其他金融行业主要客户:

中国人寿,太平保险,中国平安集团,新华人寿,前海人寿,上海黄金交易所,中银消费金融有限公司

Fortify SCA 国内金融行业用户案例分析

中国建设银行Fortify SCA案例

中国建设银行是国有四大商业银行之一。中国建设银行主要经营领域包括公司银行业务、个人银行业务和资金业务,为客户提供全面的金融服务。中国建设银行拥有广泛的客户基础,与多个大型企业集团及中国经济战略性行业的主导企业保持银行业务联系,营销网络覆盖全国的主要地区,市值居全球上市银行第一。

中国建设银行HP Fortify SCA的具体部署:

  • 1.安全测试标准:所有项目上线之前,提交Fortify SCA测试报告。Fortify SCA分析出来的高危问题必须进行修复,否则不允许验收上线。高危问题的定义是以中国建设银行联合安全咨询专家根据Fortify SCA的测试结果结合行业特性和建设银行的实际情况,制定出安全测试标准和代码质量基线。
  • 2.安全测试标准制定者:由中国建设银行安全处
  • 3.Fortify SCA实施范围:全行各个开发中心以及分行开发处
  • 4.安全测试执行者(Fortify SCA使用者):全行各个开发中心以及分行开发团队
  • 5.安全漏洞修复者:全行各个开发中心以及分行开发处的开发人员
模式简介:

由中国建设银行安全处根据企业对软件安全的需求,建立适当的软件源代码安全策略,或者说是软件源代码安全测试标准。可以形象地比喻成一个“GATE”。再由建设银行内部的测试部门或其它部门使用Fortify SCA测试工具对企业所有的软件源代码进行安全测试。测试结果按测试标准审计,满足测试标要求的软件被视为安全的软件,通过安全测试。没有满足需求的软件返回软件开发团队对测试结果中的安全漏洞进行修复。然后进行再次安全测试,直至测试通过。

模式说明:
  • (1)软件安全测试或审计人员在项目发布前, 对开发人员提交的项目代码用HP Fortify SCA进行扫描分析,并给予审计。
  • (2)审计通过的项目进入下一阶段的其它测试或者正常发布。
  • (3)审计人员将项目的审计结果报告于开发人员(或外包商)对其漏洞进行修复。
  • (4)审计人员将每一次扫描审计的结果保存于HP Fortify Software Security Center Server中,便于开发人员,审计人员以及管理人员查看漏洞,了解项目漏洞程度,安全趋势等综合状况信息。

示意图说明:

  • 软件开发人员,负责软件的开发,并根据软件安全审计人员的审计结果,对漏洞进行修复。
  • 软件测试人员,使用HP Fortify SCA对项目的源代码进行安全测试。产生测试结果。提交给软件安全审计人员。由于Fortify SCA支持自动化定时启动测试,所以可无需测试人员。
  • 软件安全审计人员使用HP Fortify Audit Workbench(简称:AWB)对HP Fortify SCA的扫描结果进行分析,审计。可以将其审计结果通过HP Fortify Software Security Center Server将漏洞信息开发出来,供其他相关人员查看。
  • 软件安全和质量项目管理人员,主要查看HP Fortify Software Security Center Server中统计的各个项目的安全漏洞信息,及安全状况,管理监督其他角色人员的工作。协调相关事宜。

兴业银行HPE Fortify案例

兴业银行成立于1988年8月,是经国务院、中国人民银行批准成立的首批股份制商业银行之一,总行设在福建省福州市,2007年2月5日正式在上海证券交易所挂牌上市,注册资本127.02亿元。兴业银行是较早在中国上市的中小银行,公司的业绩也是一路领先于同行。根据美国《财富》中文版中国500强企业最新排名,公司排名第78位。随着业务的迅速拓展兴业银行从福建走向全国。目前,兴业银行已在全国各主要城市设立了88家分行、717家分支机构。 但是兴业银行的科技风险也随之大大增加。

2011年兴业银行科技部门的风险管理部就开始和 HP Fortify 产品的销售人员接触。 在进行了技术交流之后, 风险管理部门非常认可HP Fortify提出的软件安全的理念, 即从软件开发的流程和源头上尽可能地杜绝安全漏洞和规避风险。风险管理部门的职责是制定各种减少和规避科技风险的政策和流程, 部门规模较小,没有任何执行的职能。

当时兴业银行的软件开发主要依托几个固定的外包企业, 其中规模比较大的是福建本地的新大陆公司。 这些外包企业会派部分开发人员长驻银行, 科技部指派专门的人员对项目进行管理, 并且有专门的测试小组, 对项目进行集成和验收阶段的测试。 当时软件源代码的测试并没有强制执行, 源代码的安全测试更是一块空白。在初期 软件开发部门并没有意识到构件在软件开发过程中构件安全体系的重要性,但是作为主要集成商的新大陆公司却第一时间认识到软件安全的重要性, 并成为了随之推动的力量之一。 由于科技部内体制和工作的限制,实施软件安全的具体部门和人员也无法落实,2011年风险管理部门单方面推动实施软件安全的项目无法得到上级的批准。 此事就被暂时搁置了起来。

2011年兴业银行的高层向投资人提出了转型底年计划,2011-2015年是兴业银行实现转型新突破、发展新跨越的关键时期。 在兴业银行公布的六条战略转型策略中,第四条即为改进加强风险管理与内部控制,科技兴行。中国银监会也在2010年以后加强了科技风险方面的定期安全检查。

2012年科技部的风险管理部门重新启动了软件安全的项目。 在经过了内部的协商以后, 软件开发部门接受了风险管理部门为了他们购买HP Fortify源代码安全扫描软件的建议, 预算和资产由风险管理负责,产品的使用和审计归开发部的项目组负责。 鉴于HP Fortify自带的安全漏洞分类为国际标准, 兴业银行在初期产品使用中会采用产品自带的检测分类标准和修复建议。在今后的使用中会逐步形成自己的检测标准, 并可能利用HP Fortify SCA工具的拓展性编写自己的规则。开发部门对项目的检测程度则按照风险管理部基于软件安全方面的总体指导意见来决策。 这个流程既满足了开发和风险管理部门的职能,又是开发部门获得了显而易见的工作成效, 提高了软件产品的安全性; 还使风险管理部门对自己制定的某些政策的执行效果有了明显的考量。 对于兴业银行的科技补而言, 更是大大降低了企业应用安全风险, 增强了部门的信心。

天津银行HPE Fortify案例

天津银行是中国首批获准组建的5家城市合作银行之一,作为一家品牌综合影响力不断扩大的地方银行,天津银行自成立以来,一直注重为用户提供专业、安全、可靠的金融服务和产品。近年来,他们更是通过部署HP Fortify产品,进一步完善了系统安全测试流程,大幅提升了测试团队查找软件安全漏洞的效率,降低系统在实际运行中可能存在的巨大风险,从而真正为最终用户提供安全周到的金融产品。

目标

天津银行要在有限的人员投入下保证系统质量、快速交付应用服务,纯手工人工非自动化的方式已然不能适应业务的快速变化,所以亟需要采用专业的自动化测试工具,通过一组全面规则、测试机制在软件开发、测试过程中发现和管理软件的安全隐患,进而提升审核效率。

方法

HP Fortify在业界拥有很好的用户口碑,国内许多金融企业也广为应用这款产品进行软件安全测试。HP Fortify是一个静态的软件源代码安全测试工具,拥有最全面的安全代码规则包,支持市场上最流行、最多样化的编程语言,安全漏洞检查也最为彻底。成熟领先的产品、丰富的实施经验、专业的服务团队让天津银行锁定惠普。

IT 增益

对源代码进行安全漏洞扫描时省时省力,从整个代码中轻松找出安全问题,及时修正漏洞

业务成效

代码审核更规范、更精确,提升代码审核效率

满足上级监管要求

确保软件质量,降低企业风险

广州农村商业银行HPE Fortify案例

广州农村商业银行总行设在广州。目前,总行内设21个部门,下辖373个支行,263个分理处,营业网点遍布广州城乡,网点数列广州地区银行同业机构首位,业务规模位居全国农商行前三甲,在广州地区位列工、农、中、建四大国有商业银行之后,居第五位,并成功入选国际权威杂志英国《银行家》2010年全球银行业1000强并排名第377位,在国内84家上榜银行中排名第22位,国内新上榜32家银行中排名首位。经国家人力资源和社会保障部批准,广州农商银行设立了博士后工作站,成为国内首家设立博士后工作站的地方性银行机构。

广州农商银行业务应用系统的主要操作系统有Windows、 Linux 、AIX等,应用程序代码主要为有C/C++、Java等多种语言。HP Fortify产品部署实施后加强了广州农商银行业务系统信息安全管理工作、规范业务支撑系统应用代码开发、杜绝应用系统代码漏洞,通过源代码审计工具有效的解决代码存在的安全漏洞问题,加强代码漏洞的分析审计能力。通过HP Fortify产品的运用,实现应用代码的集中管理、集中扫描、测试、审计。利用源代码审计工具HP Fortify SCA内置的业界最庞大的安全编码规则包,可以快速全面分析源代码,准确提示应用存在的安全隐患并提供有效解决建议,准确提供应用代码审计报告。根据审计报告结果及问题定位,及时发现代码中的安全漏洞,并修补解决软件代码的安全隐患。从而有效的提高了广州农商银行业务系统的安全性和稳定性。

太平保险HPE Fortify案例

中国太平是当今中国保险业历史最为悠久的民族品牌,中国太平保险于2000年在香港联交所上市,是中国保险业第一家在境外上市的中资保险企业,已连续六年入选财富中国500强。作为中国太平内地客户最为集中的成员公司和中国太平最重要的市场接口,太平人寿在专注于个人寿险业务的同时,依托集团的综合性、多元化经营平台,更可间接为个人及团体客户提供一揽子金融服务。目前,公司注册资本金37.3亿元人民币,总部设在上海。

近几年来,随着信息技术的快速发展,建设安全、高效、快捷的信息系统,是目前国内保险业务系统信息化建设的重要目标。 随着保险业务系统信息化的不断丰富和发展,同时也受到了越来越多的安全威胁。太平保险通过HP Fortify产品的运用,实现了应用代码的集中管理、集中扫描、测试、审计。利用源代码审计工具HP Fortify SCA内置的业界最庞大的安全编码规则包,可以快速全面分析源代码,准确提示应用存在的安全隐患并提供有效解决建议,准确提供应用代码审计报告。根据审计报告结果及问题定位,及时发现代码中的安全漏洞,并修补解决软件代码的安全隐患。从而有效的提高了太平保险业务系统的安全性和稳定性。

扫描应用系统漏洞WebInspect是一个业界最权威的黑盒扫描工具,具有独特的专利技术,采用了突破性自动测试技术。最全面、最权威的漏洞库,可以模拟黑客的网络攻击行为,从而发现应用系统的漏洞。这是一种自动化动态测试工具,可模拟真实的黑客技术和攻击,支持全面动态地分析错综复杂的Web应用和服务。动态和运行时分析:超越黑盒测试,集成了动态和运行时分析,可更加快速地找到并修复更多漏洞。简化了技术:优化测试资源,同步爬网等先进技术支持初级安全测试员执行专业级测试。合规性管理:管理部门可轻松了解有关漏洞、趋势、合规性管理和投资回报的信息。 可清楚地向开发部门传达每个漏洞的详细信息及优先顺序。集成:利用 HP ALM 和质量中心及其他安全测试和管理系统的预置集成。

WebInspect 是业界领先的 Web 应用程序安全评估解决方案,旨在全面分析当今复杂的 Web 应用程序和 Web 服务以发现安全漏洞。凭借 WebInspect Agent 提供的广阔技术覆盖范围和应用程序运行时可见性,WebInspect 可提供最广泛的动态应用程序安全测试 (DAST) 覆盖范围,并可检测黑盒安全测试技术经常检测不到的新型漏洞。

图 1:实时动态扫描可视化
扫描更快,效果更好

Security WebInspect 可在运行的应用程序中找出安全漏洞并确定其优先级,以交互方式传递重现和修复所发现的问题需要的安全知识。通过与其他Fortify解决方案协作并和慧与质量中心以及慧与应用程序生命周期管理 (ALM) 集成,WebInspect 的一流知识库可提供关于所检测到漏洞的全面详细信息、该漏洞被利用后会造成的影响,以及快速而精确地定位和修复问题所需的最佳实践和编码示例,所有这些都发布在开发人员的缺陷管理解决方案中。

通过早期频繁的动态扫描降低风险

安全漏洞在 SDLC 中发现的越早,修复漏洞的费用就越低。WebInspect 为安全专家和安全新手提供了强大的功能和知识,帮助他们在运行的应用程序中快速识别关键的高风险安全漏洞、确定其优先级并进行验证。

持续监控

Security WebInspect 企业版是成功管理大规模动态应用程序安全测试计划的关键。通过识别并跟踪导致最大风险的站点,它可以帮助检查安全趋势并遵从内部和外部安全策略与法规。WebInspect 企业版使安全和管理团队能够清晰了解相关情况,从而定期监控应用程序,及时发现安全状况的变化。应用程序的发布经常绕过安全措施,不经意间使公司暴露于风险之中。借助 WebInspect 企业版,每个站点可被 WebInspect 反复扫描,而结果被发送至Fortify 软件安全中心的集中漏洞管理。

图2:用来精确定位和修复问题的全面详细信息
主要优势

利用更加切实可行的信息加快安全性的提高

WebInspect 以交互方式传递重现和修复问题所需的安全知识。它提供关于漏洞的全面数据(代码行详细信息和请求中的攻击字符串)、所检测到的漏洞的影响、补救建议,以及快速而精确地定位和修复问题所需的最佳实践和编码示例。提升整个企业的安全知识水平

WebInspect 具有功能最强大的报告系统,能够以快速、灵活且可扩展的方式传递结果。借助 WebInspect 的报告设计器,您可以开发和生成自定义的报告,向主要的利益相关方提供相关信息。WebInspect 提供了交互式漏洞审查和再测试功能,可帮助安全团队验证问题并对开发过程中的问题修复进行回归测试。从安全测试到开发的封闭反馈循环提高了整个企业的总体安全水平。

简化法律、法规和架构要求的合规性

针对与应用程序安全相关的所有主要法规,WebInspect 包含众多预配置的策略和报告,包括支付卡行业数据安全标准 (PCI DSS)、开放 Web 应用程序安全项目 (OWASP) Top 10、ISO 17799、ISO 27001、美国健康保险流通与责任法案 (HIPPA) 等。通过合规性管理工具可支持自定义现有策略或创建新策略。

利用自动化获得事半功倍的效果

WebInspect 可提高 DAST 的工作效率,同时降低安全漏洞评估和补救的成本。使用同步扫描和审核、并行扫描以及卓越的报告功能等高级技术,即便是安全测试新手也能掌握功能强大的扫描技术。

快速启动,按需扩展。

WebInspect 作为一款许可产品,通过 Fortify on Demand 作为一项托管服务提供,可在构建和扩展动态安全测试计划时提供最大的灵活性。

管理企业级应用程序安全计划

WebInspect 企业版可管理大规模动态应用程序安全测试计划。其仪表板为管理人员提供全面的信息,以识别和跟踪关键漏洞、确认补救措施、审查进度和趋势并遵从内部和外部安全策略与法规。WebInspect 企业版与 Fortify 软件安全中心集成,以实现对整个软件安全保证 (SSA) 计划的集中管理。

主要功能

WebInspect Agent – 提供内部上下文

  • 集成的动态代码和运行时分析可发现更多漏洞并更快速地修复。
  • 在动态扫描期间观察应用程序在代码层对攻击的反应。
  • 识别并扫描应用程序的更多内容,以扩展对攻击面的覆盖范围。
  • 为开发人员提供切实可行的详细信息,例如代码行详细信息、堆栈跟踪和 SQL 查询

简化复杂技术

  • 使用同步扫描和审核以及并行扫描等高级技术,即便是安全测试新手也能掌握功能强大的扫描技术。
  • 支持最新的 Web 技术,包括 HTML5、JSON、AJAX、JavaScript 等等。
  • 能够测试移动优化的网站以及本地移动的 Web 服务呼叫。
  • 高级宏记录技术和灵活的身份验证处理可改进复杂应用程序的会话管理。
  • Web 服务安全设计工具可用于配置 Web 服务安全测试。
  • 创新的应用程序架构分析器可协助调整扫描配置,并提供更改建议以扩大扫描范围并提高扫描精度。
  • 引导性扫描可引导用户逐步创建扫描。通过提供 WebInspect 精确定位应用程序漏洞所需的信息,该向导使新手和专家均能提高测试效果。

切实可行的补救与合规性报告

  • 运行关于漏洞趋势、合规性管理和 RO 的管理报告。与开发人员就每个漏洞的详细信息和优先级进行沟通。
  • 针对所有主要的行业和法规标准运行合规性报告,这些标准包括 PCE、SOX、ISO 和 HIPAA。
  • 创建灵活、可扩展且可伸缩的报告,以适合您的业务需求。
  • 根据上下文突出显示 HTTP 请求和响应,使人立即注意到攻击和易受攻击的响应。
  • 不管是针对多个漏洞还是单个漏洞,都能轻松再测试整个站点。
  • 扫描比较允许在两次扫描之间进行漏洞增量分析比较。

通过集成实现自定义的工作流

  • 借助与慧与应用程序生命周期管理 (ALM) 和质量中心现成可用的集成功能,以及经由 XML 导出数据以与其他安全管理系统进行开放式集成,实现与您缺陷管理流程的整合。
  • 使用 WebInspect 企业版集中管理您的安全情报。
  • 通过 XML 进行广泛的数据导出以与其他安全管理系统进行开放式集成。
  • 使用 WebInspect API 自动执行常规安全任务。

关于 Security Fortify

依托业界领先的安全研究,Security Fortify 可提供最全面的静态和动态应用程序安全测试技术,以及运行时应用程序监控和保护。解决方案可以在内部部署,也可以作为一项服务部署来构建可扩展且敏捷的软件安全保证计划,以满足当今 IT 组织不断演变的需求。

关于 Security

慧与是安全与合规性解决方案的领先提供商,可帮助现代企业降低其混合环境中的风险并抵御高级威胁。基于来自Security ArcSight、Security Fortify 和Security Data Security 的市场领先产品 Security Intelligence Platform 可独家提供高级关联和分析、应用程序保护以及数据安全,从而保护当今混合 IT 基础设施免遭复杂的网络威胁。