代码审计工具之Fortify安装以及初步使用

2023-11-16

目录

1 Fortify

Fortify工具介绍

1 Fortify

Fortify工具介绍

Fortify SCA 是一个静态的、白盒的软件源代码安全测试工具。它通过内置的五大主要分析引擎:数据流、语义、结构、控制流、配置流等对应用软件的源代码进行静态的分析,分析的过程中与它特有的软件安全漏洞规则集进行全面地匹配、查找,从而将源代码中存在的安全漏洞扫描出来,并给予整理报告。

安全编码规则中的规则分析受支持语言的核心和扩展的API包中的函数,并将分析结果记录在Fortify SCA中。每一个问题的解释包含了对问题的描述和建议的解决方案,一边更好的解决程序中的漏洞和缺陷。也可以通过创建自定义规则包来准确地分析特定的应用程序,验证专门的安全规则以及细化Fortify SCA所报告的问题,也可以快速导出审计报告。

Fortify工具下载

地址一

Fortify SCA源代码扫描工具 | 老鬼

这个地址我在安装的时候,出现问题了,所以我用地址二进行安装的。两个安装步骤都差不多,接下来主要根据地址二下载的安装包进行说明。

地址二:

这个我是在网站上面直接找的资源,原文链接:

Fortify 代码扫描安装使用教程_回忆式~过去.的博客-CSDN博客_fortify安装

    1. Fortify安装过程

 

图1.1

如上图1.1所示,下载完成,接下来把文件解压到心仪的位置,准备安装。

图1.2

解压完成,根据图1.2的指示进行下一步安装。

图1.3

点击之后,如图1.3,点击next进行下一步操作。

 

图1.4

点击下一步之后,进入如图1.4所示的界面,需要选择软件安装路径,选择自己心意的路径即可。

图1.5

然后出现如上图1.5所示的界面,根据自己的需求进行选择即可。

图1.6

选择完成之后点击下一步,进入如图1.6,会自动识别文件后缀,看一下对不对(一般情况下都没有问题,直接点击下一步即可)

图1.7

如上图1.7所示,可修改可不修改(完全根据自己的需求,也可以直接点击下一步)

图1.8

接下来几步保持默认即可。(如图1.8)

图1.9

不断的下一步(我这应该少了一个图,不过不影响,你就直接下一步就行),然后到了安装界面如图1.9所示。

    1. Fortify破解过程

图1.10

打开解压后的软件目录,如图1.10所示。根据上图所示的文件包中的路径,把规则库复制下来,粘贴到软件的安装路径(下图)

图1.11

把图1.10所示的规则库,粘贴到软件的安装目录如图1.11所示的文件夹下面(注意,是软件的安装目录)

    1. Fortify简单使用

图1.12

破解完成之后,在开始菜单当中找到上图1.12所示的图标(也就是这个软件的图标,把他点开)

图1.13

接下来就开始使用软件了,打开之后如上图1.13所示,是它的首页(根据地址一安装的话因为版本不一样所以界面可能也有所差别),记得选择Advanced Scan然后就会有一个导入文件的界面,把自己想要审计的源代码文件导入即可。

图1.14 

选择好源代码路径,如上图1.14所示,接下来我会测试一下DVWA靶场的代码漏洞。

图1.15

点击下一步之后,等待软件审计即可。如图1.15

图1.16

如图1.16是审计好之后的界面我们可以看到左侧就是漏洞列表,右侧提供了源代码,直接定位到源代码位置,这里我们分析一下SQL注入漏洞。

我们可以通过图1.16看到对于传入的数据id没有做任何的过滤,所以我们采用最简单的探测语句就可以验证一下,接下来打开DVWA靶场(初次接触的小伙伴们可以查看我之前的笔记有DVWA漏洞的全级别通关,详细的介绍了DVWA靶场)

图1.17

如图1.17我们成功利用了SQL注入漏洞,语句是1' and 1=1 order by 2(根据SQL手工注入的原理,既然现在我们已经通过代码审计知道了未对参数做任何的过滤,这里存在漏洞那么我们可以跳过之前的探测过程,直接利用探测列数的语句来验证漏洞,也可以通过查看数据库版本的语句)

图1.18

图1.17已经成功利用完成,接下来我们验证下一个如图1.18所示,只对于输入的位数进行了限制,那么我们在注入过程中只需要把后面的语句注释掉即可。

如图1.19

我们利用语句1' and 1=1 order by 1#,来验证漏洞,如图1.19,成功利用了这个漏洞。

以上就是Fortify的简单利用,只是简单的说明了一下SQL注入漏洞,之前已经利用其他工具对其他的漏洞也进行了简单的介绍(我之前的笔记中也有哦,大家可以自行翻阅)

接下来就要导出报告了。

图1.20

 

如图1.20所示进行操作。

 

图1.21

如图1.21选择报告的格式,路径以及导出的漏洞类型(在这里我们选择TOP 10即可,也可以试试别的)

图1.22

选择完成之后,等待如图1.22成功导出报告。

图1.23

我们可以根据文件的位置,找到导出的报告如图1.23所示,完成。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

代码审计工具之Fortify安装以及初步使用 的相关文章

随机推荐

  • 20道常见的kafka面试题以及答案

    JAVA面试宝典 搞定JAVA面试 不再是难题 系列文章传送地址 请点击本链接 目录 1 kafka的消费者是pull 拉 还是push 推 模式 这种模式有什么好处 2 kafka维护消息状态的跟踪方法 3 zookeeper对于kafk
  • jq微信账号正则表达式

    微信号官方规则 必须以字母或下划线开头 可以使用6 20位数字 字母 下划线 减号或它们的组合 正则表达式 a zA Z a zA Z0 9 6 20 如有其它问题欢迎大家留言
  • excel批量提取多个文件单元格_EXCEL高手专用函数Indirect,快速提取多个工作表,特定单元格数据...

    Indirect间接引用函数 你应学会的跨表引用技能 点关注 交朋友 大家共同学技术 几天前 看到有人问 excel中有哪些技能是你以前不知道 但是后来知道了却一直没有忘记的 我首先想到了 Indirect函数 使我的工作效率提高了百倍 千
  • vue常用知识总结

    vue常用知识总结 vue简介 vue 响应式原理 Object defineProperty vue 的作者 尤雨溪 java 出身 vue 是什么 以数据驱动视图的单页面 spa 渐进式 MVVM 框架 特性 数据双向绑定 模块化开发
  • Embarcadero Dev-C++第一次使用注意事项

    Embarcadero Dev C 第一次使用注意事项 Embarcadero Dev C 简介 2000年左右 Bloodshed software开发了Dev C 提供轻量 免费 开源的C C IDE Dev C 是最适合初学C 语言的
  • 基于stm32单片机自动灭火火灾报警装置Proteus仿真

    资料编号 102 下面是相关功能视频演示 102 基于stm32单片机自动灭火火灾报警装置Proteus仿真 仿真 源码 全套资料 功能介绍 火焰传感器的原理 是通过感知外部特殊波段光照强度的突变来判断是否出现火灾 该仿真采用ADC采集光照
  • Maven 知识点总结

    文章目录 Maven 1 Maven 坐标 2 Maven 仓库 3 Maven 依赖 依赖配置 依赖范围 依赖调解原则 排除依赖 4 Maven 生命周期 5 Maven 聚合与继承 Maven Maven是一个项目管理工具 它包含了项目
  • c# MACD 算法实现

    此算法在自己WP7应用中 用到 同花顺 算法 DIFF EMA CLOSE SHORT EMA CLOSE LONG DEA EMA DIFF M MACD 2 DIFF DEA Zero 0 关键点是第一天的数据 如果是区间的数据 区间第
  • Bootstrap弹出模态框

    弹出模态框 Modal 使用Bootstrap的JavaScript模态框插件可以为您的网站添加醒目的提示和交互 用于通知用户 访客交互 消息警示或自定义的内容交互 如考试问答场景 译者注 运行原理 在开始使用Bootstrap模态框组件前
  • CMDB功能分析与实现方案

    CMDB功能分析与实现方案 CMDB系统的主要功能 1 用户管理 记录测试 开发 运维人员的用户表 2 业务线管理 记录业务的详情 3 项目管理 指定此项目属于那一条业务线 4 应用管理 指定此应用的开发人员 5 主机管理 记录主机管理员
  • 软件项目管理和实施方案

    一 实施周期 自合同签订或约定之日起xxx个日历日内完成项目需求调研 软件开发及调试工作 实现系统上线运行 并完成项目验收 二 项目进度 一 项目计划 根据本公司对项目建设工期的整体计划 本公司将整个系统的建设工作按照计划进行详细分工 把任
  • PCL-OpenCV冲突的解决方案

    测试LIO SAM 编译期报错 error field param k has incomplete type flann SearchParams 查了github 把 usr include pcl 1 7 pcl kdtree kdt
  • Dialog的弹出位置控制

    Dialog一般出现都是屏幕中心 但有的时候我们希望它能在屏幕左侧 或者右侧亦或者是屏幕顶部 这时候我们就需要用的Dialog getWindow getAttributes 方法啦 dialog new Dialog getActivit
  • Qwt使用总结,初步整理

    最近研究了一些Qwt 至此总结Qwt的认识以便以后的备忘 从什么方面开始说起呢 从这个类是什么 可以用来做什么 关于Qwt的简介就不说了 主要说说其中用到的几个类吧 QwtPlot 是一个2D画图控件 Widget 继承于QFram和Qwt
  • Mybatis Plus 3.1.0枚举类处理器重写TypeHandler

    我的环境 Springboot 2 13 Mybatis Plus 3 1 Oracle 11g 驱动版本oracle6 1 我尝试用 Mybatis Plus 3 1 以上版本 如 3 2 3 3 时 oracle6 驱动无法适配 2 枚
  • JAVA线程的中断

    每个线程都有一个boolean类型的标志来表明线程是否发生了中断 并且包含了中断相关的函数 interrupt 用于设置线程的中断状态为true isInterrupted 用于返回线程的中断状态 interrupted 方法用于清除中断状
  • cast函数_QT槽函数获取信号发送对象

    Qt 在槽函数中获取信号发送对象 Qt中提供了一个函数 qobject cast QObject object 可以通过这个函数判断信号发出对象 Qt 帮助文档的解释 Returns the given object cast to typ
  • 通讯录(C语言)

    结合指针 结构体 枚举 实现增删改查 test c 用于测试主函数 contact h 用于函数的声明 contact c 用于函数的实现 test c 主要思路 用do while 实现基本分支结构 并用枚举类型 规定出选择以增加代码可读
  • yarn创建vue项目报错解决

    1 使用yarn create vue创建项目时报如下错误 2 原因是由于安装包目录和bin目录不在统一磁盘下 查看方法 查看bin目录 yarn global bin 查看安装包目录 yarn global dir 3 解决 1 将yar
  • 代码审计工具之Fortify安装以及初步使用

    目录 1 Fortify Fortify工具介绍 1 Fortify Fortify工具介绍 Fortify SCA 是一个静态的 白盒的软件源代码安全测试工具 它通过内置的五大主要分析引擎 数据流 语义 结构 控制流 配置流等对应用软件的