Fortify编写自定义规则原理
要编写有效的自定义规则,就必须熟悉一直的安全漏洞类别和通常与他们相关的函数类型。深入理解各类经常出现在特定类型漏洞的函数,有利于在编写自定义规则过程中能够准确地找到与安全相关的函数。任何一门语言,源代码审计工具fortify服务商,都有其庞大的开源框架和lib库。所以自定义规则,既要精通安全漏洞原理,又要熟练掌握一门或几门开发语言,一般自定义规则用的比较多的语言有java、C/C++、PHP等。其次必须识别与安全相关的函数,并熟悉这些函数的特性以此来确定能够体现各个函数具体行为和与之相关的漏洞类别的正确规则形式。一旦确定好了这种联系,使用自定义规则编辑器来创建规则就相对简单了。
Fortify自定义规则
1). 在fortify SCA安装的bin目录下找到打开自定义规则编辑器,d,如下图所示:
2). 打开编辑器后,选择File ——>Generate Rule,弹出规则向导框。
3). 自定义规则模板可以按照漏洞类型(Category)和规则类型(Rule Type)进行分类,不管是何种方式分类,这些模板大体上分为,fortify服务商,数据污染源tainted规则,数据控制流规则,数据传递规则,以及漏洞缺陷爆发的sink规则。只要理解了这些规则模板,源代码扫描工具fortify服务商,和开发语言的函数特征,建立规则就简单了。
4) .选择规则包语言,源代码扫描工具fortify服务商,点击next,然后填写报名,类名,函数名
5). 点击next,设置sink点
Foritfy SCA主要包含的五大分析引擎:
数据流引擎:跟踪,记录并分析程序中的数据传递过程所产生的安全问题。
语义引擎:分析程序中不安全的函数,方法的使用的安全问题。
结构引擎:分析程序上下文环境,结构中的安全问题。
控制流引擎:分析程序特定时间,状态下执行操作指令的安全问题。
配置引擎:分析项目配置文件中的敏感信息和配置缺失的安全问题。
特有的X-Tier?:跨跃项目的上下层次,贯穿程序来综合分析问题。
fortify服务商-华克斯由苏州华克斯信息科技有限公司提供。行路致远,砥砺前行。苏州华克斯信息科技有限公司致力成为与您共赢、共生、共同前行的战略伙伴,更矢志成为行业软件具有竞争力的企业,与您一起飞跃,共同成功!