我们如何使用命令生成FortiFy报告???在linux上。
在命令中,我们如何只包含一些文件夹或文件进行分析,以及我们如何提供存储报告的位置。等
请帮忙......
谢谢, KARTHIK
答案 0 :(得分:8)
<强> 1。第1步(清理缓存)
scanid = 9999(可以是你喜欢的任何东西)
ProjectRoot = / local / proj / 9999 /
WorkingDirectory = / local / proj / 9999 / working
- (这个目录非常庞大,你需要&#34; rm -rf ./working& amp;&amp; mkdir ./working"在每次扫描之前,或者在这个目录下堆积字节代码并快速消耗你的硬盘)
log = /local/proj/9999/working/sca.log
源=&#39; /本地/凸出/ 9999 /源极/ SRC /**.* 39;
类路径=&#39;本地/凸出/ 9999 /源/ WEB-INF / lib中/ *罐; /local/proj/9999/source/jars/**.*; /本地/凸出/ 9999 /源极/类/**.* 39;
./sourceanalyzer -b 9999 -Dcom.fortify.sca.ProjectRoot=/local/proj/9999/ -Dcom.fortify.WorkingDirectory=/local/proj/9999/working -logfile /local/proj/working/9999/working/sca.log -clean
<强> 2。步骤#2(将源代码翻译为字节代码)
nohup ./sourceanalyzer -b 9999 -verbose -64 -Xmx8000M -Xss24M -XX:MaxPermSize=128M -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:+UseParallelGC -Dcom.fortify.sca.ProjectRoot=/local/proj/9999/ -Dcom.fortify.WorkingDirectory=/local/proj/9999/working -logfile /local/proj/9999/sca.log -source 1.5 -classpath '/local/proj/9999/source/WEB-INF/lib/*.jar:/local/proj/9999/source/jars/**/*.jar:/local/proj/9999/source/classes/**/*.class' -extdirs '/local/proj/9999/source/wars/*.war' '/local/proj/9999/source/src/**/*' &
总是unix后台作业(&amp;),以防你的服务器会话超时,它会继续工作。
cp:将所有已知的类路径放在此处以强制解析functiodfn调用。如果找不到功能,fortify将跳过源代码转换,因此以后不会扫描此部分。您将获得较差的扫描质量,但FPR看起来很好(报告的问题很少)。让所有依赖性jar都到位很重要。
-extdir:放置您不想在此处扫描的所有目录/文件。
最后一节,&#39;之间的文件&#39;是你的来源。
-64是使用64位java,如果没有指定,将使用32位,最大堆应该<1.3 GB(-Xmx1200M是安全的)。
-XX:与启动应用程序服务器中的含义相同。只使用这些来控制类堆和垃圾收集。这是为了调整性能。
-source是java版本(1.5到1.8)
第3。第3步(使用rulepack扫描,自定义规则,过滤器等)
nohup ./sourceanalyzer -b 9999 -64 -Xmx8000M -Dcom.fortify.sca.ProjectRoot=/local/proj/9999 -Dcom.fortify.WorkingDirectory=/local/proj/9999/working -logfile /local/ssap/proj/9999/working/sca.log **-scan** -filter '/local/other/filter.txt' -rules '/local/other/custom/*.xml -f '/local/proj/9999.fpr' &
-filter:文件名必须是filter.txt,不会报告此文件中的任何ruleguid。
规则:这是您编写的自定义规则。 HP rulepack位于FORTIFY_HOME / Core / config / rules目录
-scan:告诉强化引擎扫描现有scanid的关键字。如果您不更改代码,只需要使用不同的过滤器/自定义规则,您可以跳过步骤#2并仅执行步骤#3
<强> 4。步骤#4从FPR文件生成PDF(如果需要)
./ReportGenerator -format pdf -f '/local/proj/9999.pdf' -source '/local/proj/9999.fpr'