python项目的强化扫描

2024-09-28 21:03:44 发布

您现在位置:Python中文网/ 问答频道 /正文

为python文件生成Fortify文件。在

类似的问题是Fortify, how to start analysis through command,但它列出了java的步骤。在

要为python项目生成报告,必须使用-python path。 我试着按以下步骤做,但没有成功。在

第1步:清理、建造

sourceanalyzer -64 -Xms1024M -Xmx10000M -b -verbose -Dcom.fortify.sca.ProjectRoot=/local/proj/9999/ -Dcom.fortify.WorkingDirectory=/local/proj/9999/working -logfile  /local/proj/working/9999/working/sca.log  -clean

第二步:扫描:这个步骤应该生成fpr文件

^{pr2}$

这没有生成任何fpr文件。 第二步给出警告:

[warning]: The -f option has no effect without the -scan option
[warning]: You may need to add some arguments to the -python-path argument to SCA.

我不确定我是否使用了正确的命令。在

  1. 如何确保目录和子目录中的所有python文件都被扫描?在
  2. 有没有添加多个python路径的选项?在

Tags: 文件thetopathlocal步骤workingproj
1条回答
网友
1楼 · 发布于 2024-09-28 21:03:44

您所做的第一步只做Clean,而不是构建步骤。在

要执行Python的翻译步骤,您需要指定任何Python引用(-python-path)的目录以及要翻译的文件。在

我也不知道你在用ProjectRoot和WorkingDirectory做什么,你知道这些是用来存储sourceanalyzer的临时数据/中间文件,而不是源代码的位置,对吗?在

有点像

sourceanalyzer -b <buildId> -python-path <directories> <files to scan>'
  • <buildId>可以用来分组不同的项目,当你做ProjectRoot和{}时,你有点自己在做这件事(我不确定你是否同时需要它们,不记得了,我也不再有权对其进行测试)
  • <directories>-在这里,您可以列出PythonPath环境变量中通常存在的目录(您可以在这里实际调用它并节省很多麻烦)。对于Windows,这是一个逗号分隔的列表,对于Linux是一个冒号分隔的列表
  • <files to scan>这是您指定要翻译/扫描的文件的地方。您可以指定单个文件或使用通配符(***/*[recursive])

示例命令如下所示:

^{pr2}$

您输入的其他选项也可以使用,它看起来像这样:

sourceanalyzer -b MyApp -Xms1024M -Xmx10G -logfile  /local/proj/working/9999/working/sca.log -python-path %PYTHONPATH% ./MyApp/**/*

在此步骤中,您将检查我们从您的程序中翻译的文件:

sourceanalyzer -b MyApp -show-files

然后执行扫描命令

sourceanalyzer -b MyApp -logfile  /local/proj/working/9999/working/sca.log -scan -f project.fpr

相关问题 更多 >