扫码分享给我的朋友
MF Fortify SCA有6个分析器:数据流,控制流,语义,结构,配置和缓冲。 每个分析器都会发现不同类型的漏洞。
数据流量此分析仪检测潜在的潜在漏洞,这些漏洞涉及受到潜在危险使用的污染数据(用户控制输入)。 数据流分析仪使用全局,程序间污染传播分析来检测源(用户输入站点)和信宿(危险函数调用或操作)之间的数据流。 例如,数据流分析器检测用户控制的无限长度的输入字符串是否被复制到静态大小的缓冲区中,并检测用户控制的字符串是否用于构造SQL查询文本。
控制流程此分析仪检测潜在的危险操作序列。 通过分析程序中的控制流程,控制流程分析器确定一组操作是否以一定顺序执行。 例如,控制流程分析器检测使用时间的检查/时间问题和未初始化的变量,并在使用之前检查诸如XML读取器之类的实用程序是否正确配置。
结构这可以检测程序的结构或定义中潜在的危险缺陷。 例如,结构分析器检测对Java servlet中成员变量的分配,标识不使用静态final的记录器的使用,以及由于总是为false的谓词将永远不会执行的死代码的实例。
语义本分析仪在程序级别检测功能和API的潜在危险用途。 基本上是一个聪明的GREP。
配置此分析器在应用程序的部署配置文件中搜索错误,弱点和策略违规。
缓冲区此分析仪检测缓冲区溢出漏洞,涉及写入或读取比缓冲区容纳的数据更多的数据。