现有问题Can I run fortify on .jar files instead of .java?
的.NET版本我的团队正在使用Fortify 5.15.0.0060。我们正在Visual Studio中扫描.NET项目,项目设置显示以下命令行参数:
-vsversion 10.0 "-b" "project" "-machine-output" "-scan" "-f" "C:\Users\user\AppData\Local\Fortify\VS2010-3.80\project\Scan.fpr" "-format" "fpr"
这突出了我们的.cs源代码文件中的问题,但似乎没有看到构成我们解决方案一部分的DLL(以及与我们的二进制文件一起复制到我们的输出目录中的DLL)。对于其中许多库,我们无法访问.pdb文件,但希望Fortify能够进行有限数量的扫描。
是否可以添加命令行参数以包含带有/不带PDB文件的DLL文件?
答案 0 :(得分:3)
说到.Net,Fortify只能扫描具有.pdb的程序集,因为它使用ildasm.exe
来反编译程序集,然后使用.pdb来匹配源文件。不幸的是,你无法扫描这些额外的组件。
如果您有.pdb文件,可以让Fortify扫描它们,但是您可能看不到结果中的完整来源。要包含这些程序集,您需要在翻译选项中指定它们。如果您是从命令行执行此操作,那么您将这样做:
sourceanalyzer -b project -vsversion 10.0 projectPath\Additional.Assembly.1.dll projectPath\Additional.Assembly.2.dll projectPath\Additional.Assembly.3.dll
sourceanalyzer -b project -scan -f MyResults.fpr
如果您尚未更新Fortify版本,我强烈建议您这样做。