我正在尝试对来自c#代码的sql和oracle文件进行强化扫描。我有一些文件夹,其中包含不同的oracle脚本文件,扩展名为.pls,.pkb& .ddl等
以下是我执行扫描所有文件的命令。
Command1:sourceanalyzer -b test –clean
命令2:
a)sourceanalyzer -b test -Dcom.fortify.sca.fileextensions.class=PLSQL C:\RapidWorkspace\TFS2\MFG-FDL-16_45418-20171114181758\PROD\RELEASE\**\*.*
b)sourceanalyzer -b test -Dcom.fortify.sca.fileextensions.pls=PLSQL C:\RapidWorkspace\TFS2\MFG-FDL-16_45418-20171114181758\PROD\RELEASE\**\*.*
Command3:sourceanalyzer -b test -scan -verbose -f Results.fpr
Command2 - > a)在这里我可以扫描.pls文件。即使它存在于我正在搜索的文件夹中。 Command2 - > b)此命令仅扫描.pls文件,但不扫描.pkb或其他oracle文件。
请帮我找一个可以一次扫描所有不同oracle扩展文件的命令。
先谢谢, 阿斯马贾
答案 0 :(得分:1)
最好的办法是修改fortify-sca.properties
文件以添加到新的文件扩展名中。
默认位置:C:\Program Files\HPE_Security\Fortify_SCA_and_Apps_17.10\Core\config\fortify-sca.properties
您需要修改几个地方:
1)添加文件名扩展名以映射到您的PLSQL文件,您可以看到第63行附近的现有文件:
com.fortify.sca.fileextensions.pks = PLSQL
com.fortify.sca.fileextensions.pkh = PLSQL
com.fortify.sca.fileextensions.pkb = PLSQL
在此行下方添加文件扩展名,例如:
com.fortify.sca.fileextensions.pls = PLSQL
com.fortify.sca.fileextensions.ddl = PLSQL
2)您添加的任何文件扩展名,您需要将它们添加到第26行附近的com.fortify.sca.DefaultFileTypes
列表中。(这是执行通配符搜索时使用的列表**/*
)
3)如果你总是要扫描PLSQL(而不是TSQL)并且你在Windows上,那么你可以将默认的SQL类型更改为PLSQL
。
这是第127行,名称com.fortify.sca.SqlLanguage
,并将TSQL更改为PLSQL。
如果要在以.sql
文件扩展名结尾的SQL文件上切换TSQL和PLSQL,请在翻译命令中添加以下命令之一:
-Dcom.fortify.sca.fileextensions.sql=PLSQL
-Dcom.fortify.sca.fileextensions.sql=TSQL
示例(摘自sourceanalyzer -h
):
sourceanalyzer -b mybuild -Dcom.fortify.sca.fileextensions.sql=PLSQL *.sql
sourceanalyzer -b mybuild -Dcom.fortify.sca.fileextensions.sql=TSQL *.sql
然后您可以运行以下命令
sourceanalyzer -b test -clean
sourceanalyzer -b test C:\RapidWorkspace\TFS2\MFG-FDL-16_45418-20171114181758\PROD\RELEASE\**\*.*
然后运行sourceanalyzer -b test -show-files
这将显示sourceanalyzer翻译的文件。理想情况下,您的PLSQL文件将位于此列表中。
要检查的另一个命令是sourceanalyzer -b test -show-build-warnings
这将显示sourceanalyzer在翻译文件时遇到的任何问题。